1. Virtualman.init(VirtualmanParams, WebSocketListener) 数智人初始化接口
VirtualmanParams 参数说明
参数名称 | 字段含义 | 补充说明 | 数据类型 | 参数类型 |
appkey | 数智人 key | 通过交互数智人平台创建的数智人的标识 appkey | String | 必要参数 |
accessToken | 数智人 accessToken | 通过交互数智人平台创建的数智人的 accessToken | String | 必要参数 |
virtualmanProjectId | 数智人项目 id | 通过交互数智人平台创建的数智人的 virtualmanProjectId | String | 必要参数 |
WebSocketListener 参数说明(可选)
方法 | 说明 |
onClosed | 当双方都表示不再发送消息且连接已成功释放时调用。不会再调用此侦听器。 |
onClosing | 当远程对等方指示不再传输传入消息时调用。 |
onFailure | 当网络套接字由于读取或写入网络错误而关闭时调用。传出和传入的消息都可能已丢失。不会再调用此侦听器。 |
onMessage | 在收到文本类型消息时调用。 |
onOpen | 当远程对等方接受 Web 套接字并可能开始传输消息时调用。 |
WebSocketListener onMessage 返回数据字段说明:
字段 | 类型 | 说明 |
Type | Int | 返回的数据类型。 1:输入文本。 2:播报内容。 3:播报状态。 5:风险控制提示。 7:由于当前播报句不可打断而被遗弃的输入文本 |
SessionId | String | 视频流会话的唯一标识 |
Text | String | 当 Type 为 1、2、7 时有此字段。输入文本/播报文本 |
TextPro | String | 当 Type 为 2 时有此字段。用于播报的文本内容,包含 ssml 标签等 |
TextDisplay | String | 当 Type 为 2 时有此字段。用于展示在端上的文本内容。 |
Uninterrupt | Boolean | 当 Type 为 2 时有此字段。当前播报句是否可打断。 true:不可打断, false:可打断。 |
Muted | Boolean | 当 Type 为 2 时有此字段。播报当前句时是否关闭收音。 true:关闭, false:不关闭。 |
SpeakStatus | String | 当 Type 为 3 时有此字段。数智人状态。 speak_start:正在播报, speak_over:静默中。 |
SpeechId | Int | 当 Type 为 2、3、5 时有此字段。数智人播报的内容 id,第一次播报为 1,后续每次播报+1。 |
InteractionType | String | 当 Type 为 2 时有此字段。特殊消息类型,可于配置平台自定义,常见类型有:弹窗、图片等。 |
InteractionContent | String | 当 Type 为 2 时有此字段。特殊消息内容,用于下发弹窗、图片等非文本类的特殊消息。 |
ChatStatus | Int | 当 Type 为 2 时有此字段。当此字段为 4 时,代表对话剧本结束。其他值为正常对话中状态。 |
InterruptResult | Int | 当 Type 为 1 时有此字段。仅在请求参数 Interrup 为 true 时需要关注此字段。 1 - 成功, 2 - 失败。 |
InterruptMessage | String | 当 Type 为 1 时有此字段。仅在请求参数 Interrup 为 true 且打断失败时需要关注此字段。打断失败的原因。 |
2. Virtualman.sendText(text: String) 发送文本接口
在建流初始化成功后, 按需调用 sendText 方法对数智人后台发送文本,text 为对数智人要发送的文本。
3. Virtualman.close() 数智人销毁接口
在 activity onDestroy 中调用关闭的方法以关闭数智人流,否则会占用后台资源。