1. Virtualman.init(VirtualmanParams,callback,WebSocketListener) 数智人初始化接口
VirtualmanParams 参数说明
参数名称 | 数据类型 | 参数类型 | 说明 |
appkey | String | 必要参数 | 数智人 key,通过交互数智人平台创建的数智人的标识 appkey |
accessToken | String | 必要参数 | 数智人 accessToken,通过交互数智人平台创建的数智人的 accessToken |
virtualmanProjectId | String | 必要参数 | 数智人项目 id,通过交互数智人平台创建的数智人的 virtualmanProjectId |
driveType | Int | 可选参数 | 数智人驱动方式。1:纯文本驱动;2:音频驱动(变声);3:音频驱动(原声);不设置时默认为 3, 支持发送音频和文本两种驱动模式。 |
httpOrigin | String | 可选参数 | 设置后 HTTP 请求都按这个 origin 设置,不设置时请求公有云地址 |
infoVisible | Boolean | 可选参数 | 是否展示 session 信息,默认为 true 则展示 session 信息,设置为 false 隐藏 |
callback 参数说明
初始化回调函数
WebSocketListener 参数说明(可选)
方法 | 说明 |
onClosed | 当双方都表示不再发送消息且连接已成功释放时调用。不会再调用此侦听器。 |
onClosing | 当远程对等方指示不再传输传入消息时调用。 |
onFailure | 当网络套接字由于读取或写入网络错误而关闭时调用。传出和传入的消息都可能已丢失。不会再调用此侦听器。 |
onMessage | 在收到文本类型消息时调用。 |
onOpen | 当远程对等方接受 Web 套接字并可能开始传输消息时调用。 |
2. Virtualman.sendText(text: String,isNewChat: Boolean) 发送文本接口
在建流初始化成功后,按需调用 sendText 方法对数智人后台发送文本,text 为对数智人要发送的文本,在使用大模型时 isNewChat 传 true 为新对话,默认 false。
3. Virtualman.sendStreamText(SendStreamTextParams) 流式发送文本接口
SendStreamTextParams 参数说明
参数名称 | 数据类型 | 参数类型 | 说明 |
reqId | String | 必要参数 | 单次驱动的唯一标识。每一段流式文本指定一个 uuid 值。 |
text | String | 必要参数 | 流式文本内容,只需要发送增量的文本。每个片包字符串长度限制 2000 字节。 |
seq | Int | 必要参数 | 流式文本片包序号,序号必须从 1 开始。 |
isFinal | Boolean | 可选参数 | 用于标记本次流式文本驱动是否结束,默认值 false。 |
isSentence | Boolean | 可选参数 | 是否是子句模式,缺省值:false。为 true 服务端不会做重新组句。 |
isInsertSentence | Boolean | 可选参数 | 是否是插入的子句,缺省值:false。为 true 并且是子句模式则表示当前分片需要插播。 |
4. Virtualman.textDrive(text: String) 纯文本驱动接口
在使用对话服务时,调用此接口用于使用不带对话服务的纯文本驱动,text 为文本驱动的内容。
5. Virtualman.sendAudio(SendAudioParams) 发送音频驱动接口
SendAudioParams 参数说明
参数名称 | 数据类型 | 参数类型 | 说明 |
reqId | String | 必要参数 | 单次驱动的唯一标识。每一段流式文本指定一个 uuid 值。 |
audio | String | 必要参数 | 音频原始数据的 byte 数组,经 Base64 编码后的字符串。只支持:格式-PCM,采样率-16kHz,采样位深-16bits,声道-单声道。可以使用 FFmpeg 工具对音频格式进行调整,详情请看ffmpeg 转化音频格式说明。 |
seq | Int | 必要参数 | 流式文本片包序号,序号必须从 1 开始。 |
isFinal | Boolean | 可选参数 | 用于标记本次流式文本驱动是否结束,默认值 false。 |
6. Virtualman.stop() 打断文本播报
在流式或非流式驱动播报时,调用此接口用于打断当前文本播报。
7. Virtualman.setSmartActionEnabled(value: Boolean) 开启智能动作
设置是否开启智能动作,缺省值:false。为 true 并且输入的文本或者话术增强后的文本没有动作标签则会生成智能动作。
8. Virtualman.statSession(callback) 查询当前会话的当前状态
9. Virtualman.listSessionOfUin(callback) 查询某个 uin 账号所有进行中的会话
10. Virtualman.listSessionOfProjectid(callback) 查询数智人项目下的会话列表
11. Virtualman.close() 数智人销毁接口
在 activity onDestroy 中或需要的时机调用关闭的方法以关闭数智人流,否则会占用后台资源。