钉钉Webhook机器人如何发送群消息?
钉钉Webhook机器人如何发送群消息?
在钉钉中通过 Webhook 机器人发送消息的步骤如下:
一、创建自定义机器人
- 进入群设置
- 打开钉钉群 → 点击右上角「设置」→「群管理」
- 添加机器人
- 点击 [机器人] ->「添加机器人」→ 选择「自定义」
- 点击「添加」
- 获取Webhook地址
- 创建完成后复制 Webhook URL
设置成功后如下:


二、发送消息示例
1. 基础文本消息
import json import requests url ="你的Webhook地址" headers ={"Content-Type":"application/json"} data ={"msgtype":"text","text":{"content":"监控报警:服务器CPU使用率超过90%"}} response = requests.post(url, headers=headers, data=json.dumps(data))print(response.json())2. Markdown格式消息
data ={"msgtype":"markdown","markdown":{"title":"项目更新","text":"### 项目进度报告\n- **任务**:API开发\n- **状态**:✅ 已完成\n- **负责人**:张三\n- [查看详情](http://example.com)"}}3. 带@提醒的消息
data ={"msgtype":"text","text":{"content":"@张三 请处理紧急工单"},"at":{"atMobiles":["13888888888"],# 手机号"atUserIds":["user123"],# 用户ID"isAtAll":False# 是否@所有人}}4. 链接消息
data ={"msgtype":"link","link":{"text":"这是一条链接消息","title":"系统通知","picUrl":"https://img.example.com/1.jpg","messageUrl":"https://www.example.com"}}5. ActionCard(按钮卡片)
data ={"msgtype":"actionCard","actionCard":{"title":"审批通知","text":"### 请假申请\n申请人:李四\n时间:2024-01-01","btns":[{"title":"同意","actionURL":"http://example.com/approve"},{"title":"拒绝","actionURL":"http://example.com/reject"}]}}三、安全设置处理
加签验证
import time import hmac import hashlib import base64 import urllib.parse timestamp =str(round(time.time()*1000)) secret ="你的加签密钥" secret_enc = secret.encode('utf-8') string_to_sign =f'{timestamp}\n{secret}' string_to_sign_enc = string_to_sign.encode('utf-8') hmac_code = hmac.new(secret_enc, string_to_sign_enc, digestmod=hashlib.sha256).digest() sign = urllib.parse.quote(base64.b64encode(hmac_code))# 将timestamp和sign添加到URL webhook_url =f"{原URL}×tamp={timestamp}&sign={sign}"四、使用 cURL 示例
curl'你的Webhook地址'\ -H 'Content-Type: application/json'\ -d '{ "msgtype": "text", "text": { "content": "测试消息" } }'注意事项
- 频率限制:每分钟最多20条消息
- 消息长度:文本消息不超过5000字符
- 关键词匹配:如果设置了关键词,消息中必须包含
- 错误处理:建议添加重试机制和错误日志
- 敏感信息:不要在消息中暴露敏感数据
调试建议
- 使用钉钉官方提供的调试工具
- 先发送测试消息验证配置
- 检查返回的状态码和错误信息
这样你就可以通过钉钉Webhook机器人发送各种类型的消息了!