#!/usr/bin/env python3 """ Test audio playback in an active voice session. This sends text to the TTS and should be heard in Discord voice. """ import asyncio import sys sys.path.insert(0, '/app') from utils.voice_manager import voice_manager async def test_voice_playback(): print("šŸŽ¤ Testing voice playback in active session...") if not voice_manager.active_session: print("āŒ No active voice session! Use '!miku join' first.") return if not voice_manager.active_session.tts_streamer: print("āŒ TTS streamer not initialized!") return if not voice_manager.active_session.voice_client: print("āŒ Not connected to voice!") return print(f"āœ“ Active session in: {voice_manager.active_session.voice_channel.name}") print(f"āœ“ Voice client connected: {voice_manager.active_session.voice_client.is_connected()}") print(f"āœ“ Voice client playing: {voice_manager.active_session.voice_client.is_playing()}") try: test_text = "Hello! This is a test of the voice chat system." print(f"\nšŸ“¤ Speaking: '{test_text}'") await voice_manager.active_session.tts_streamer.stream_text(test_text) print("āœ“ Text sent to TTS!") print("ā³ Audio should be playing in Discord voice channel...") print(" (Wait a few seconds for TTS processing and playback)") await asyncio.sleep(5) print("āœ… Test complete!") except Exception as e: print(f"āŒ Error: {e}") import traceback traceback.print_exc() if __name__ == "__main__": asyncio.run(test_voice_playback())