2017-03-20 10 views
0

私はTwilio JavaScript SDKを使用してブラウザに電話をかけています。これの一部として、新しいポップアップウィンドウで電話をかけたり受信したりするという要件があります。これは、ユーザーが通話を切断せずにサイトを閲覧し続けることができるようにするためです。Twilio通話に応答する新しい(ポップアップ)ウィンドウを開く

私はこれを発信呼び出しに使用しています(ユーザが番号をクリックし、この後ろに私はwindow.openに電話をかけます)。

ただし、着信コールのために、私は、開始のブラウザウィンドウに次の操作を実行しようとしています:

Twilio.Device.incoming(function (connection) { 
    $('#callPopup').show(); 
    $('.js-answer-call').on('click', function (event) { 
     event.preventDefault(); 
     var receiveCallWindow = window.open('/call/incoming', '', 'width=350,height=200'); 
     receiveCallWindow.connection = connection; 
     $('#callPopup').hide(); 
    }); 
    $('.js-reject-call').on('click', function (event) { 
     event.preventDefault(); 
     connection.reject(); 
     $('#callPopup').hide(); 
    }); 
}); 

これは、ポップアップウィンドウに接続オブジェクトを渡し、その後、ポップアップウィンドウには、次のコードを実行します:

var connection = window.connection; 
$(document).ready(function() { 
    connection.accept(); 
}); 

これは、コールに応答し、しかしコールコンテキストは、親ウィンドウ内にあると、ユーザーがそのページから移動した場合には、通話を終了します。

フレーム内にメインのWebアプリケーションを含む呼び出しロジックを含むマスターiframeでこれを実現できますが、これは非常に面倒な実装であり、回避したいと思います。

答えて

0

ここではTwilioの開発者エバンジェリストです。

この場合の問題は、実際にコールコンテキストが親ウィンドウにあることです。私に今気付かれるのは、ユーザがログオンしてコールに応答し、ポップアップウィンドウでTwilio.Deviceを初期化する準備ができているときにコールウィンドウをポップアップすることだけです。

このポップアップウィンドウを発信コール用のコードに接続することもできます。

これはまったく役に立ちますか?

+0

私はあなたが何を意味しているのか理解していますが、私は誰かが電話をすると簡単なポップアップでこれを達成できると思っていました。問題に近づく方法を再考する必要があります – lisburnite

関連する問題