Conversation Text

Facilitates real-time communication by relaying spoken statements from both the user and the agent.

Voice Agent

The ConversationText message is a JSON message that will be sent as a user interacts with the agent.

Purpose

The ConversationText message facilitates real-time communication by relaying spoken statements from both the user and the assistant. This ensures that the conversation can be dynamically displayed on the client side, enhancing transparency and providing a clear, synchronized view of the interaction as it unfolds.

Example Payload

The server will send a ConversationText message every time the agent hears the user say something, and every time the agent speaks something. These can be used on the client side to display the conversation messages as they happen in real-time.

JSON
1{
2 "type": "ConversationText",
3 "role": "", // The speaker of this statement, either "user" or "assistant"
4 "content": "" // The statement that was spoken
5}

Multilingual Fields (Flux Multilingual)

When the listen.provider.model is set to flux-general-multi, user-role ConversationText messages include two additional fields surfaced from the STT TurnInfo response:

FieldTypeDescription
languages_hintedstring array (BCP-47)The language hints that were active at the time of the turn.
languagesstring array (BCP-47)Languages detected in the user’s speech, sorted by word count (descending).

Example

1{
2 "type": "ConversationText",
3 "role": "user",
4 "content": "Hello, how are you amigo?",
5 "languages_hinted": [
6 "en",
7 "es",
8 "de"
9 ],
10 "languages": [
11 "en",
12 "es"
13 ]
14}

These fields allow your client to adapt downstream behavior — for example, selecting the correct TTS voice or LLM prompt language based on what the user actually spoke. For full details on language hints and detection, see Flux Multilingual & Language Prompting.