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