-
-
Notifications
You must be signed in to change notification settings - Fork 69.5k
[msteams] Adaptive Card Action.Submit invoke activities silently dropped #55384
Description
Description
When a user clicks an Action.Submit button on an Adaptive Card sent by the bot in Teams, the invoke activity arrives at the msteams provider but is silently dropped. The provider logs received message followed by skipping empty message after stripping mentions — the invoke payload in the value field is ignored because the provider only looks at the text field.
Steps to Reproduce
- Send an Adaptive Card with
Action.Submitbuttons via the Bot Framework API - User clicks a button in Teams
- Observe logs:
received message→skipping empty message after stripping mentions - Agent never receives the button click data
Expected Behavior
The invoke activity should be forwarded to the agent with the button's data payload, allowing the agent to process the user's selection.
Actual Behavior
The provider treats the invoke as a regular message, strips mentions (finding none), ends up with empty text, and skips the message entirely. The value field containing the button data is never examined.
Root Cause
In src/monitor-handler.ts (or equivalent), the handler processes adaptiveCard/action invoke activities the same as regular messages. It strips @mention tags from the text field, finds nothing, and drops the message. The value field (which contains the Action.Submit payload) is not checked.
The provider already handles fileConsent/invoke and message/submitAction invoke types — adaptiveCard/action needs similar treatment.
Workaround
Use Action.OpenUrl buttons instead (these work because they open a URL client-side without sending an invoke). For interactive decisions, use a "Display + Reply" pattern: show options in a card, ask the user to reply with their choice as text.
Environment
- OpenClaw version: 2026.3.22
- Docker image:
ghcr.io/openclaw/openclaw:latest - Channel: msteams (Bot Framework, single tenant)
- Adaptive Card schema version: 1.5