返回顶部
d

dingtalk-calendar钉钉日历

钉钉日程与日历。当用户提到"钉钉日程"、"日历"、"创建日程"、"新建会议"、"视频会议"、"钉钉会议"、"会议室"、"约会议室"、"会议室忙闲"、"空闲会议室"、"签到"、"签退"、"签到链接"、"签退链接"、"循环日程"、"重复日程"、"recurrence"、"查日程"、"日程列表"、"修改日程"、"删除日程"、"闲忙"、"忙闲"、"querySchedule"、"calendar"、"dingtalk schedule"、"日程提醒"时使用此技能。支持:主日历下日程 CRUD、用户闲忙、视频会议、会议室忙闲与绑定日程、签到/签退与链接、循环规则(recurrence);订阅公共日历等需 Calendar.Calendar.Write 的能力见 api.md。

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
113
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

dingtalk-calendar

钉钉日程技能

负责钉钉日历(Calendar)API 的操作。本文件为策略指南;完整请求格式见 references/api.md。

dthelper.sh 位于本 SKILL.md 同级目录的 scripts/dthelper.sh。

核心概念

  • - 路径中的 userId:日程 API 路径 /v1.0/calendar/users/{userId}/... 中的 {userId} 为 unionId(与待办、文档一致),不是 staffId。
  • 主日历:个人默认日历的 calendarId 固定使用字符串 primary(小写)。创建/查询/列表/更新/删除均针对 .../calendars/primary/events...。
  • 时间格式:start / end、闲忙的 startTime/endTime、列表的 timeMin/timeMax 须使用 UTC ISO8601 且含毫秒,例如 2026-03-24T07:02:48.000Z。省略毫秒易触发 ParsedISO8601TimestampError。
  • 修改日程:HTTP 方法为 PUT(与「部分更新」语义对应的路径相同),请求体需包含日程 id 及要改的字段(如 summary)。
  • 视频会议:创建日程时在请求体中加 onlineMeetingInfo:{type:dingtalk},响应含 onlineMeetingInfo.url 等。
  • 会议室:先通过 会议室忙闲 接口按 roomIds + 时间窗查询;再在已有日程上 添加会议室(需企业内会议室 roomId,管理后台或开放平台可查)。集成测试可用环境变量 TESTMEETINGROOM_IDS(逗号分隔)。
  • 签到/签退:日程创建后,可 GET 签到/签退链接 分发参会人;组织者/参与者 POST 签到;详情用 GET signin / signOut 列表接口(见 api.md)。是否与线下会议、审批流联动以钉钉侧能力为准。

场景路由(先分类再调 API)

用户意图优先接口方向
订会议室、查会议室有没有空POST .../meetingRooms/schedules/query
给已有日程加会议室
POST .../events/{eventId}/meetingRooms | | 要签到码、签退链接 | GET .../signInLinks、GET .../signOutLinks | | 每周重复、每天重复 | 创建日程时带 recurrence(见 api.md) | | 只看人忙闲(不针对会议室) | POST .../querySchedule |

工作流程(每次执行前)

  1. 1. 识别任务 → 按上表归类后,再选具体 API(见 references/api.md)。
  2. 校验配置 → bash scripts/dthelper.sh --get 读取 DINGTALKAPPKEY、DINGTALKAPPSECRET、DINGTALKMYUSERID、DINGTALKMYOPERATORID(缺 unionId 时 --to-unionid)。
  3. 收集缺失项 → 一次性询问并 --set 写入 ~/.dingtalk-skills/config。
  4. 获取新版 Token → NEWTOKEN=$(bash scripts/dt_helper.sh --token),请求头 x-acs-dingtalk-access-token。
  5. 执行 API → 多行逻辑写入 /tmp/.sh 再执行;禁止 heredoc。

按任务校验配置

  • - 通用必需:DINGTALKAPPKEY、DINGTALKAPPSECRET、DINGTALKMYUSERID;调用前需 unionId(DINGTALKMYOPERATORID 或通过 --to-unionid 生成)。

未通过校验前不得调用 API。凭证展示仅前 4 位 +

所需配置

配置键必填说明
DINGTALKAPPKEYClient ID(AppKey)
DINGTALKAPPSECRET
✅ | Client Secret | | DINGTALKMYUSER_ID | ✅ | 当前用户 userId(管理后台通讯录) | | DINGTALKMYOPERATOR_ID | ✅ | 当前用户 unionId(--to-unionid 可写入) |

身份标识说明

标识说明
userId企业员工 ID,管理后台可见
unionId
日程路径参数与 body 中的用户标识均使用 unionId |

userId → unionId:使用旧版 access_token 调 POST https://oapi.dingtalk.com/topapi/v2/user/get(见 references/api.md),取 result.unionid(无下划线)。

执行脚本模板

bash
#!/bin/bash
set -e
HELPER=./scripts/dt_helper.sh
NEW_TOKEN=$(bash $HELPER --token)
UNIONID=$(bash $HELPER --get DINGTALKMYOPERATORID)
CAL_ID=primary

curl -s -X POST https://api.dingtalk.com/v1.0/calendar/users/${UNIONID}/calendars/${CALID}/events \
-H x-acs-dingtalk-access-token: $NEW_TOKEN \
-H Content-Type: application/json \
-d {summary:周会,start:{dateTime:2026-03-25T02:00:00.000Z,timeZone:UTC},end:{dateTime:2026-03-25T03:00:00.000Z,timeZone:UTC}}

Token 异常时:bash $HELPER --token --nocache

references/api.md 查阅索引

bash
grep -A 35 ^## 1. 创建日程 references/api.md
grep -A 25 ^## 2. 查询单个日程 references/api.md
grep -A 30 ^## 3. 查询日程列表 references/api.md
grep -A 25 ^## 4. 更新日程 references/api.md
grep -A 15 ^## 5. 删除日程 references/api.md
grep -A 28 ^## 6. 查询闲忙 references/api.md
grep -A 22 ^## 7. 视频会议 references/api.md
grep -A 28 ^## 8. 查询会议室忙闲 references/api.md
grep -A 25 ^## 9. 添加与移除会议室 references/api.md
grep -A 18 ^## 10. 签到与签退链接 references/api.md
grep -A 22 ^## 11. 签到与签退详情列表 references/api.md
grep -A 18 ^## 12. 签到与签退操作 references/api.md
grep -A 35 ^## 13. 循环日程 references/api.md
grep -A 15 ^## 14. 订阅日历 references/api.md
grep -A 15 ^## 错误码 references/api.md
grep -A 18 ^## 所需应用权限 references/api.md

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 dingtalk-calendar-only-curl-1776028292 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 dingtalk-calendar-only-curl-1776028292 技能

通过命令行安装

skillhub install dingtalk-calendar-only-curl-1776028292

下载

⬇ 下载 dingtalk-calendar v0.1.0(免费)

文件大小: 10.29 KB | 发布时间: 2026-4-13 10:02

v0.1.0 最新 2026-4-13 10:02
dingtalk-calendar-only-curl 0.1.0

- Initial release with core support for DingTalk calendar API operations using only curl.
- Provides skill routing based on user intent for scheduling, calendar events, meeting rooms, video meetings, sign-in/out, and recurrence.
- Includes configuration validation and environment variable management before API calls.
- Documents standard script templates and API reference lookup commands.
- Only unionId is supported as user identifier in API requests (not staffId).

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部