diff --git a/docs/channels/telegram.md b/docs/channels/telegram.md index 78ecf33f608..53d5f03fa17 100644 --- a/docs/channels/telegram.md +++ b/docs/channels/telegram.md @@ -343,10 +343,9 @@ curl "https://api.telegram.org/bot/getUpdates" For text-only replies: - - short DM/group/topic previews: OpenClaw keeps the same preview message and performs a final edit in place, unless a visible non-preview message was sent after the preview appeared + - short DM/group/topic previews: OpenClaw keeps the same preview message and performs the final edit in place - long text finals that split into multiple Telegram messages reuse the existing preview as the first final chunk when possible, then send only the remaining chunks - - previews followed by visible non-preview output: OpenClaw sends the completed reply as a fresh final message and cleans up the older preview, so the final answer appears after intermediate output - - previews older than about one minute: OpenClaw sends the completed reply as a fresh final message and then cleans up the preview, so Telegram's visible timestamp reflects completion time instead of the preview creation time + - if the final edit fails before the completed text is confirmed, OpenClaw uses normal final delivery and cleans up the stale preview For complex replies (for example media payloads), OpenClaw falls back to normal final delivery and then cleans up the preview message. diff --git a/docs/concepts/streaming.md b/docs/concepts/streaming.md index da93a3d3664..94523e312f4 100644 --- a/docs/concepts/streaming.md +++ b/docs/concepts/streaming.md @@ -160,7 +160,8 @@ Legacy key migration: Telegram: - Uses `sendMessage` + `editMessageText` preview updates across DMs and group/topics. -- Sends a fresh final message instead of editing in place when a preview has been visible for about one minute, then cleans up the preview so Telegram's timestamp reflects reply completion. +- Final text edits the active preview in place; long finals reuse that message for the first chunk and send only the remaining chunks. +- If the final edit fails before the completed text is confirmed, OpenClaw uses normal final delivery and cleans up the stale preview. - Preview streaming is skipped when Telegram block streaming is explicitly enabled (to avoid double-streaming). - `/reasoning stream` can write reasoning to a transient preview that is deleted after final delivery.