如何在Voximplant通话场景中获取通话ID(callId)
获取Voximplant通话ID(callId)的方法
场景脚本端(Voximplant Cloud 侧)
- 通话场景脚本里,所有
Call对象都自带id属性,直接调用就能拿到callId,常用在事件回调中:
// 通话振铃时获取 VoxEngine.addEventListener(AppEvents.CallAlerting, (e) => { const callId = e.call.id; // 可用于日志、业务关联等操作 }); // 通话接通后获取 VoxEngine.addEventListener(AppEvents.CallConnected, (e) => { const callId = e.call.id; });
- 转接生成的新通话,同样通过新
Call对象的id属性获取对应callId。
客户端SDK端(Web/移动端)
- Web SDK:创建或接听的
VoxImplant.Call实例,直接访问id属性:
const call = client.call(targetNumber); call.addEventListener(VoxImplant.CallEvents.Connected, () => { const callId = call.id; });
- Android SDK:
Call实例调用getId()方法:
Call call = client.call(targetNumber, null); call.setCallListener(new CallListener() { @Override public void onConnected(Call call) { String callId = call.getId(); } });
- iOS SDK:
Call实例的callId属性直接获取:
let call = client.call(targetNumber, settings: nil) call.delegate = self func callDidConnect(_ call: VoxImplant.Call) { let callId = call.callId }
注意事项
- 同一个通话的callId在整个生命周期内保持唯一,转接、转会后的新通话会生成全新的callId。
- callId会区分呼入和呼出通话,即使是同一双方的通话,呼入和呼出的callId也不同。
内容的提问来源于stack exchange,提问作者Vlad Kononenko
相关产品推荐
相关产品推荐

