Php Twilio:在浏览器中同时使用同一Twilio号码接收多个来电

Php Twilio:在浏览器中同时使用同一Twilio号码接收多个来电,php,laravel,twilio,twilio-php,twilio-programmable-voice,Php,Laravel,Twilio,Twilio Php,Twilio Programmable Voice,我已经使用PHP/Laravel和Twilio客户端JSSDK为浏览器内调用实现了Twilio客户端。实现工作正常,我可以从浏览器中拨打电话,甚至可以在浏览器中接听电话 现在,我想显示打进来的电话,同时我在浏览器中与另一个客户通话,然后我可以处理他们,无论我是否愿意接受该电话,如果我接听,则进行中的客户应该保持等待,我可以与另一个客户通话,与我们在手机中的方式完全相同 场景是这样的,我正在与某个客户通话,现在在同一时间点,另一个客户正在使用同一个Twilio号码呼叫,因此,现在我应该获得通知/弹

我已经使用PHP/Laravel和Twilio客户端JSSDK为浏览器内调用实现了Twilio客户端。实现工作正常,我可以从浏览器中拨打电话,甚至可以在浏览器中接听电话

现在,我想显示打进来的电话,同时我在浏览器中与另一个客户通话,然后我可以处理他们,无论我是否愿意接受该电话,如果我接听,则进行中的客户应该保持等待,我可以与另一个客户通话,与我们在手机中的方式完全相同

场景是这样的,我正在与某个客户通话,现在在同一时间点,另一个客户正在使用同一个Twilio号码呼叫,因此,现在我应该获得通知/弹出窗口以接听该呼叫、拒绝和保持等

因此,如果有人能帮我提供合适的代码/示例,我将不胜感激

附言:我在Twilio中介绍了排队的概念,但不知道如何实现它

提前感谢。

从官方文档中,当您接到来电时,您可以拨打get call;作为callback,您可以连接到
,call
conn.accept()
方法要启动音频流,请添加一个全局变量,以检查呼叫是否已在进行

var isOngoing = false; // Global variable 
Twilio.Device.incoming(function(conn) {
   console.log('Incoming connection from ' + conn.parameters.From);
   // accept the incoming connection only if you are not on another call.
   if(!isOngoing) { 
      isOngoing = true;
      conn.accept();   
   } else {
      // Add you other implementation for displaying your popup or a message box.
      conn.reject();
   }
});
/* Callback for when a call ends */
Twilio.Device.disconnect(function(connection) {
    isOngoing = false
});
  • 通话中,您现在需要将
    Isonging
    变量重置为
    false
    ,以便您可以接收另一个通话
感谢您的回复,让我试试这个,然后再回复您。谢谢。