Interface ConversationItem.Visitor
-
- All Implemented Interfaces:
public interface ConversationItem.Visitor<T extends Object>
An interface that defines how to map each variant of ConversationItem to a value of type T.
-
-
Method Summary
Modifier and Type Method Description abstract T
visitRealtimeConversationItemSystemMessage(RealtimeConversationItemSystemMessage realtimeConversationItemSystemMessage)
A system message in a Realtime conversation can be used to provide additional context or instructions to the model. abstract T
visitRealtimeConversationItemUserMessage(RealtimeConversationItemUserMessage realtimeConversationItemUserMessage)
A user message item in a Realtime conversation. abstract T
visitRealtimeConversationItemAssistantMessage(RealtimeConversationItemAssistantMessage realtimeConversationItemAssistantMessage)
An assistant message item in a Realtime conversation. abstract T
visitFunctionCall(RealtimeConversationItemFunctionCall functionCall)
A function call item in a Realtime conversation. abstract T
visitFunctionCallOutput(RealtimeConversationItemFunctionCallOutput functionCallOutput)
A function call output item in a Realtime conversation. abstract T
visitMcpApprovalResponse(RealtimeMcpApprovalResponse mcpApprovalResponse)
A Realtime item responding to an MCP approval request. abstract T
visitMcpListTools(RealtimeMcpListTools mcpListTools)
A Realtime item listing tools available on an MCP server. abstract T
visitMcpCall(RealtimeMcpToolCall mcpCall)
A Realtime item representing an invocation of a tool on an MCP server. abstract T
visitMcpApprovalRequest(RealtimeMcpApprovalRequest mcpApprovalRequest)
A Realtime item requesting human approval of a tool invocation. T
unknown(JsonValue json)
Maps an unknown variant of ConversationItem to a value of type T. -
-
Method Detail
-
visitRealtimeConversationItemSystemMessage
abstract T visitRealtimeConversationItemSystemMessage(RealtimeConversationItemSystemMessage realtimeConversationItemSystemMessage)
A system message in a Realtime conversation can be used to provide additional context or instructions to the model. This is similar but distinct from the instruction prompt provided at the start of a conversation, as system messages can be added at any point in the conversation. For major changes to the conversation's behavior, use instructions, but for smaller updates (e.g. "the user is now asking about a different topic"), use system messages.
-
visitRealtimeConversationItemUserMessage
abstract T visitRealtimeConversationItemUserMessage(RealtimeConversationItemUserMessage realtimeConversationItemUserMessage)
A user message item in a Realtime conversation.
-
visitRealtimeConversationItemAssistantMessage
abstract T visitRealtimeConversationItemAssistantMessage(RealtimeConversationItemAssistantMessage realtimeConversationItemAssistantMessage)
An assistant message item in a Realtime conversation.
-
visitFunctionCall
abstract T visitFunctionCall(RealtimeConversationItemFunctionCall functionCall)
A function call item in a Realtime conversation.
-
visitFunctionCallOutput
abstract T visitFunctionCallOutput(RealtimeConversationItemFunctionCallOutput functionCallOutput)
A function call output item in a Realtime conversation.
-
visitMcpApprovalResponse
abstract T visitMcpApprovalResponse(RealtimeMcpApprovalResponse mcpApprovalResponse)
A Realtime item responding to an MCP approval request.
-
visitMcpListTools
abstract T visitMcpListTools(RealtimeMcpListTools mcpListTools)
A Realtime item listing tools available on an MCP server.
-
visitMcpCall
abstract T visitMcpCall(RealtimeMcpToolCall mcpCall)
A Realtime item representing an invocation of a tool on an MCP server.
-
visitMcpApprovalRequest
abstract T visitMcpApprovalRequest(RealtimeMcpApprovalRequest mcpApprovalRequest)
A Realtime item requesting human approval of a tool invocation.
-
unknown
T unknown(JsonValue json)
Maps an unknown variant of ConversationItem to a value of type T.
An instance of ConversationItem can contain an unknown variant if it was deserialized from data that doesn't match any known variant. For example, if the SDK is on an older version than the API, then the API may respond with new variants that the SDK is unaware of.
-
-
-
-