1

次のコードを使用して通話を開始しています。通話に応答がない場合は、このイベント (応答のない通話) をキャプチャして、別の電話番号に電話をかけたいと考えています。現在、以下のコードでは、電話が 1 回応答されない場合、3 回呼び出してから、StatusCallback URL をまったく呼び出さずにあきらめています。私は何を間違っていますか?(パラメーターを使用してブラウザーから URL を呼び出すことができます。)

ありがとう。

// 呼び出しを行う PHP コードの一部 $this->info('Calling providers:');

    $account_sid = ...
    $auth_token = ...
    $client = new \Services_Twilio($account_sid, $auth_token);
    try {
        $this->info ('Calling phone... ');
            // Make a call
            $call = $client->account->calls->create('+448008021203', '+'.$phone_to_call, 'http://xyz/order_msg.html', array(
                'Method' => 'GET',
                "StatusCallback" => "http://xyz/phone_events?alt_phone=".$alternate_phone,
                "StatusCallbackMethod" => "GET",
                "StatusCallbackEvent" => array("completed"),
                'Record' => 'false',
            ));
            $this->info('Called with :' . $call);
        }

    }catch (\Exception $e) {
        $this->error('Exception :'.$e->getMessage());
    }

// StatusCallback URL = http://xyz/phone_events PHP-Laravel コード

    $status =Input::get('CallStatus');
    $alternate_phone =Input::get('alt_phone');

    if (! empty($alternate_phone) && ! empty($status)) {

        if ($status != "completed" || $status != "queued") {
            /* start the next call */
            $account_sid = ...;
            $auth_token = ...;
            $client = new \Services_Twilio($account_sid, $auth_token);

            try {

                $client->account->calls->create('+448008021203', '+'.$alt_phone, 'http://xyz/order_msg.html', array(
                    'Method' => 'GET',
                    "StatusCallback" => "http://xyz/phone_events,
                    "StatusCallbackMethod" => "GET",
                    "StatusCallbackEvent" => array("completed"),
                    'Record' => 'false',
                ));

            } catch (\Exception $e) {
                $log->error('Phone Events Error: ' . $e);
            }
        }
    }
4

0 に答える 0