From 3bee9c19f917b3050744ef109da134bd0d323ddf Mon Sep 17 00:00:00 2001 From: Hyu Date: Sat, 10 Oct 2026 21:30:07 +0800 Subject: [PATCH] docs(dingtalk): explain group subscriptions and card interaction events --- en/usage/platforms/dingtalk.mdx | 13 +++++++++++++ ja/usage/platforms/dingtalk.mdx | 13 +++++++++++++ zh/usage/platforms/dingtalk.mdx | 13 +++++++++++++ 3 files changed, 39 insertions(+) diff --git a/en/usage/platforms/dingtalk.mdx b/en/usage/platforms/dingtalk.mdx index 971d09a9d..6d2875e48 100644 --- a/en/usage/platforms/dingtalk.mdx +++ b/en/usage/platforms/dingtalk.mdx @@ -132,3 +132,16 @@ This article uses DingTalk Windows desktop version as an example, click `Search` Click on the bot to chat with it. If you want to add it to a group, click `Group Management`, `Robots`, `Add Robot` in the DingTalk group, then search for the bot name to use it in the group. + +## Event subscriptions + +Select Stream mode under Event Subscriptions in the DingTalk app console and enable the required events. This is separate from the robot message callback setting. + +- `chat_add_member` maps to `group.member_joined`, once per affected member. +- `chat_remove_member` / `chat_quit` map to `group.member_left`, distinguishing removal from voluntary departure. +- `chat_update_title` / `chat_update_owner` map to `group.info_updated`. +- Ordinary card interactions emit `dingtalk.card_action`. Recognized feedback uses `feedback.received`; managed input forms retain their existing interaction flow without duplicate triggers. +- Group disbanding and other subscribed events use `platform.specific`, preserving the native event name in `action` and the original headers and payload in `data`. + +Group events depend on application permissions and supported group types. Member notifications containing only unionId remain platform-specific; unionId is not treated as a messaging user ID. Message editing, recall, reactions, friend requests and bot mute events are not advertised without a confirmed corresponding push capability. + diff --git a/ja/usage/platforms/dingtalk.mdx b/ja/usage/platforms/dingtalk.mdx index ed6b109f0..ae2c9e634 100644 --- a/ja/usage/platforms/dingtalk.mdx +++ b/ja/usage/platforms/dingtalk.mdx @@ -133,3 +133,16 @@ LangBot は DingTalk アプリのワンクリック作成とクレデンシャ ボットをクリックしてチャットします。 グループに追加したい場合は、DingTalk グループの「グループ管理」、「ロボット」、「ロボットを追加」をクリックし、ボット名を検索してグループで使用します。 + +## イベント購読 + +DingTalk アプリ管理画面のイベント購読で Stream モードを選択し、必要なイベントを有効にしてください。ロボットのメッセージ受信設定とは別の設定です。 + +- `chat_add_member` → `group.member_joined`(メンバーごとに通知)。 +- `chat_remove_member` / `chat_quit` → `group.member_left`(削除と自主退出を区別)。 +- `chat_update_title` / `chat_update_owner` → `group.info_updated`。 +- 通常のカード操作 → `dingtalk.card_action`。識別可能な評価は `feedback.received`、管理対象フォームは既存の対話処理に渡し、重複実行を防ぎます。 +- グループ解散などその他の購読イベントは `platform.specific` に渡し、`action` にイベント名、`data` に元のヘッダーとデータを保持します。 + +グループイベントにはアプリ権限とグループ種別の制限があります。unionId のみを含むメンバー通知はプラットフォーム固有イベントとして保持します。メッセージ編集・撤回・リアクション、友達申請、ボットのミュートなど、対応するプッシュが未確認のイベントは対応済みと表示しません。 + diff --git a/zh/usage/platforms/dingtalk.mdx b/zh/usage/platforms/dingtalk.mdx index 9f2372e6f..090c49495 100644 --- a/zh/usage/platforms/dingtalk.mdx +++ b/zh/usage/platforms/dingtalk.mdx @@ -132,3 +132,16 @@ LangBot 支持一键创建钉钉应用并自动填写凭证,无需手动复制 点击机器人即可和机器人聊天。 如果想要添加到群里,那么点击钉钉群的`群管理`,`机器人`,`添加机器人`,然后搜索机器人名称就可以在群中使用。 + +## 事件订阅 + +在钉钉应用后台的「事件订阅」选择 Stream 模式,并勾选需要的事件。机器人收消息与事件订阅是两个入口,只开启机器人 Stream 收消息不会收到群变动事件。 + +- `chat_add_member` → `group.member_joined`,多人变更逐人触发。 +- `chat_remove_member` / `chat_quit` → `group.member_left`,区分移除与主动退出。 +- `chat_update_title` / `chat_update_owner` → `group.info_updated`。 +- 普通卡片点击或提交 → `dingtalk.card_action`;可识别的点赞反馈仍使用 `feedback.received`,LangBot 管理的人工输入表单继续交给原交互流程,避免重复触发。 +- 群解散及其他已订阅事件使用 `platform.specific`,`action` 保留钉钉事件名,`data` 保留原始头部与事件数据。 + +群事件受钉钉的应用权限和群类型范围限制,并非所有机器人所在群都支持。仅有 unionId、缺少可用用户 ID 的成员通知保留为平台专属事件,不把 unionId 当作可发送消息的用户 ID。消息编辑、撤回、表情反应、好友申请及机器人禁言等尚未确认有对应通用推送,不声明为支持。 +