2

会話中に通話に接続し続けるために助けが必要です。私はtwilio Docで与えられた次のコードを使用しました。

PHP部分はこちら

$token = new Services_Twilio_Capability(TW_ID, TW_TOKEN);
$token->allowClientIncoming($_SESSION['emp_id']);

JS 部分:

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


$("#call").click(function() {  
  params = { "tocall" : $('#tocall').val()};
  connection = Twilio.Device.connect(params);
});

$("#hangup").click(function() {  
  Twilio.Device.disconnectAll();
});

Twilio.Device.ready(function (device) {
        $('#status').text('Ready');
        console.log(Twilio.Device.status());
});

Twilio.Device.incoming(function (conn) {                        
        startCall(conn);
});

ページの読み込み時に、Twilio.Device.ready()関数はユーザーをログインさせて通話を受信しますが、ユーザーがページを更新すると通話が切断されました。または、ユーザーが会話中にクライアントの情報を更新するなどのことをしようとした場合、通話が切断されました。ご理解いただければ幸いです。

しかし、今、この問題を取り除く方法がわかりません。1 つのオプションとして、URL のハッシュ値を次のように使用する必要があります#status

代替ソリューションを提供するか、このコードを変更するのを手伝ってください..

4

2 に答える 2

0

これにはセッションを使用できます...セッションにトークン値を保存します。

$_SESSION['token']=$your_token; 

このようにアクセス

<?php echo $_SESSION['token'];?>
于 2012-09-24T05:48:30.727 に答える
0

あなたが取ることができるいくつかの異なるオプションがあります。

  • 通話が接続されたときにサーバーへの POST 要求を介して、サーバーに通話状態を保存します。次に、クライアントがページを更新したら、着信 (既存の) 呼び出しをクライアントにプッシュします。
  • HTML5 localStorage などを使用して、呼び出し状態をクライアントに保存します。JS は、ページの読み込み時に localStorage 内の呼び出しの存在を確認する必要があります。この DB に呼び出しが存在する場合は、以前と同じエンドポイントに接続します。
于 2012-09-24T20:43:15.497 に答える