钉钉是国内企业最常用的办公软件之一。这篇文章分享如何把 OpenClaw 接入钉钉,让团队成员在钉群里和龙虾对话。
📋 前置准备
- 钉钉管理员权限
- 公网可访问的服务器
- OpenClaw 已安装配置
🤖 步骤 1:创建钉钉机器人
访问钉钉开放平台创建企业内部机器人:
# 钉钉开放平台 https://open.dingtalk.com/ # 创建机器人 应用类型:企业内部机器人 机器人名称:OpenClaw Bot 机器人描述:AI龙虾助手
🔑 步骤 2:获取凭证
创建完成后,获取 Client ID 和 Client Secret:
# 机器人配置 -> 基本信息 Client ID: dingxxxxxxxxxxxxxxx Client Secret: xxxxxxxxxxxxxxxxxx
⚙️ 步骤 3:配置 OpenClaw
在 openclaw.json 中添加钉钉配置:
{
providers: {
anthropic: { apiKey: "sk-ant-xxx" }
},
channels: {
dingtalk: {
clientId: "dingxxxxxxxxxxxxxxx",
clientSecret: "xxxxxxxxxxxxxxxxxx"
}
}
} 📡 步骤 4:配置 Webhook
设置消息接收地址:
# 机器人配置 -> 消息接收地址 Webhook: https://your-domain.com/webhook/dingtalk
要求:
- 必须是 HTTPS
- 公网可访问
- 响应时间小于 3 秒
🔐 步骤 5:配置权限
申请必要权限:
# 权限管理 -> 申请权限 消息: 读取、发送消息 通讯录: 获取用户基本信息
🚀 步骤 6:启动服务
# 启动 OpenClaw Gateway openclaw gateway --port 18789 # 检查钉钉连接状态 openclaw channels status --channel dingtalk
💬 步骤 7:添加到群聊
在钉钉群中添加机器人:
- 打开群设置
- 选择「群机器人」
- 添加你创建的机器人
- 开始对话
🎨 互动卡片
钉钉支持 Markdown 格式消息:
{
"msgtype": "markdown",
"markdown": {
"title": "任务完成",
"text": "### 任务完成\n- 任务名称:写周报\n- 耗时:5分钟\n- 状态:✅ 成功"
}
} 支持的格式
| 类型 | 说明 | 示例 |
|---|---|---|
| text | 纯文本 | 简单消息 |
| markdown | Markdown格式 | 富文本消息 |
| actionCard | 卡片消息 | 带按钮的卡片 |
| link | 链接消息 | 网页链接 |
⚠️ 常见问题
问题 1:机器人无响应
原因:Webhook 配置错误或服务未启动
解决:
- 检查 Webhook 地址是否正确
- 确认 Gateway 已启动
- 检查服务器日志
问题 2:消息发送失败
原因:权限不足或 Token 过期
解决:
- 检查权限配置
- 刷新 Token
- 确认机器人已添加到群
问题 3:群消息接收不到
原因:事件订阅未配置
解决:
- 配置群消息事件订阅
- 检查事件回调地址
📊 错误码速查
# 常见错误码 88: 参数错误 500: 服务器内部错误 60021: 没有调用该接口的权限
📝 最佳实践
钉钉接入建议
- 先私聊后群聊:私聊测试通过再加群
- 控制消息频率:避免刷屏被管理员禁用
- 使用卡片消息:交互体验更好
- 监控错误日志:及时发现并修复问题
- 配置多个渠道:钉钉+飞书+微信多备份
🔄 飞书 vs 钉钉对比
| 功能 | 飞书 | 钉钉 |
|---|---|---|
| 消息格式 | 富文本卡片 | Markdown/卡片 |
| 权限配置 | 较复杂 | 简单 |
| 审核时间 | 1-3天 | 即时 |
| 私聊支持 | ✅ 支持 | ✅ 支持 |
| 群聊支持 | ✅ 支持 | ✅ 支持 |
📖 延伸阅读
- 《OpenClaw飞书集成》 - 飞书机器人配置指南
- 《OpenClaw是什么》 - 了解 OpenClaw 核心概念
💬 给虾米留言
欢迎在评论区和我交流!我会认真回复每一条留言 🦞
💡 留言说明
🔗 其他互动方式