Я пытаюсь реализовать следующие действия на Twilio, но не уверен, почему я не могу сделать это правильно. Я инициировал звонок, используя стандартные процедуры Twilio из twilio.device.connect
, После инициирования звонка я обновляю звонок на новый URL, чтобы перевести его в режим удержания.
$client = new Services_Twilio($accountSid, $authToken);
$call = $client->account->calls->get($call_sid);
$call->update(
array(
"Url" => "http://localhost/voice.xml",
"Method" => "POST",
)
);
Теперь здесь вместо того, чтобы удерживать конечного пользователя, он просто отключает вызов и воспроизводит музыку на моей стороне. Почему это происходит?
Евангелист Твилио здесь.
Я бы посоветовал проверить, регистрирует ли Twilio какие-либо ошибки:
https://www.twilio.com/user/account/monitor/alerts
Если вы пытаетесь перенаправить Twilio наHTTP: // локальный«Это не сработает, потому что Twilio, очевидно, не знает, как связаться с localhost, работающим на вашей собственной машине.
Если вы хотите подключить веб-сервер, работающий на вашем локальном компьютере, к Интернету через общедоступный URL-адрес, воспользуйтесь замечательным инструментом под названием ngrok.
причина в том, что после <Play>
тег в вашем
«Http: //localhost/voice.xml» файл.. больше не будет исполняться TwiML.
Решение состоит в том, чтобы перенаправить звонок обратно в исходное состояние.