WebHook 对钉钉机器人的支持
钉钉在群聊功能中提供了「智能群助手」功能。通过 WebHook,可以在钉钉中添加自定义的机器人实现自动通知。
添加机器人
在钉钉群聊中,通过 群设置
->智能群助手
->添加机器人
选择“自定义”机器人,为机器人设置一个头像和名称,点击「添加」后可以获得一个 WebHook 地址,点击「完成」即可完成钉钉机器人的添加。
设置机器人 WebHook
在上文的添加过程中,可以获得一个形如 https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxx
的 WebHook 请求地址,将这个地址添加到 Gitee 上,即可完成对 WebHook 的设置。
点击企业导航菜单中的「管理」->「WebHooks 管理」,然后点击右上角的「新建 WebHook」按钮进入 WebHook 的新建页面。
将上文得到的 WebHook 的地址填写到 URL 中,WebHook 密码/签名密钥
选择使用「签名密钥」,并填写对应的「加签」提供的签名密钥内容,选择具体的触发事件,激活并添加即可完成对 WebHook 的设置。
安全设置
钉钉机器人在 WebHook 上支持了「自定义关键字」、「加签(签名)」、「IP 地址(段)」,用于增强机器人接受请求的安全性,防止恶意请求。
自定义关键字
在设置自定义关键字后,只有包含指定的自定义关键字的 WebHook 请求才会触发机器人,最多可以定义 10 个。
加签
通过设置签名,可以支持钉钉机器人的请求签名,以获得更高的安全性。
IP 地址(段)
通过设置请求 IP 地址(段), 可以限制触发机器人的请求 IP 白名单。由于 Gitee 服务请求所在的 IP 段不是固定的,为避免无法正常触发钉钉机器人,不建议设置 IP 地址(段)白名单。
触发钉钉 WebHooks
通过设置机器人,以下场景会触发 WebHook 请求到钉钉。
- Push: 仓库推送代码,推送分支,删除分支
- Tag push: 新建 tag,删除 tag
- Issue:新建、关闭、重新打开、删除任务 或 修改任务指派人
- Pull request : 新建 pull request、更新 pull request、合并 pull request
- 评论:评论仓库、issue(任务)、pull request、commit