docs(channels): document ackReactionScope for Slack & Telegram (DM go… · openclaw/openclaw@bbbed26
drclaw-iq
·
2026-05-23
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -1048,20 +1048,47 @@ When a `message` tool call runs inside a Slack thread and targets the same chann
|
1048 | 1048 | |
1049 | 1049 | ## Ack reactions |
1050 | 1050 | |
1051 | | -`ackReaction` sends an acknowledgement emoji while OpenClaw is processing an inbound message. |
| 1051 | +`ackReaction` sends an acknowledgement emoji while OpenClaw is processing an inbound message. `ackReactionScope` decides _when_ that emoji is actually sent. |
| 1052 | + |
| 1053 | +### Emoji (`ackReaction`) |
1052 | 1054 | |
1053 | 1055 | Resolution order: |
1054 | 1056 | |
1055 | 1057 | - `channels.slack.accounts.<accountId>.ackReaction` |
1056 | 1058 | - `channels.slack.ackReaction` |
1057 | 1059 | - `messages.ackReaction` |
1058 | | -- agent identity emoji fallback (`agents.list[].identity.emoji`, else "👀") |
| 1060 | +- agent identity emoji fallback (`agents.list[].identity.emoji`, else `"eyes"` / 👀) |
1059 | 1061 | |
1060 | 1062 | Notes: |
1061 | 1063 | |
1062 | 1064 | - Slack expects shortcodes (for example `"eyes"`). |
1063 | 1065 | - Use `""` to disable the reaction for the Slack account or globally. |
1064 | 1066 | |
| 1067 | +### Scope (`messages.ackReactionScope`) |
| 1068 | + |
| 1069 | +The Slack provider reads scope from `messages.ackReactionScope` (default `"group-mentions"`). There is no Slack-account or Slack-channel-level override today; the value is global to the gateway. |
| 1070 | + |
| 1071 | +Values: |
| 1072 | + |
| 1073 | +- `"all"`: react in DMs and groups. |
| 1074 | +- `"direct"`: react in DMs only. |
| 1075 | +- `"group-all"`: react on every group message (no DMs). |
| 1076 | +- `"group-mentions"` (default): react in groups, but only when the bot is mentioned (or in group mentionables that opted in). **DMs are excluded.** |
| 1077 | +- `"off"` / `"none"`: never react. |
| 1078 | + |
| 1079 | +<Note> |
| 1080 | +The default scope (`"group-mentions"`) does not fire ack reactions in direct messages. To see the configured `ackReaction` (for example `"eyes"`) on inbound Slack DMs, set `messages.ackReactionScope` to `"direct"` or `"all"`. `messages.ackReactionScope` is read at Slack provider startup, so a gateway restart is needed for the change to take effect. |
| 1081 | +</Note> |
| 1082 | + |
| 1083 | +```json5 |
| 1084 | +{ |
| 1085 | + messages: { |
| 1086 | + ackReaction: "eyes", |
| 1087 | + ackReactionScope: "all", // react in DMs and groups |
| 1088 | + }, |
| 1089 | +} |
| 1090 | +``` |
| 1091 | + |
1065 | 1092 | ## Text streaming |
1066 | 1093 | |
1067 | 1094 | `channels.slack.streaming` controls live preview behavior: |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -792,9 +792,9 @@ curl "https://api.telegram.org/bot<bot_token>/getUpdates"
|
792 | 792 | </Accordion> |
793 | 793 | |
794 | 794 | <Accordion title="Ack reactions"> |
795 | | -`ackReaction` sends an acknowledgement emoji while OpenClaw is processing an inbound message. |
| 795 | +`ackReaction` sends an acknowledgement emoji while OpenClaw is processing an inbound message. `ackReactionScope` decides *when* that emoji is actually sent. |
796 | 796 | |
797 | | -Resolution order: |
| 797 | +**Emoji (`ackReaction`) resolution order:** |
798 | 798 | |
799 | 799 | - `channels.telegram.accounts.<accountId>.ackReaction` |
800 | 800 | - `channels.telegram.ackReaction` |
@@ -806,6 +806,16 @@ curl "https://api.telegram.org/bot<bot_token>/getUpdates"
|
806 | 806 | - Telegram expects unicode emoji (for example "👀"). |
807 | 807 | - Use `""` to disable the reaction for a channel or account. |
808 | 808 | |
| 809 | +**Scope (`messages.ackReactionScope`):** |
| 810 | + |
| 811 | +The Telegram provider reads scope from `messages.ackReactionScope` (default `"group-mentions"`). There is no Telegram-account or Telegram-channel-level override today. |
| 812 | + |
| 813 | +Values: `"all"` (DMs + groups), `"direct"` (DMs only), `"group-all"` (every group message, no DMs), `"group-mentions"` (groups when the bot is mentioned; **no DMs** — this is the default), `"off"` / `"none"` (disabled). |
| 814 | + |
| 815 | +<Note> |
| 816 | +The default scope (`"group-mentions"`) does not fire ack reactions in direct messages. To get an ack reaction on inbound Telegram DMs, set `messages.ackReactionScope` to `"direct"` or `"all"`. The value is read at Telegram provider startup, so a gateway restart is needed for the change to take effect. |
| 817 | +</Note> |
| 818 | + |
809 | 819 | </Accordion> |
810 | 820 | |
811 | 821 | <Accordion title="Config writes from Telegram events and commands"> |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。