Skip to content

feat(telegram): Add voice transcript echo#169

Open
ddobrinskiy wants to merge 8 commits into
banteg:masterfrom
ddobrinskiy:feat/voice-transcript-reaction
Open

feat(telegram): Add voice transcript echo#169
ddobrinskiy wants to merge 8 commits into
banteg:masterfrom
ddobrinskiy:feat/voice-transcript-reaction

Conversation

@ddobrinskiy

@ddobrinskiy ddobrinskiy commented Jan 19, 2026

Copy link
Copy Markdown

Summary

  • add a voice transcript reply message so users see transcribed voice notes in chat history
  • format the reply header as 🎤 · voice transcript and render the transcript in italics

Telegram UI

Before After
image image

@ddobrinskiy ddobrinskiy changed the title Voice transcript: header emoji Add voice transcript reply Jan 19, 2026
@ddobrinskiy ddobrinskiy changed the title Add voice transcript reply feat(telegram): Add voice transcript reply Jan 20, 2026
Add inline documentation explaining the UX rationale and implementation
details for the voice transcript reaction feature:

- Document why visual feedback happens before prompt processing
- Explain formatting choices (emoji header, italic body)
- Add Given/When/Then structure to tests for clarity
- Note edge cases: empty transcripts, truncation, silent notifications

Files updated:
- bridge.py: docstring and inline comments for send_voice_transcript()
- loop.py: comments explaining the UX flow
- test_telegram_bridge.py: structured test documentation
Update documentation to reflect the new transcript reply feature:

- Add behavior description to voice-notes.md explaining the 🎤 header
  and italic formatting that shows transcript before running
- Update telegram.md transport reference with details about the
  visual feedback message sent before transcription runs

This documents the UX improvement where users see their transcribed
voice message as a reply before the actual run starts.
@ddobrinskiy ddobrinskiy force-pushed the feat/voice-transcript-reaction branch from 019cee6 to 80e2b0a Compare February 27, 2026 05:21
@ddobrinskiy

Copy link
Copy Markdown
Author

@banteg ready for review, wdyt?

Add configurable voice transcript echo behavior:
- New setting `voice_transcription_echo: bool = true` in settings.py
- Echo sends transcript as reply with 🎤 emoji header (enabled by default)
- Users can disable with `voice_transcription_echo = false`

Implementation:
- Added to TelegramTransportSettings, TelegramBridgeConfig
- Wired through backend.py to bridge/loop
- Conditional check in loop.py before sending transcript reply

Documentation:
- Updated config.md reference table
- Updated voice-notes.md with config examples and behavior notes
- Updated telegram.md transport reference with echo details

Tests:
- Updated existing voice transcript tests to use echo=True
- Added new test for echo=False to verify no message sent
- Updated backend test with new config assertion

Inspiration: banteg#196 by @heswithme
Thanks for the idea to make echo behavior configurable!

Differs from upstream PR banteg#196:
- Default: true (enabled) vs false (upstream)
- Format: 🎤 emoji + italics (better UX) vs code + blockquote
- Implementation: bridge.py helper vs loop.py inline
Remove the planning document that was created during development
but shouldn't be part of the final PR.
@ddobrinskiy ddobrinskiy changed the title feat(telegram): Add voice transcript reply feat(telegram): Add voice transcript reply/echo Feb 27, 2026
@ddobrinskiy ddobrinskiy changed the title feat(telegram): Add voice transcript reply/echo feat(telegram): Add voice transcript echo Feb 27, 2026
@banteg banteg added the enhancement New feature or request label Mar 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants