Summary
Cron jobs that use delivery.mode = "announce" toward Microsoft Teams fail immediately with:
Delivering to Microsoft Teams requires target <conversationId|user:ID|conversa tion:ID>
even though the cron payload includes a valid conversation:19:...@thread.tacv2 channel ID that works for normal message sends. This blocks automated
monitors such as teams-nomention-monitor.
Environment
- OpenClaw 2026.3.13 (61d171a) on Windows 10 (SavinoMiniPC)
- Microsoft Teams plugin configured with the Advi GTM team/channel
- Multiple cron jobs (4) using announce delivery toward the same channel
- Error reproduced continuously since 2026-03-29 (7+ consecutive failures)
Steps to Reproduce
openclaw cron add a job similar to:
{
"name": "teams-nomention-monitor",
"schedule": { "kind": "every", "everyMs": 900000 },
"sessionTarget": "main",
"payload": { "kind": "systemEvent", "text": "…monitor message…" },
"delivery": {
"mode": "announce",
"channel": "msteams",
"to": "conversation:19:AdviChannelId@thread.tacv2"
}
}
2. Wait for the cron trigger (or run openclaw cron run <jobId>).
3. Check openclaw cron runs or the gateway logs.
### Expected Behavior
Cron announce delivery should reuse the supplied Teams conversation ID, resolve it the same way openclaw message send --channel msteams --target
conversation:… does, and post the monitor text into the thread.
### Actual Behavior
Every cron attempt fails with:
Delivering to Microsoft Teams requires target <conversationId|user:ID|conversa tion:ID>
No Teams message is sent.
### Additional Notes
- The exact conversation:19:...@thread.tacv2 target succeeds for manual sends, so the ID and channel permissions are valid.
- This affects several bots (Bob Bot + GTMBot) trying to deliver scheduled announcements into Teams.
- Looks like the cron delivery resolver is ignoring/overwriting the Teams target instead of passing it through.
### Owners / Routing
cc @tyler6204 (cron) @onutc / @osolmaz (MS Teams channel)
### Attachments / Logs
│ Delivering to Microsoft Teams requires target <conversationId|user:ID|conversa tion:ID>
Summary
Cron jobs that use
delivery.mode = "announce"toward Microsoft Teams fail immediately with:even though the cron payload includes a valid
conversation:19:...@thread.tacv2channel ID that works for normal message sends. This blocks automatedmonitors such as
teams-nomention-monitor.Environment
Steps to Reproduce
openclaw cron adda job similar to:{ "name": "teams-nomention-monitor", "schedule": { "kind": "every", "everyMs": 900000 }, "sessionTarget": "main", "payload": { "kind": "systemEvent", "text": "…monitor message…" }, "delivery": { "mode": "announce", "channel": "msteams", "to": "conversation:19:AdviChannelId@thread.tacv2" } }Delivering to Microsoft Teams requires target <conversationId|user:ID|conversa tion:ID>
│ Delivering to Microsoft Teams requires target <conversationId|user:ID|conversa tion:ID>