dingtalk-message

负责钉钉消息发送的所有操作。本文件为策略指南;完整 API 请求格式、场景路由、消息类型速查、身份标识、错误码等见 references/api.md 。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "dingtalk-message" with this command: npx skills add breath57/dingtalk-skills/breath57-dingtalk-skills-dingtalk-message

钉钉消息技能

负责钉钉消息发送的所有操作。本文件为策略指南;完整 API 请求格式、场景路由、消息类型速查、身份标识、错误码等见 references/api.md 。

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

四种消息通道

通道 适用场景 Token 特点

Webhook 机器人 往指定群发通知 无需 最简单;URL 自带凭证

企业内部应用机器人 单聊私信 / 群聊 --token (新版) 可撤回、查已读

工作通知 应用推送到"工作通知" --old-token (旧版) 可推全员/部门

sessionWebhook 回调中直接回复 无需 回调消息自带临时 URL

工作流程(每次执行前)

  • 识别通道 → 按 api.md「场景路由」判断属于哪个通道

  • 校验配置 → bash scripts/dt_helper.sh --get KEY 读取该通道所需键值

  • 收集缺失项 → 一次性询问并 bash scripts/dt_helper.sh --set KEY=VALUE 写入

  • 获取 Token → 机器人用 --token ;工作通知用 --old-token ;Webhook/sessionWebhook 无需

  • 执行 API → 多行逻辑写入 /tmp/<task>.sh 再执行;禁止 heredoc

各通道所需配置

通道 所需配置 来源说明

Webhook DINGTALK_WEBHOOK_URL (加签额外需 DINGTALK_WEBHOOK_SECRET ) 群设置 → 智能群助手 → 添加自定义机器人

机器人消息 DINGTALK_APP_KEY

  • DINGTALK_APP_SECRET

开放平台 → 应用管理 → 凭证信息

工作通知 DINGTALK_APP_KEY

  • DINGTALK_APP_SECRET
  • DINGTALK_AGENT_ID

agentId 在应用管理 → 基本信息

  • robotCode = appKey (完全一致,无需额外配置)

  • 凭证禁止在输出中完整打印,确认时仅显示前 4 位 + ****

  • 消息内容缺失时:先询问用户想发什么,不要自行编造

身份标识

消息 API 只接受 userId(staffId),不接受 unionId。详见 grep -A 20 "^## 身份标识" references/api.md 。

  • unionId → userId 转换:bash scripts/dt_helper.sh --to-userid <unionId>

  • 群消息发送方式选择:发群消息时须先询问用户用 Webhook 还是企业机器人,详见 grep -A 20 "^### 群消息发送方式选择" references/api.md

执行脚本模板

#!/bin/bash set -e HELPER="./scripts/dt_helper.sh" TOKEN=$(bash "$HELPER" --token) USER_ID=$(bash "$HELPER" --get DINGTALK_MY_USER_ID | cut -d= -f2)

机器人单聊示例

RESP=$(curl -s -w '\nHTTP_STATUS:%{http_code}' -X POST "https://api.dingtalk.com/v1.0/robot/oToMessages/batchSend"
-H "x-acs-dingtalk-access-token: $TOKEN"
-H "Content-Type: application/json"
-d '{"robotCode":"'$(bash "$HELPER" --get DINGTALK_APP_KEY | cut -d= -f2)'","userIds":["'$USER_ID'"],"msgKey":"sampleText","msgParam":"{"content":"测试消息"}"}') echo "$RESP"

#!/bin/bash set -e HELPER="./scripts/dt_helper.sh" OLD_TOKEN=$(bash "$HELPER" --old-token) AGENT_ID=$(bash "$HELPER" --get DINGTALK_AGENT_ID | cut -d= -f2) USER_ID=$(bash "$HELPER" --get DINGTALK_MY_USER_ID | cut -d= -f2)

工作通知示例

RESP=$(curl -s -w '\nHTTP_STATUS:%{http_code}' -X POST "https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2?access_token=$OLD_TOKEN"
-H "Content-Type: application/json"
-d '{"agent_id":"'$AGENT_ID'","userid_list":"'$USER_ID'","msg":{"msgtype":"text","text":{"content":"测试工作通知"}}}') echo "$RESP"

Token 异常时:bash "$HELPER" --token --nocache 或 bash "$HELPER" --old-token --nocache

references/api.md 查阅索引

grep -A 196 "^## 一、群自定义 Webhook 机器人" references/api.md grep -A 192 "^## 二、企业内部应用机器人" references/api.md grep -A 145 "^## 三、工作通知" references/api.md grep -A 60 "^## 四、sessionWebhook" references/api.md grep -A 30 "^## 场景路由" references/api.md grep -A 20 "^### 群消息发送方式选择" references/api.md grep -A 25 "^## 身份标识" references/api.md grep -A 30 "^## 消息类型速查" references/api.md grep -A 33 "^## 错误码" references/api.md grep -A 12 "^## 所需应用权限" references/api.md

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

dingtalk-document

No summary provided by upstream source.

Repository SourceNeeds Review
General

dingtalk-ai-table

No summary provided by upstream source.

Repository SourceNeeds Review
General

Interior Fullplan

# 室内设计·全案方案自动生成器

Archived SourceRecently Updated
General

kb-archiver

智能本地知识库归档系统 v1.1.0。支持 AI 智能分类、批量归档、全文搜索、统计报告。 自动将文件分类归档到本地知识库,提取全文索引支持秒级搜索。 小文件存本地、大文件可对接云存储。支持 Excel/Word/PPT/PDF/TXT 等格式。 当用户需要:归档文件、建立知识库、全文检索文档内容、管理大量工作文档、批量处理文件夹时使用。 关键词:知识库、归档、文件管理、全文搜索、文档索引、批量归档、AI分类

Archived SourceRecently Updated