2017-04-27 1 views
1

私はtwilioサービスとtwilioからの音声電話を使用しています。私はブラウザで正常に呼び出すことができますが、1つの問題があります。 twilio番号(ブラウザ上)で(モバイルから)電話するたびに、その時間にログインしたすべてのユーザーは着信通知を受け取ります。私の場合、私は彼らに警告ボックスを表示します。 1人のユーザーがコールを受信すると、他のユーザーのウィンドウからアラートボックスを閉じたいと思う。これにはどんな解決策がありますか?Twilio Answering Call

これは私の声のURLのexample.com/incoming.phpです:

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

そして、これは、ここ

<?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> 

答えて

0

Twilioの開発者エバンジェリストtwilio.php私のビューファイルです。

まず、誰もが着信を受信しますか?より良いシステムは、Twilio's TaskRouterを使用して、コールを利用可能なエージェントにルーティングすることです。

ただし、現在のケースでは、他の各エージェントにコールが応答されたことを通知する必要があります。これを達成する方法は、各エージェントのサーバーへのWebソケット接続を設定することです。その後、あるエージェントがコールに応答すると、Webソケットを介してメッセージを送信できます。これを他のエージェントに再ブロードキャストし、アラートボックスを閉じることができます。

これは単なるアイデアですが、これを実行するには多くの方法があります。 Twilioの中には、各エージェントが異なる名前を持ち、一度に1つのコールしか受信しないと予想しているので、助けになるものはありません。

これがまったく役に立ったら教えてください。