Simplify 55* examples: inline the settings update directly in the on_client_connected handler instead of wrapping it in a separate async task

This commit is contained in:
Paul Kompfner
2026-02-18 11:06:33 -05:00
parent a7ada79fd9
commit e98bb1df66
42 changed files with 192 additions and 330 deletions

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Deepgram STT settings: language=es")
logger.info("Updating Deepgram STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=DeepgramSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=DeepgramSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -103,14 +103,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Azure STT settings: language=es")
logger.info("Updating Azure STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=AzureSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=AzureSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Google STT settings: language=es")
logger.info("Updating Google STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=GoogleSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=GoogleSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating AssemblyAI STT settings: language=es")
logger.info("Updating AssemblyAI STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=AssemblyAISTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=AssemblyAISTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Gladia STT settings: language=es")
logger.info("Updating Gladia STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=GladiaSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=GladiaSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -103,14 +103,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating ElevenLabs Realtime STT settings: language=es")
logger.info("Updating ElevenLabs Realtime STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=ElevenLabsRealtimeSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=ElevenLabsRealtimeSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -105,14 +105,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating ElevenLabs STT settings: language=es")
logger.info("Updating ElevenLabs STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=ElevenLabsSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=ElevenLabsSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Speechmatics STT settings: language=es")
logger.info("Updating Speechmatics STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=SpeechmaticsSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=SpeechmaticsSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -102,18 +102,15 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info(
logger.info( 'Updating Whisper API STT settings: prompt="Transcribe in English", temperature=0.5'
'Updating Whisper API STT settings: prompt="Transcribe in English", temperature=0.5' )
await task.queue_frame(
STTUpdateSettingsFrame(
update=BaseWhisperSTTSettings(prompt="Transcribe in English", temperature=0.5)
) )
await task.queue_frame( )
STTUpdateSettingsFrame(
update=BaseWhisperSTTSettings(prompt="Transcribe in English", temperature=0.5)
)
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Sarvam STT settings: language=hi")
logger.info("Updating Sarvam STT settings: language=hi") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=SarvamSTTSettings(language=Language.HI))
STTUpdateSettingsFrame(update=SarvamSTTSettings(language=Language.HI)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Soniox STT settings: language=es")
logger.info("Updating Soniox STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=SonioxSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=SonioxSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating AWS Transcribe STT settings: language=es")
logger.info("Updating AWS Transcribe STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=AWSTranscribeSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=AWSTranscribeSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Cartesia STT settings: language=es")
logger.info("Updating Cartesia STT settings: language=es") await task.queue_frame(
await task.queue_frame( STTUpdateSettingsFrame(update=CartesiaSTTSettings(language=Language.ES))
STTUpdateSettingsFrame(update=CartesiaSTTSettings(language=Language.ES)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -102,12 +102,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Cartesia TTS settings: speed=fast")
logger.info("Updating Cartesia TTS settings: speed=fast") await task.queue_frame(TTSUpdateSettingsFrame(update=CartesiaTTSSettings(speed="fast")))
await task.queue_frame(TTSUpdateSettingsFrame(update=CartesiaTTSSettings(speed="fast")))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,14 +99,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating ElevenLabs TTS settings: speed=1.2, stability=0.3")
logger.info("Updating ElevenLabs TTS settings: speed=1.2, stability=0.3") await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=ElevenLabsTTSSettings(speed=1.2, stability=0.3))
TTSUpdateSettingsFrame(update=ElevenLabsTTSSettings(speed=1.2, stability=0.3)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -97,12 +97,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating OpenAI TTS settings: speed=1.5")
logger.info("Updating OpenAI TTS settings: speed=1.5") await task.queue_frame(TTSUpdateSettingsFrame(update=OpenAITTSSettings(speed=1.5)))
await task.queue_frame(TTSUpdateSettingsFrame(update=OpenAITTSSettings(speed=1.5)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,14 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating Deepgram TTS settings: voice="aura-2-luna-en"')
logger.info('Updating Deepgram TTS settings: voice="aura-2-luna-en"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=DeepgramTTSSettings(voice="aura-2-luna-en"))
TTSUpdateSettingsFrame(update=DeepgramTTSSettings(voice="aura-2-luna-en")) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,14 +99,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating Azure TTS settings: rate="1.3", style="cheerful"')
logger.info('Updating Azure TTS settings: rate="1.3", style="cheerful"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=AzureTTSSettings(rate="1.3", style="cheerful"))
TTSUpdateSettingsFrame(update=AzureTTSSettings(rate="1.3", style="cheerful")) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,14 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Google HTTP TTS settings: speaking_rate=1.4")
logger.info("Updating Google HTTP TTS settings: speaking_rate=1.4") await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=GoogleHttpTTSSettings(speaking_rate=1.4))
TTSUpdateSettingsFrame(update=GoogleHttpTTSSettings(speaking_rate=1.4)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,12 +100,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating PlayHT TTS settings: speed=1.3")
logger.info("Updating PlayHT TTS settings: speed=1.3") await task.queue_frame(TTSUpdateSettingsFrame(update=PlayHTTTSSettings(speed=1.3)))
await task.queue_frame(TTSUpdateSettingsFrame(update=PlayHTTTSSettings(speed=1.3)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,12 +99,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Rime TTS settings: speedAlpha=1.5")
logger.info("Updating Rime TTS settings: speedAlpha=1.5") await task.queue_frame(TTSUpdateSettingsFrame(update=RimeTTSSettings(speedAlpha=1.5)))
await task.queue_frame(TTSUpdateSettingsFrame(update=RimeTTSSettings(speedAlpha=1.5)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,12 +99,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating LMNT TTS settings: voice="lily"')
logger.info('Updating LMNT TTS settings: voice="lily"') await task.queue_frame(TTSUpdateSettingsFrame(update=LmntTTSSettings(voice="lily")))
await task.queue_frame(TTSUpdateSettingsFrame(update=LmntTTSSettings(voice="lily")))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,14 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Fish Audio TTS settings: prosody_speed=1.5")
logger.info("Updating Fish Audio TTS settings: prosody_speed=1.5") await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=FishAudioTTSSettings(prosody_speed=1.5))
TTSUpdateSettingsFrame(update=FishAudioTTSSettings(prosody_speed=1.5)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -102,14 +102,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating MiniMax TTS settings: speed=1.5, emotion="happy"')
logger.info('Updating MiniMax TTS settings: speed=1.5, emotion="happy"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=MiniMaxTTSSettings(speed=1.5, emotion="happy"))
TTSUpdateSettingsFrame(update=MiniMaxTTSSettings(speed=1.5, emotion="happy")) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,12 +96,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Groq TTS settings: speed=1.5")
logger.info("Updating Groq TTS settings: speed=1.5") await task.queue_frame(TTSUpdateSettingsFrame(update=GroqTTSSettings(speed=1.5)))
await task.queue_frame(TTSUpdateSettingsFrame(update=GroqTTSSettings(speed=1.5)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,18 +99,13 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating Hume TTS settings: speed=1.5, description="Speak with excitement"')
logger.info( await task.queue_frame(
'Updating Hume TTS settings: speed=1.5, description="Speak with excitement"' TTSUpdateSettingsFrame(
update=HumeTTSSettings(speed=1.5, description="Speak with excitement")
) )
await task.queue_frame( )
TTSUpdateSettingsFrame(
update=HumeTTSSettings(speed=1.5, description="Speak with excitement")
)
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,12 +96,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Neuphonic TTS settings: speed=1.4")
logger.info("Updating Neuphonic TTS settings: speed=1.4") await task.queue_frame(TTSUpdateSettingsFrame(update=NeuphonicTTSSettings(speed=1.4)))
await task.queue_frame(TTSUpdateSettingsFrame(update=NeuphonicTTSSettings(speed=1.4)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,16 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Inworld TTS settings: speaking_rate=1.3, temperature=0.8")
logger.info("Updating Inworld TTS settings: speaking_rate=1.3, temperature=0.8") await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=InworldTTSSettings(speaking_rate=1.3, temperature=0.8))
TTSUpdateSettingsFrame( )
update=InworldTTSSettings(speaking_rate=1.3, temperature=0.8)
)
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,16 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating Gemini TTS settings: prompt="Speak slowly and dramatically"')
logger.info('Updating Gemini TTS settings: prompt="Speak slowly and dramatically"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=GeminiTTSSettings(prompt="Speak slowly and dramatically"))
TTSUpdateSettingsFrame( )
update=GeminiTTSSettings(prompt="Speak slowly and dramatically")
)
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,14 +96,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating AWS Polly TTS settings: rate="fast", pitch="+10%"')
logger.info('Updating AWS Polly TTS settings: rate="fast", pitch="+10%"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(update=AWSPollyTTSSettings(rate="fast", pitch="+10%"))
TTSUpdateSettingsFrame(update=AWSPollyTTSSettings(rate="fast", pitch="+10%")) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,12 +96,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Sarvam TTS settings: pace=1.3")
logger.info("Updating Sarvam TTS settings: pace=1.3") await task.queue_frame(TTSUpdateSettingsFrame(update=SarvamWSTTSSettings(pace=1.3)))
await task.queue_frame(TTSUpdateSettingsFrame(update=SarvamWSTTSSettings(pace=1.3)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -96,16 +96,13 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info('Updating Camb TTS settings: user_instructions="Speak enthusiastically"')
logger.info('Updating Camb TTS settings: user_instructions="Speak enthusiastically"') await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(
TTSUpdateSettingsFrame( update=CambTTSSettings(user_instructions="Speak enthusiastically")
update=CambTTSSettings(user_instructions="Speak enthusiastically")
)
) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,12 +99,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Hathora TTS settings: speed=1.3")
logger.info("Updating Hathora TTS settings: speed=1.3") await task.queue_frame(TTSUpdateSettingsFrame(update=HathoraTTSSettings(speed=1.3)))
await task.queue_frame(TTSUpdateSettingsFrame(update=HathoraTTSSettings(speed=1.3)))
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,16 +99,13 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating ResembleAI TTS settings: voice (changed)")
logger.info("Updating ResembleAI TTS settings: voice (changed)") await task.queue_frame(
await task.queue_frame( TTSUpdateSettingsFrame(
TTSUpdateSettingsFrame( update=ResembleAITTSSettings(voice=os.getenv("RESEMBLEAI_VOICE_ID_ALT", ""))
update=ResembleAITTSSettings(voice=os.getenv("RESEMBLEAI_VOICE_ID_ALT", ""))
)
) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -100,14 +100,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating OpenAI LLM settings: temperature=0.1")
logger.info("Updating OpenAI LLM settings: temperature=0.1") await task.queue_frame(LLMUpdateSettingsFrame(update=OpenAILLMSettings(temperature=0.1)))
await task.queue_frame(
LLMUpdateSettingsFrame(update=OpenAILLMSettings(temperature=0.1))
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,14 +99,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Anthropic LLM settings: temperature=0.1")
logger.info("Updating Anthropic LLM settings: temperature=0.1") await task.queue_frame(LLMUpdateSettingsFrame(update=AnthropicLLMSettings(temperature=0.1)))
await task.queue_frame(
LLMUpdateSettingsFrame(update=AnthropicLLMSettings(temperature=0.1))
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,14 +99,9 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Google LLM settings: temperature=0.1")
logger.info("Updating Google LLM settings: temperature=0.1") await task.queue_frame(LLMUpdateSettingsFrame(update=GoogleLLMSettings(temperature=0.1)))
await task.queue_frame(
LLMUpdateSettingsFrame(update=GoogleLLMSettings(temperature=0.1))
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -87,14 +87,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
logger.info(f"Client connected") logger.info(f"Client connected")
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating OpenAI Realtime LLM settings: temperature=0.1")
logger.info("Updating OpenAI Realtime LLM settings: temperature=0.1") await task.queue_frame(
await task.queue_frame( LLMUpdateSettingsFrame(update=OpenAIRealtimeLLMSettings(temperature=0.1))
LLMUpdateSettingsFrame(update=OpenAIRealtimeLLMSettings(temperature=0.1)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -87,14 +87,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
logger.info(f"Client connected") logger.info(f"Client connected")
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Gemini Live LLM settings: temperature=0.1")
logger.info("Updating Gemini Live LLM settings: temperature=0.1") await task.queue_frame(
await task.queue_frame( LLMUpdateSettingsFrame(update=GeminiLiveLLMSettings(temperature=0.1))
LLMUpdateSettingsFrame(update=GeminiLiveLLMSettings(temperature=0.1)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -93,14 +93,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
logger.info(f"Client connected") logger.info(f"Client connected")
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Ultravox Realtime LLM settings: temperature=0.1")
logger.info("Updating Ultravox Realtime LLM settings: temperature=0.1") await task.queue_frame(
await task.queue_frame( LLMUpdateSettingsFrame(update=UltravoxRealtimeLLMSettings(temperature=0.1))
LLMUpdateSettingsFrame(update=UltravoxRealtimeLLMSettings(temperature=0.1)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -87,14 +87,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
logger.info(f"Client connected") logger.info(f"Client connected")
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating Grok Realtime LLM settings: temperature=0.1")
logger.info("Updating Grok Realtime LLM settings: temperature=0.1") await task.queue_frame(
await task.queue_frame( LLMUpdateSettingsFrame(update=GrokRealtimeLLMSettings(temperature=0.1))
LLMUpdateSettingsFrame(update=GrokRealtimeLLMSettings(temperature=0.1)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):

View File

@@ -99,14 +99,11 @@ async def run_bot(transport: BaseTransport, runner_args: RunnerArguments):
messages.append({"role": "system", "content": "Please introduce yourself to the user."}) messages.append({"role": "system", "content": "Please introduce yourself to the user."})
await task.queue_frames([LLMRunFrame()]) await task.queue_frames([LLMRunFrame()])
async def update_settings(): await asyncio.sleep(10)
await asyncio.sleep(10) logger.info("Updating AWS Bedrock LLM settings: temperature=0.1")
logger.info("Updating AWS Bedrock LLM settings: temperature=0.1") await task.queue_frame(
await task.queue_frame( LLMUpdateSettingsFrame(update=AWSBedrockLLMSettings(temperature=0.1))
LLMUpdateSettingsFrame(update=AWSBedrockLLMSettings(temperature=0.1)) )
)
asyncio.create_task(update_settings())
@transport.event_handler("on_client_disconnected") @transport.event_handler("on_client_disconnected")
async def on_client_disconnected(transport, client): async def on_client_disconnected(transport, client):