钉钉
本文介绍如何创建钉钉企业内部应用机器人,通过 HTTP 接收单聊文本或企业内部群中 @机器人的消息,调用腾讯云 EdgeOne Makers 中的 Agent,并将结果返回原会话。
前提条件和适用范围
1. 已有钉钉组织及账号,具备企业内部应用创建、管理和发布权限;
2. 组织满足钉钉的认证和发布要求。
3. 已开通 Makers
4. 本文验证本组织成员单聊和企业内部群聊的文本提及,不包括外部群、第三方企业应用或互动卡片。
创建应用并配置机器人
1. 登录钉钉开发者后台,选择目标组织。
2. 进入 应用开发 > 钉钉应用,创建企业内部应用,填写应用名称、描述和图标。
3. 在应用详情中进入 应用能力 > 添加应用能力,添加 机器人。
4. 进入 应用能力 > 机器人,开启机器人配置,填写机器人名称、图标、简介、描述和消息预览图。
5. 进入 基础信息 > 凭证与基础信息,复制 Client ID 和 Client Secret。
6. 在机器人配置中复制机器人编码 robotCode。

以上步骤将获得下面这些凭证:
凭证 | 模板中的对应值 | 用途 |
Client ID | AppKey | 标识企业内部应用 |
Client Secret | AppSecret | 校验 HTTP 消息签名,并获取 API 访问凭证 |
robotCode | Robot Code | 指定用于发送消息的应用机器人 |
配置发送权限
1. 进入应用的 权限管理,搜索并开通 企业内机器人发送消息权限。
2. 如组织要求审批,完成审批。
3. 核对应用可用的接口包含机器人单聊发送和群聊发送。
功能 | 所需配置 |
接收用户消息 | 启用应用机器人,选择 HTTP 模式并设置消息接收地址 |
使用 `sessionWebhook` 回复 | 使用当前有效消息事件中携带的地址,由模板自动处理 |
OpenAPI 单聊或群聊回复 | 开通企业内机器人发送消息权限,应用已发布,机器人可访问目标会话 |
部署 Makers 模板
1. 打开 Makers Agent for IM 模板。
2. 在项目环境变量设置中填写以下变量(负责一份.env.example 为.env)。
环境变量 | 是否必填 | 填写说明 |
DINGTALK_APP_KEY | 是 | Client ID |
DINGTALK_APP_SECRET | 是 | Client Secret |
DINGTALK_ROBOT_CODE | 是 | robotCode |
3. 保存配置并部署
4. 复制生产环境 HTTPS 域名,在末尾添加 /dingtalk
5. 注意服务应该部署大陆可用区,钉钉服务才能正确访问。
配置 HTTP 消息接收地址
1. 返回钉钉应用的 应用能力 > 机器人。
2. 将 消息接收模式 选择为 HTTP 模式。
3. 在 消息接收地址 中填写步骤3的完整 URL。
4. 单击 发布,保存机器人配置。
发布应用并添加机器人
1. 进入 应用发布 > 版本管理与发布,单击 创建新版本。
2. 填写版本号和版本描述,在 待发布内容 中选择 机器人。
3. 在 应用可见范围 中选择测试成员或部门。
4. 单击 保存 > 直接发布;组织要求审核时,等待审核完成,确认版本已发布。
5. 打开钉钉客户端的测试内部群,进入 群设置 > 群管理 > 机器人,单击 添加机器人,选择当前机器人并添加。

发送消息并验证
1. 在测试群中输入 `@`,从候选列表选择当前机器人,发送 `请用一句话介绍腾讯云 EdgeOne Makers。`。
2. 等待 Agent 完成,确认原群收到一条新的 Markdown 回复。
3. 再次 @机器人发送 `请把上一条回答缩短为十个字以内。`,验证第二轮回复。
4. 如需测试单聊,使用可见范围内的成员账号打开该机器人的单聊窗口,发送相同问题;单聊无需 @机器人。

