管理2个会议与辛硫磷工厂的场景



我正在尝试使用Voximplant进行会议,当用户向另一个用户拨打电话时,在通话仍在进行的情况下,它会向另一位拨打两个电话的用户再拨打一个电话,被叫方会被添加到视频会议中。但打电话的人似乎被开了两次账单,而且场景看起来并没有优化。我应该怎么做才能一次计费并优化它?

场景:

require(Modules.Conference);
var call, conf = null;
VoxEngine.addEventListener(AppEvents.Started, handleConferenceStarted);
function handleConferenceStarted(e) {
// Create 2 conferences right after session to manage audio in the right way
if( conf === null ){
conf = VoxEngine.createConference(); // create conference
}
conf.addEventListener(CallEvents.Connected,function(){
Logger.write('Conference started')
})

}
VoxEngine.addEventListener(AppEvents.CallAlerting, function(e) {
e.call.addEventListener(CallEvents.Connected, handleCallConnected);
let new_call = VoxEngine.callUser(e.destination,e.callerid,e.displayName,{},true)
new_call.addEventListener(CallEvents.Connected,handleCallConnected);
e.call.answer();
});
function handleCallConnected(e) {
Logger.write('caller connected');
conf.add({
call: e.call,
mode: "FORWARD",
direction: "BOTH", scheme: e.scheme
});
}

当没有参与者时,您需要结束会议。请参阅我们文档中的以下文章:https://voximplant.com/docs/guides/conferences/howto.你可以在那里找到完整的场景代码。

此外,我建议在之后为CallEvents.Disconnected和CallEvent.Failed事件添加一些处理程序

new_call.addEventListener(CallEvents.Connected,handleCallConnected); 

因为有时被叫可能离线或按下拒绝按钮。

相关内容

最新更新