枚举参考 · iOS
枚举参考 · iOS
Swift 端枚举均为 enum X: String, CaseIterable,rawValue 即 wire 值,并提供了 of(_ raw: String?) 静态工厂与便捷属性。
AgentCallbackType
被动回调类型,决定 SDK 接收哪些事件:
| 枚举值 | 字符串值 | 说明 |
|---|---|---|
.audio2Llm | audio2llm | 音频→ASR+LLM |
.audio2Tts | audio2tts | 音频→ASR+LLM+TTS |
.asr2Llm | asr2llm | 文本→LLM |
.asr2Tts | asr2tts | 文本→LLM+TTS |
.asrVideo2Tts | asrVideo2tts | 文本+视频→VLM+TTS |
.asrVideo2Vlm | asrVideo2vlm | 文本+视频→VLM |
.audioVideo2Tts | audioVideo2tts | 音频+视频→VLM+TTS |
.audioVideo2Vlm | audioVideo2vlm | 音频+视频→VLM |
.pushListen | pushListen | 主动监听推流 |
.illegal | illegal | 无效类型 |
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 值 | 说明 |
|---|---|---|
.passive | passive | 被动交互(机器人发起) |
.active | active | 主动交互(SDK 发起) |
.teleop | teleop | 超视距遥操(v1.5.0 新增) |
.extSkill | extskill | 扩展技能(v1.5.0 新增) |
.baidu | baidu | 百度外部引擎 |
.signal | signal | 信令交互 |
.illegal | illegal | 无效类型 |
AgentRole
| 枚举值 | wire 值 | 说明 |
|---|---|---|
.agentsdk | agentsdk | AgentSDK 侧 |
.baidu | baidu | 百度侧 |
.illegal | illegal | 无效类型 |
AgentEventType
WebSocket 消息事件类型(内部使用),关键事件:
| 枚举值 | 事件类型字符串 | 说明 |
|---|---|---|
.robotStateSync | agentsdk.robot_state.sync | 机器人上下线 |
.audioRequestStart | agentsdk.audio_request.start | VAD 开始 |
.audioRequestAppend | agentsdk.audio_request.append | 音频帧 |
.audioRequestCommit | agentsdk.audio_request.commit | VAD 结束 |
.asrRequestText | agentsdk.asr_request.text | ASR 文本输入 |
.ttsRequestText | agentsdk.tts_request.text | TTS 文本输入 |
.videoImageRequestAppend | agentsdk.video_image_request.append | 图片帧 |
.videoH264RequestAppend | agentsdk.video_h264_request.append | H264 视频帧 |
.skillQueryResponse | agentsdk.skill_query.response | 技能查询响应 |
.stateQueryResponse | agentsdk.state_query.response | 状态查询响应 |
.stateRequestMeta | agentsdk.state_request.meta | 状态推送 |
.greetRequestFace | agentsdk.greet_request.face | 打招呼-人脸/UID 信号 |
.greetRequestVideo | agentsdk.greet_request.video | 打招呼-视频信号 |
.greetRequestSignal | agentsdk.greet_request.signal | 打招呼-业务信令 |
.flowStartRequest / .flowTaskRequest / .flowEndRequest / .flowInterruptRequest | agentsdk.flow_*.request | 任务流四阶段 |
.teleopEnter | agentsdk.teleop.enter | v1.5.0:遥操-进入 |
.teleopEnterAck | agentsdk.teleop.enter_ack | v1.5.0:遥操-进入回执 |
.teleopAudioStart | agentsdk.teleop_audio.start | v1.5.0:遥操-音频段开始 |
.teleopAudioDelta | agentsdk.teleop_audio.delta | v1.5.0:遥操-音频增量(base64) |
.teleopAudioDone | agentsdk.teleop_audio.done | v1.5.0:遥操-音频段结束 |
.teleopKeepalive / .teleopKeepaliveAck | agentsdk.teleop.keepalive[_ack] | v1.5.0:遥操保活 |
.teleopExit | agentsdk.teleop.exit | v1.5.0:遥操-退出 |
.teleopExitAck | agentsdk.teleop.exit_ack | v1.5.0:遥操-退出回执 |
.extSkillQuery | agentsdk.ext_skill.query | v1.5.0:扩展技能-查询 |
.extSkillQueryResult | agentsdk.ext_skill.query_result | v1.5.0:扩展技能-查询结果 |
.extSkillInvoke | agentsdk.ext_skill.invoke | v1.5.0:扩展技能-调用 |
.extSkillInvokeAck | agentsdk.ext_skill.invoke_ack | v1.5.0:扩展技能-受理回执 |
.extSkillReportState | agentsdk.ext_skill.report_state | v1.5.0:扩展技能-执行期间状态上报(触发 onState) |
.extSkillInvokeResult | agentsdk.ext_skill.invoke_result | v1.5.0:扩展技能-执行结果 |
.functionCallExpose | agentsdk.function_call.expose | v1.5.0:Function Call 透传(触发 onFunctionCall) |
.functionCallArbiter | agentsdk.function_call.arbiter | v1.5.0:Arbiter 仲裁决策回传(由 onArbiter 发出) |
.historiesExpose | agentsdk.histories.expose | v1.5.0:对话历史透传(触发 onHistories) |
.error | agentsdk.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 值 | 说明 |
|---|---|---|
.delegate | delegate | 委派:交由智能体默认链路处理该 function call |
.override | override | 覆盖:由二开应用接管处理,覆盖默认行为 |
.illegal | illegal | 非法 / 兜底值 |
swift
let decision = ArbiterDecision.delegate.decision // "delegate"
let from = ArbiterDecision.of("override") // .override
Function Call 与 Arbiter 的接口与用法见 被动交互指南 · Function Call 开放与 Arbiter 仲裁。