Twilio 接听电话

Twilio Answering Call

我正在使用 Twilio 服务和来自 twilio 的语音呼叫。我能够成功调用浏览器,但存在一个问题。每当我(从手机)拨打我的 twilio 号码(在浏览器上)时,当时登录的每个用户都会收到来电通知。就我而言,我向他们展示了一个警报框。当一个用户接到电话时,我想关闭来自其他用户的提醒框 window。有解决办法吗?

这是我的声音 url 示例。com/incoming.php :

<?php
header('Content-type: text/xml');
?>
<Response>
    <Dial>
          <Client>someone</Client>
    </Dial>
</Response>

这是我的视图文件 twilio.php

<?php 
        $capability = new ClientToken(xxx,xxx);
        $capability->allowClientOutgoing(xxxxxx);
        $capability->allowClientIncoming("someone");
        $token = $capability->generateToken();
?>

<script type="text/javascript">

      Twilio.Device.setup("<?php echo $token; ?>");

      Twilio.Device.connect(function (conn) {
        alertify.confirm().close()
      });

      Twilio.Device.disconnect(function (conn) {
        alertify.confirm().close()
      });

      Twilio.Device.incoming(function (conn) {
        alertify.confirm('Incoming connection from ' + conn.parameters.From).set('onok', function (closeEvent) { 
          conn.accept();
        })
      });
</script>

这里是 Twilio 开发人员布道者。

首先,您是否希望每个人都能收到来电?更好的系统可能是使用 Twilio's TaskRouter 将呼叫路由到可用的座席。

但在当前情况下,您需要通知每个其他座席呼叫已被接听。实现此目的的一种方法是为每个代理设置到服务器的 Web 套接字连接。然后,当一个代理接听电话时,您可以通过网络套接字发送一条消息,您可以将其重新广播给其他代理并关闭警报框。

不过这只是一个想法,因为您可以通过多种方式来实现这一点。 Twilio 中没有任何东西可以提供帮助,因为我们希望每个代理都有不同的名称并且一次只能接听一个电话。

如果这有帮助,请告诉我。