как записывать входящие звонки с помощью twilio - PullRequest
0 голосов
/ 21 апреля 2020

Исходящие вызовы в Twilio можно записать, установив TwiML, переданный методу client.calls.create () API, чтобы иметь тег <Conference> с атрибут записи имеет значение true. Если для recordingStatusCallback задан URL-адрес, он отправит уведомление на этот URL-адрес, когда запись будет доступна.

Как это сделать для входящих вызовов?

Для мой указанный c номер телефона для голосовой и факсимильной связи. На сайте twilio.com для меня «Принять входящие» установлено значение «Голосовые вызовы», для параметра «Настроить с» установлено значение «Приложение TwiML», а для «Приложения TwiML» - значение «Мой». пользовательское приложение. Для этого приложения у меня установлен URL-адрес голосового запроса с заданным URL-адресом.

При входящем вызове в мое приложение TwiML отправляется HTTP-запрос POST, который отвечает <Enqueue>. Позже Резервирование инструкций конференции выполняется на стороне клиента javascript с ConferenceRecord , установленным в true и ConferenceRecordingStatusCallback , установленным на тот же URL, который мы использовали с recordingStatusCallback для исходящих вызовов.

Вот как выглядит полезная нагрузка моего запроса «Резервирование инструкции конференции»:

stdClass Object
(
    [url] => https://taskrouter.twilio.com/v1/Workspaces/.../Tasks/.../Reservations/...
    [method] => POST
    [token] => ...
    [params] => stdClass Object
        (
            [Instruction] => conference
            [From] =>
            [PostWorkActivitySid] =>
            [Timeout] => 10
            [To] =>
            [EndConferenceOnExit] => true
            [EndConferenceOnCustomerExit] => true
            [ConferenceStatusCallback] => https://my.domain.tld/twilio/conference
            [ConferenceStatusCallbackMethod] => POST
            [ConferenceStatusCallbackEvent] => start,end,join,leave,mute,hold
            [ConferenceRecord] => true
            [ConferenceRecordingStatusCallback] => https://my.domain.tld/twilio/conference/recording
            [ConferenceRecordingStatusCallbackMethod] => POST
            [ConferenceRecordingStatusCallbackEvent] => completed
        )

)

В результате этого Twilio вызывает URL ConferenceStatusCallback несколько раз, но URL ConferenceRecordingStatusCallback никогда не вызывается.

Есть идеи?

1 Ответ

0 голосов
/ 26 апреля 2020

Итак, почему бы не сработать метод запроса «Резервирование инструкции конференции», но вызов client.calls.recordings.create () сделал свое дело

...