通过阅读本文,您可以了解如何通过AICallKit SDK实现对讲机模式。
使用说明
本示例主要旨在帮助您在不含UI集成的情况下,如何利用API实现该功能。
您需要提前集成AICallkit SDK。如何集成,请参见Android集成SDK、iOS集成SDK、Web集成SDK。
对讲机模式效果预览
开启对讲机模式 将对话模式从自然对话模式切换至对讲机模式。 | 开始说话 按下并保持讲话按钮,以开始与智能体进行交流。 |
说明
该功能以及UI界面均在含UI集成方案中内置。含UI集成方案详情,请参见含UI集成方案。
实现对讲机功能
在对讲机模式下,用户的每一次输入与智能体的每一次响应均为独立事件,此模式类似于传统对讲机的使用方式。在这种模式下,用户与智能体之间的交流显得更加结构化且有序。通过对讲机模式,用户能够以更高效、更有组织的方式与智能体进行交互。
API详情
API | 描述 |
enablePushToTalk | 开启/关闭对讲机模式,同时智能体的最终对讲机状态会通过 |
startPushToTalk | 按住开始讲话。仅在开启对讲机模式后,此调用才有效。在此期间,智能体将不会触发断句,并且其状态将始终保持在聆听状态,将实时输出用户的讲话字幕。 说明 建议在按钮按下事件调用该API,不要在松开事件里调用。 |
finishPushToTalk | 松开完成此轮次讲话,智能体会进入思考状态,并很快播报结果。 |
cancelPushToTalk | 松开取消此次讲话,智能体不做任何处理,立即回到等待按住开始讲话状态。 |
示例代码
Android
// 默认情况下是关闭对讲机模式,传入true开启对讲机模式
mARTCAICallEngine.enablePushToTalk(enable: true)
// 按住开始讲话
mARTCAICallEngine.startPushToTalk()
// 松开完成此轮次讲话
mARTCAICallEngine.finishPushToTalk()
// 松开取消此次讲话
mARTCAICallEngine.cancelPushToTalk()
// 回调处理(仅示例相关的回调操作)
ARTCAICallEngine.IARTCAICallEngineCallback mCallEngineCallbackWrapper = new ARTCAICallEngine.IARTCAICallEngineCallback() {
@Override
public void onPushToTalk(boolean enable) {
// 当前通话的对讲机模式是否启用回调
// 最终是否开启/关闭,以该回调为准
}
}
iOS
// 默认情况下是关闭对讲机模式,传入true开启对讲机模式
_ = self.engine.enablePushToTalk(enable: true)
// 按住开始讲话
_ = self.engine.startPushToTalk()
// 松开完成此轮次讲话
_ = self.engine.finishPushToTalk()
// 松开取消此次讲话
_ = self.engine.cancelPushToTalk()
func onPushToTalk(enable: Bool) {
// 当前通话的对讲机模式是否启用回调
// 最终是否开启/关闭,以该回调为准
}
Web
// 默认情况下是关闭对讲机模式,传入true开启对讲机模式
engine.enablePushToTalk(enable);
// 按住开始讲话
engine.startPushToTalk();
// 松开完成此轮次讲话
engine.finishPushToTalk();
// 松开取消此次讲话
engine.cancelPushToTalk();
engine.on('pushToTalkChanged', (enable) => {
// 当前通话的对讲机模式是否启用回调
// 最终是否开启/关闭,以该回调为准
console.log('AICallPushToTalk', enable);
});
文档内容是否对您有帮助?