Brandon Wise
01b37f1d32
fix(telegram): handle large file getFile errors gracefully
...
Catch GrammyError when getFile fails for files >20MB (Telegram Bot API limit).
Log warning, skip attachment, but continue processing message text.
- Add FILE_TOO_BIG_RE regex to detect 'file is too big' errors
- Add isFileTooBigError() and isRetryableGetFileError() helpers
- Skip retrying permanent 400 errors (they'll fail every time)
- Log specific warning for file size limit errors
- Return null so message text is still processed
Fixes #18518
2026-02-16 23:51:09 +01:00
Winry
c15385fc94
fix(telegram): enable voice-note transcription in DMs and add CLI fallback
...
The preflight transcription condition only triggered for group chats
(isGroup && requireMention), so voice notes sent in direct messages
were never transcribed — they arrived as raw <media:audio> placeholders.
This patch widens the condition to fire whenever there is audio and no
accompanying text, regardless of chat type.
It also adds a fallback path: if the standard media pipeline returns no
transcript (e.g. format mismatch, missing config), OpenClaw now calls
the configured whisper CLI command directly with the audio file, using
the same {{MediaPath}}/{{OutputBase}} template variables from config.
Co-Authored-By: TH <tzhsn.huang@gmail.com >
2026-02-16 23:50:31 +01:00
Daniel Wondyifraw
eec1f3e9db
fix: address code review feedback - move test data, fix patterns, rewrite docs as RFC
2026-02-16 23:50:01 +01:00
Seb Slight
0cff8bc4e6
fix(telegram): include DM topic thread id in replies ( #18586 )
2026-02-16 17:02:59 -05:00
Ayaan Zaidi
16327f21da
feat(telegram): support inline button styles ( #18241 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 239cb3552e4eaf2597b8e1f4af82ab2ffd1d446c
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 22:48:47 +05:30
Peter Steinberger
a177f7b9fe
refactor(tests): dedupe slack telegram and web monitor setup
2026-02-16 17:06:40 +00:00
Peter Steinberger
93ca0ed54f
refactor(channels): dedupe transport and gateway test scaffolds
2026-02-16 14:59:31 +00:00
sebslight
6931f0fb50
refactor(telegram): avoid double-wrapping proxy fetch
2026-02-16 08:24:55 -05:00
Hongwei Ma
dddb1bc942
fix(telegram): fix streaming with extended thinking models overwriting previous messages/ also happens to Execution error ( #17973 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 34b52eead8faeb64995f61b9e7ab102711acd37b
Co-authored-by: Marvae <11957602+Marvae@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 18:54:34 +05:30
yinghaosang
244ed9db39
fix(telegram): draft stream preview not threaded when replyToMode is on ( #17880 ) ( #17928 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: cfd4181a237153b2df0535d5dcec32a866e60515
Co-authored-by: yinghaosang <261132136+yinghaosang@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 18:10:24 +05:30
Ayaan Zaidi
b2aa6e094d
fix(telegram): prevent non-abort slash commands from racing chat replies ( #17899 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 5c2f6f2c969b5088a0a7f457f02f29fff960e501
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 16:21:10 +05:30
Ayaan Zaidi
b6a9741ba4
refactor(telegram): simplify send/dispatch/target handling ( #17819 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: fcb7aeeca3f7cfda369ade3bd4c453703d2cfcd4
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 14:00:34 +05:30
Peter Steinberger
67aa7eefe5
test: remove redundant sticker thread id assertion
2026-02-16 06:51:50 +00:00
Peter Steinberger
425c715a05
test: remove duplicate sticker recipient normalization checks
2026-02-16 06:50:44 +00:00
Peter Steinberger
dcba3e5699
test: trim redundant telegram thread+reply combination checks
2026-02-16 06:49:17 +00:00
Peter Steinberger
27083e6f1a
test: remove redundant telegram requireMention negative case
2026-02-16 06:47:45 +00:00
Peter Steinberger
eefda1314f
test: drop duplicate telegram username allowFrom check
2026-02-16 06:44:38 +00:00
Peter Steinberger
a8a22920f1
test: remove duplicate telegram allowFrom cases
2026-02-16 06:43:24 +00:00
Varun Kruthiventi
c62b90a2b7
fix(telegram): stop block streaming from splitting messages when streamMode is off ( #17704 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 847162caadc53fe3f983500175f928f28103626f
Co-authored-by: saivarunk <2976867+saivarunk@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-16 09:57:29 +05:30
Peter Steinberger
83ce48302f
test: trim timeout-heavy exec and telegram cases
2026-02-16 04:00:53 +00:00
Peter Steinberger
ac2ede5bb1
fix(telegram): treat no-op editMessage as success
2026-02-16 04:18:24 +01:00
Vignesh Natarajan
6957354d48
fix (telegram/whatsapp): use account-scoped pairing allowlists
2026-02-15 19:10:06 -08:00
Peter Steinberger
1a03aad246
refactor(sessions): split access and resolution helpers
2026-02-16 03:56:49 +01:00
Peter Steinberger
c6c53437f7
fix(security): scope session tools and webhook secret fallback
2026-02-16 03:47:10 +01:00
Peter Steinberger
8515ae6eea
perf: consolidate telegram bot test harness
2026-02-16 02:45:00 +00:00
Peter Steinberger
7eeba3de85
perf: speed up telegram bot suite setup
2026-02-16 02:45:00 +00:00
Peter Steinberger
0e4eada580
perf(test): fold telegram update offset store into token suite
2026-02-16 02:45:00 +00:00
Peter Steinberger
65b5dbd6c1
perf(test): fold telegram sent-message cache tests into send suite
2026-02-16 02:45:00 +00:00
Peter Steinberger
e770728cb5
perf(test): fold telegram download tests into fetch suite
2026-02-16 02:45:00 +00:00
Peter Steinberger
35c5d2be5c
refactor(telegram): share group allowFrom resolution
2026-02-16 02:27:01 +00:00
Peter Steinberger
ce922915ab
perf(test): consolidate telegram send suites
2026-02-15 23:14:42 +00:00
Peter Steinberger
f749365b1c
perf(test): consolidate telegram create bot suites
2026-02-15 23:14:42 +00:00
Peter Steinberger
a8f3a579d4
perf(telegram): lazy import proxy + timeout deps in audit
2026-02-15 19:29:27 +00:00
Shadow
c6b3736fe7
fix: dedupe probe/token base types ( #16986 ) (thanks @iyoda)
2026-02-15 11:36:54 -06:00
Shadow
b6069fc68c
feat: support per-channel ackReaction config ( #17092 ) (thanks @zerone0x)
2026-02-15 11:30:25 -06:00
Peter Steinberger
6b65a055e6
refactor(telegram): dedupe media download
2026-02-15 16:22:06 +00:00
Garnet Liu
cc0bfa0f39
fix(telegram): restore thread_id=1 handling for DMs (regression from 19b8416a8) (openclaw#10942) thanks @garnetlyx
...
Verified:
- pnpm install --frozen-lockfile
- pnpm build
- pnpm test:macmini
Co-authored-by: garnetlyx <12513503+garnetlyx@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-02-15 10:21:18 -06:00
Peter Steinberger
933a9945ae
refactor(telegram): dedupe group auth checks
2026-02-15 16:12:36 +00:00
Mr. Guy
e927fd1e35
fix: allow agent workspace directories in media local roots ( #17136 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 7545ef1e1901a5bfd33aaa55a2320e003ea39126
Co-authored-by: MisterGuy420 <255743668+MisterGuy420@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-15 10:53:45 -05:00
Peter Steinberger
75f3b5069b
refactor(test): dedupe telegram bot mention scaffolding
2026-02-15 15:24:40 +00:00
Peter Steinberger
4f8a2ed2ce
refactor(test): dedupe telegram dispatch scaffolding
2026-02-15 15:19:10 +00:00
Ayaan Zaidi
a69e82765f
fix(telegram): stream replies in-place without duplicate final sends
2026-02-15 20:32:51 +05:30
yinghaosang
80abb5ab98
fix(telegram): stop dropping voice messages on getFile network errors ( #16136 ) ( #16154 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: fbcd7849e4607d2d1c5038e05b1ae62080e1db7f
Co-authored-by: yinghaosang <261132136+yinghaosang@users.noreply.github.com >
Co-authored-by: obviyus <22031114+obviyus@users.noreply.github.com >
Reviewed-by: @obviyus
2026-02-15 14:50:55 +05:30
Ayaan Zaidi
2fc479b427
fix: apply telegram voice transcript body substitution ( #16789 ) (thanks @Limitless2023) ( #16970 )
2026-02-15 14:22:49 +05:30
Limitless
b65b3c6ff0
fix(telegram): include voice transcript in body text instead of raw audio ( #16789 )
...
- Move hasAudio detection before bodyText building
- Move preflight transcription before bodyText building
- If audio has transcript, use transcript as bodyText
- Otherwise use <media:audio> placeholder
Fixes #16772 : Telegram voice messages leak raw audio binary into chat context
Co-authored-by: Limitless2023 <limitless@users.noreply.github.com >
2026-02-15 14:19:10 +05:30
Vignesh Natarajan
69a1ab2319
test (telegram): assert webhook callback timeout-safe options
2026-02-14 18:57:18 -08:00
Vignesh Natarajan
f032ade9c8
fix (telegram): return webhook timeout responses to prevent retry storms
2026-02-14 18:57:18 -08:00
Peter Steinberger
5e205030ed
refactor(telegram): share outbound param parsing
2026-02-15 01:15:43 +00:00
Peter Steinberger
de34a809f4
refactor(test): share telegram forum ctx helper
2026-02-14 23:51:42 +00:00
Peter Steinberger
14e70543a2
refactor(test): reuse telegram media bot setup
2026-02-14 22:30:21 +00:00