This is an event broadcasted by Tavus.
A replica.started_speaking/stopped_speaking event is broadcasted by Tavus at specific times: the replica.started_speaking is
sent when the replica begins speaking, and a separate event for the replica.stopped_speaking is also sent as the
replica stop speaking.
When the replica.stopped_speaking event is sent, the event’s properties object includes a duration field (how long the replica spoke in seconds, may be null) and an interrupted field (true/false) indicating whether the replica was interrupted by the user.
Replica.started/stopped_speaking events can be used to keep track of when the replica has started or stopped speaking.
The inference_id can be used to correlate other events with these replica.[started|stopped]_speaking events, so you can know what and when the replica said something.
Message type indicates what product this event will be used for. In this case, the message_type will be conversation
"conversation"
This event occurs when the replica either starts actually speaking audio, or stops actually speaking audio.
conversation.replica.started_speaking, conversation.replica.stopped_speaking "conversation.replica.started_speaking"
A globally monotonic sequence number assigned to each event. Use this to determine the ordering of events — a higher seq means the event was sent later. This is useful for reconciling events that may arrive out of order.
42
The conversation turn index. This value increments each time a conversation.respond interaction is received, and groups all events that belong to the same conversational turn. Use this to correlate events (utterances, tool calls, speaking state changes, etc.) that are part of the same turn.
3