2017-02-21 8 views
0

現在の進行中のコールを変更する必要があります。 AがBを呼び出し、接続されて話している場合、BをいくつかのTwiml URLにリダイレクトし、Aからコールを切断する必要があります(JavaScript SDKの.diconnect()関数を使用して切断できます。 "発信者)。 Twilio docs(php SDK v4.x)の例を使用しています。Twilio特定のURLへの進行中のコールのリダイレクト

$call = $client->account->calls->get($callsid); 
$call->update(array(
    "Url" => "http://path-to-twiml.php", 
    "Method" => "POST" 
)); 

何も起こりません。 Conference Twilioオプションを使用せずに何とか何か必要なことを行うことは可能ですか?

PS:オプションを更新するために "Status" => "complete"パラメータを追加すると、コールを開始した人だけを切断し、他の人にはリダイレクトする必要があるため、コールの両側で切断されます。特定のtwiml url)

+0

あなたはどのようにしてコールSidをその関数に渡しますか? – philnash

+0

IのJavaScript SDKによってコールを作成するときに、私はそれをキャッチ: 'Twilio.Device.connect(関数(CONN){ \t \t \t \t \t \t callsid = conn.parameters.CallSid; \t \t \t \t \t}); ' を入力し、php to ajaxに送信してください。 –

答えて

0

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

あなたが投稿したコードから、あなたが変更しているcallsidが実際には発信者Bではなく発信者Aであると推測しています。シナリオでは、AとBはそれぞれ別個のcallsidを持っています。 「親」であり、発信者Bは「子」である。

子供のsidを取得するには、<Dial>動詞のstatusCallbackパラメータにURLを含めることができます。このURLは、発信者Bの応答時に要求されます。この要求のcallsidパラメータは、発信者Bのsidです。また、発信者Aのsidで、子レッグ(発信者B)と親レッグ(発信者A)を関連付けることができるparentCallSidというパラメータも受け取ります。

子SIDを取得したら、PHPライブラリを使用して変更できます。

希望に役立ちます。

関連する問題