Merge pull request #1439 from pipecat-ai/mb/fix-rtvi-bot-speaking-events

Fix: RTVIObserver now outputs a single bot started and stopped speaki…
This commit is contained in:
Mark Backman
2025-03-24 11:44:31 -04:00
committed by GitHub
2 changed files with 6 additions and 1 deletions

View File

@@ -440,7 +440,9 @@ class RTVIObserver(BaseObserver):
if isinstance(frame, (UserStartedSpeakingFrame, UserStoppedSpeakingFrame)):
await self._handle_interruptions(frame)
elif isinstance(frame, (BotStartedSpeakingFrame, BotStoppedSpeakingFrame)):
elif isinstance(frame, (BotStartedSpeakingFrame, BotStoppedSpeakingFrame)) and (
direction == FrameDirection.UPSTREAM
):
await self._handle_bot_speaking(frame)
elif isinstance(frame, (TranscriptionFrame, InterimTranscriptionFrame)):
await self._handle_user_transcriptions(frame)