枚举参考 · iOS

枚举参考 · iOS

Swift 端枚举均为 enum X: String, CaseIterable,rawValue 即 wire 值,并提供了 of(_ raw: String?) 静态工厂与便捷属性。

AgentCallbackType

被动回调类型,决定 SDK 接收哪些事件:

枚举值字符串值说明
.audio2Llmaudio2llm音频→ASR+LLM
.audio2Ttsaudio2tts音频→ASR+LLM+TTS
.asr2Llmasr2llm文本→LLM
.asr2Ttsasr2tts文本→LLM+TTS
.asrVideo2TtsasrVideo2tts文本+视频→VLM+TTS
.asrVideo2VlmasrVideo2vlm文本+视频→VLM
.audioVideo2TtsaudioVideo2tts音频+视频→VLM+TTS
.audioVideo2VlmaudioVideo2vlm音频+视频→VLM
.pushListenpushListen主动监听推流
.illegalillegal无效类型
swift
let type = AgentCallbackType.of("audio2tts")   // 字符串转枚举
let raw = type.callbackType                     // "audio2tts"

打招呼信令、状态推送、人脸 UID、视频帧透传不再使用独立的回调类型, 直接在任一已注册的被动回调上重载 onGreetSignal / onState / onFaceInfo / onVideoFrame 即可接收。

FlowMode

任务流模式:

枚举值说明
.simple单步模式:startRequest 中携带完整 payload
.complex多步模式:start → task × N → end

RobotState

机器人在线状态:

枚举值说明
.online机器人在线(触发 onRobotOnline)
.offline机器人离线(触发 onRobotOffline)
.illegal无效类型

AgentPolicy

交互策略(内部使用,开发者无需关心):

枚举值wire 值说明
.passivepassive被动交互(机器人发起)
.activeactive主动交互(SDK 发起)
.teleopteleop超视距遥操(v1.5.0 新增)
.extSkillextskill扩展技能(v1.5.0 新增)
.baidubaidu百度外部引擎
.signalsignal信令交互
.illegalillegal无效类型

AgentRole

枚举值wire 值说明
.agentsdkagentsdkAgentSDK 侧
.baidubaidu百度侧
.illegalillegal无效类型

AgentEventType

WebSocket 消息事件类型(内部使用),关键事件:

枚举值事件类型字符串说明
.robotStateSyncagentsdk.robot_state.sync机器人上下线
.audioRequestStartagentsdk.audio_request.startVAD 开始
.audioRequestAppendagentsdk.audio_request.append音频帧
.audioRequestCommitagentsdk.audio_request.commitVAD 结束
.asrRequestTextagentsdk.asr_request.textASR 文本输入
.ttsRequestTextagentsdk.tts_request.textTTS 文本输入
.videoImageRequestAppendagentsdk.video_image_request.append图片帧
.videoH264RequestAppendagentsdk.video_h264_request.appendH264 视频帧
.skillQueryResponseagentsdk.skill_query.response技能查询响应
.stateQueryResponseagentsdk.state_query.response状态查询响应
.stateRequestMetaagentsdk.state_request.meta状态推送
.greetRequestFaceagentsdk.greet_request.face打招呼-人脸/UID 信号
.greetRequestVideoagentsdk.greet_request.video打招呼-视频信号
.greetRequestSignalagentsdk.greet_request.signal打招呼-业务信令
.flowStartRequest / .flowTaskRequest / .flowEndRequest / .flowInterruptRequestagentsdk.flow_*.request任务流四阶段
.teleopEnteragentsdk.teleop.enterv1.5.0:遥操-进入
.teleopEnterAckagentsdk.teleop.enter_ackv1.5.0:遥操-进入回执
.teleopAudioStartagentsdk.teleop_audio.startv1.5.0:遥操-音频段开始
.teleopAudioDeltaagentsdk.teleop_audio.deltav1.5.0:遥操-音频增量(base64)
.teleopAudioDoneagentsdk.teleop_audio.donev1.5.0:遥操-音频段结束
.teleopKeepalive / .teleopKeepaliveAckagentsdk.teleop.keepalive[_ack]v1.5.0:遥操保活
.teleopExitagentsdk.teleop.exitv1.5.0:遥操-退出
.teleopExitAckagentsdk.teleop.exit_ackv1.5.0:遥操-退出回执
.extSkillQueryagentsdk.ext_skill.queryv1.5.0:扩展技能-查询
.extSkillQueryResultagentsdk.ext_skill.query_resultv1.5.0:扩展技能-查询结果
.extSkillInvokeagentsdk.ext_skill.invokev1.5.0:扩展技能-调用
.extSkillInvokeAckagentsdk.ext_skill.invoke_ackv1.5.0:扩展技能-受理回执
.extSkillReportStateagentsdk.ext_skill.report_statev1.5.0:扩展技能-执行期间状态上报(触发 onState)
.extSkillInvokeResultagentsdk.ext_skill.invoke_resultv1.5.0:扩展技能-执行结果
.functionCallExposeagentsdk.function_call.exposev1.5.0:Function Call 透传(触发 onFunctionCall)
.functionCallArbiteragentsdk.function_call.arbiterv1.5.0:Arbiter 仲裁决策回传(由 onArbiter 发出)
.historiesExposeagentsdk.histories.exposev1.5.0:对话历史透传(触发 onHistories)
.erroragentsdk.error错误事件
swift
let eventType = AgentEventType.of("agentsdk.robot_state.sync")
let raw = eventType.eventType   // "agentsdk.robot_state.sync"

ArbiterDecision

v1.5.0 新增。Function Call 仲裁决策枚举,作为 response.onArbiter(eventId:decision:arbParam:) 的 decision 取值。

枚举值wire 值说明
.delegatedelegate委派:交由智能体默认链路处理该 function call
.overrideoverride覆盖:由二开应用接管处理,覆盖默认行为
.illegalillegal非法 / 兜底值
swift
let decision = ArbiterDecision.delegate.decision   // "delegate"
let from = ArbiterDecision.of("override")           // .override

Function Call 与 Arbiter 的接口与用法见 被动交互指南 · Function Call 开放与 Arbiter 仲裁。