我已经使用 PHP/Laravel 和 Twilio Client JS SDK 为浏览器内调用实现了 Twilio Client。实现工作正常,我可以从浏览器拨打电话,甚至可以在浏览器中接听电话。
现在,我想显示来电,同时我正在与浏览器中的其他客户通话,然后我可以处理他们是否要接听电话如果我接听电话,那么输入- progress 客户应该暂停,我可以与另一个客户交谈,就像我们在手机上做的一样。
场景是这样的,我正在与一些客户通话,现在在同一时间另一个客户正在拨打同一个 Twilio 号码,所以,现在我应该得到通知/弹出窗口来接听那个电话,拒绝, 并保持等。
因此,如果有人可以帮助我提供正确的代码/示例,我们将不胜感激。
PS:我在 Twilio 中经历了 Enqueue 的概念,但不明白如何实现它。
提前致谢。
从官方文档Twilio.Device.incoming在您收到来电时获取呼叫,作为回调,您将获得一个connection, callconn.accept()方法以启动音频流,添加一个全局变量以检查是否已经在进行呼叫
connection
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 });
isOngoing
false