ConversationalAIAPIEventHandler 类

  • iOS

更新时间不可用

onMessageError

Swift
@objc func onMessageError(agentUserId: String, error: MessageError)

消息处理发生错误时触发的回调。

该回调在消息处理过程中发生错误时被触发。例如,当发送聊天消息失败时,会返回错误信息。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
errorMessageError消息错误对象,包含错误类型和错误信息。详见 MessageError。
表格内容超出当前宽度,可横向滚动查看更多列。

onMessageReceiptUpdated

Swift
@objc func onMessageReceiptUpdated(agentUserId: String, messageReceipt: MessageReceipt)

图像消息信息更新回调。

该回调在会话中处理图像时被触发,用于提供图像的元数据。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
messageReceiptMessageReceipt消息回执对象。详见 MessageReceipt。
表格内容超出当前宽度,可横向滚动查看更多列。

onUserManualSosEvent

Swift
@objc optional func onUserManualSosEvent(agentUserId: String, event: UserManualSosEvent)

手动 SoS 结果回调。

该回调用于接收服务端返回的手动 SoS 处理结果。服务端成功和失败都会通过该回调返回,业务侧可根据 event.payload.success 判断结果。

该回调有默认空实现,已有接入方无需强制实现。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
eventUserManualSosEvent手动 SoS 事件对象。详见 UserManualSosEvent。
表格内容超出当前宽度,可横向滚动查看更多列。

onUserManualEosEvent

Swift
@objc optional func onUserManualEosEvent(agentUserId: String, event: UserManualEosEvent)

手动 EoS 结果回调。

该回调用于接收服务端返回的手动 EoS 处理结果。服务端成功和失败都会通过该回调返回,业务侧可根据 event.payload.success 判断结果。

该回调有默认空实现,已有接入方无需强制实现。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
eventUserManualEosEvent手动 EoS 事件对象。详见 UserManualEosEvent。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentManualEosEvent

Swift
@objc optional func onAgentManualEosEvent(agentUserId: String, event: AgentManualEosEvent)

服务端超限自动 EoS 通知回调。

当用户单轮音频持续时间超过服务端阈值时,服务端会主动结束当前用户发言,并通过该回调通知客户端。该事件不是 manualEOS() 的调用结果。

该回调有默认空实现,已有接入方无需强制实现。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
eventAgentManualEosEvent服务端超限自动 EoS 事件对象。详见 AgentManualEosEvent。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentStateChanged

Swift
@objc func onAgentStateChanged(agentUserId: String, event: StateChangeEvent)

智能体状态变化回调。

该回调在智能体状态发生变化时触发,例如从空闲切换为静音、聆听、思考或说话状态。你可以使用该回调更新用户界面或跟踪对话流程。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
eventStateChangeEvent智能体状态变化事件。详见 StateChangeEvent。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentListeningChanged

Swift
@objc optional func onAgentListeningChanged(agentUserId: String, isListening: Bool)

智能体倾听状态变化回调。

该回调是对 onAgentStateChanged 的细粒度补充,用于监听智能体是否开始或停止倾听用户输入。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
isListeningBool智能体当前是否处于倾听状态。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentThinkingChanged

Swift
@objc optional func onAgentThinkingChanged(agentUserId: String, isThinking: Bool)

智能体思考状态变化回调。

该回调是对 onAgentStateChanged 的细粒度补充,用于监听智能体是否开始或停止处理请求。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
isThinkingBool智能体当前是否处于思考状态。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentSpeakingChanged

Swift
@objc optional func onAgentSpeakingChanged(agentUserId: String, isSpeaking: Bool)

智能体说话状态变化回调。

该回调是对 onAgentStateChanged 的细粒度补充,用于监听智能体是否开始或停止播报语音。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
isSpeakingBool智能体当前是否处于说话状态。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentInterrupted

Swift
@objc func onAgentInterrupted(agentUserId: String, event: InterruptEvent)

中断事件回调。

注意

该回调不一定与智能体的状态同步,因此不建议在该回调中处理核心业务逻辑。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
eventInterruptEvent中断事件,包含轮次 ID 和时间戳,详见 InterruptEvent。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentMetrics

Swift
@objc func onAgentMetrics(agentUserId: String, metrics: Metric)

性能指标可用时触发的回调。

该回调提供性能数据,例如 LLM 推理延迟和 TTS 语音合成延迟,用于监测系统性能。

注意

该回调不一定与智能体的状态同步,因此不建议在该回调中处理核心业务逻辑。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
metricsMetric性能指标,包含类型、数值和时间戳。详见 Metric。
表格内容超出当前宽度,可横向滚动查看更多列。

onAgentError

Swift
@objc func onAgentError(agentUserId: String, error: ModuleError)

AI 模块发生错误时的回调。

当模块组件(如 LLM、TTS 等)发生错误时,会调用该回调。可用于错误监控、日志记录以及实现服务降级策略。

注意

该回调不一定与智能体的状态同步,因此不建议在该回调中处理核心业务逻辑。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
errorModuleError模块错误,包含类型、错误码、错误信息和时间戳。详见 ModuleError。
表格内容超出当前宽度,可横向滚动查看更多列。

onTranscriptUpdated

Swift
@objc func onTranscriptUpdated(agentUserId: String, transcript: Transcript)

转写内容更新回调。

该回调在会话中的语音转写内容发生更新时触发。

参数

参数数据类型描述
agentUserIdString智能体的 RTM 用户 ID。
transcriptTranscript转写数据,包含文本内容、状态和元数据。详见 Transcript。
表格内容超出当前宽度,可横向滚动查看更多列。