Skip to content

feat: integrate TTS voice handling, improve loading UX, and stabilize runtime dependencies#45

Merged
Afdaan merged 14 commits into
developmentfrom
feat/voice
Mar 19, 2026
Merged

feat: integrate TTS voice handling, improve loading UX, and stabilize runtime dependencies#45
Afdaan merged 14 commits into
developmentfrom
feat/voice

Conversation

@Afdaan
Copy link
Copy Markdown
Owner

@Afdaan Afdaan commented Mar 19, 2026

Overview

This PR introduces improvements to Text-to-Speech (TTS) handling, enhances loading animations, and stabilizes runtime behavior across multiple components.

Merged from feat/voice into development.


Key Changes

Voice & TTS

  • Added voice_helpers module for improved TTS handling
  • Integrated !tts command handling
  • Improved support for:
    • Replied voice messages
    • Group-based TTS triggers
  • Simplified TTS dispatch flow
  • TTS processing is now delegated to a separate microservice:

Loading Animation Improvements

  • Added timeout handling to prevent stuck animations
  • Improved error handling during loading states
  • Tweaked animation intervals and punctuation
  • Ignored non-critical "not found" errors during animation

System & Stability

  • Improved ChatActionSender error handling
  • Removed redundant send_voice_reply call from VoiceHandler
  • Simplified loading message flow

Notes

  • Improves responsiveness and reliability of TTS features
  • Reduces runtime errors during async operations
  • Uses microservice-based architecture for better scalability

Impact

  • More reliable and flexible TTS handling
  • Reduced load on main bot service
  • Better user experience with improved loading feedback
  • Cleaner deployment pipeline and dependency management

@Afdaan Afdaan merged commit bc06f81 into development Mar 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant