钉钉
钉钉 Channel 使用 Stream 长连接接收 Bot 事件并发送回复。连接由常驻 Gateway 维护,正常情况下不需要向公网暴露入站 Webhook。
准备材料
- 已启用机器人能力的钉钉应用;
- 已订阅 Stream 机器人消息;
- Client ID 和 Client Secret;
- 应用身份需要时,可选填写 Bot User ID、Bot Staff ID 或 Robot Code。
配置应用时可参考 钉钉 Stream SDK 官方资料。
在 Dashboard 中连接
- 打开 Dashboard → Channel → Add account。
- 选择 DingTalk 和 Stream。
- 填入 Client ID、Client Secret。
- 只有平台身份确实对应时才填写可选 Bot 字段。
- 检查私信和群聊策略并保存。
- 回到钉钉控制台确认 Stream Bot 消息订阅。
默认账号 ID 是 work。
访问策略
私信默认使用 pairing,还可选择 open、allowlist、disabled。群聊默认使用 mention,还可选择 open、allowlist、disabled。
anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID
验证群聊时,先用明确的 @机器人 消息测试。
验证连接
anyy channel doctor dingtalk
anyy channel reload
重载后分别发送私信和群聊 @ 消息,避免把两个策略路径混在一起判断。
先检查常驻 Gateway
Stream 依赖持续在线的 Gateway。系统重启或网络变化后停止收信时,应先查看 Gateway 状态,再修改钉钉应用。
故障排查
| 现象 | 检查项 |
|---|---|
| Stream 无法连接 | Client ID/Secret、出站网络、Stream 订阅 |
| 私信被忽略 | 私信策略和配对/allowlist |
| 群消息被忽略 | 群聊策略和是否明确 @ Bot |
| 能收不能发 | Bot 身份字段和钉钉应用权限 |
| 频繁断线 | Gateway 健康、网络稳定性,然后 reload |