Переместите вызов Twilio в конференц-зал

Как мне одновременно переместить двух участников разговора в конференц-зал?

Я начал вызов через веб-SDK, поэтому вызов начался с элемента <Dial>.

Теперь у меня есть ParentCallSid и ChildCallSid для идентификации каждой стороны.

Но, используя библиотеку PHP Twilio, я не могу найти, как я могу одновременно переместить обе стороны на новый URL-адрес (который запустил бы конференцию).

И если я пытаюсь переместиться только по одному, в тот момент, когда я перемещаю одну сторону, Twilio вешает трубку другой стороне, вероятно, потому, что она была оставлена ​​одна на вызове. Партия, которую я переехал, успешно переносится в конференцию.

На Документы Twilio нет примера этого. Я попытался передать массив, передать строку, разделенную пробелами, связать метод calls(), но не повезло. Не удалось найти документацию по этому методу.


person Brayan    schedule 26.08.2016    source источник


Ответы (2)


Евангелист Twilio здесь.

Думаю, лучший вариант - просто поместить их в <Conference> в начале звоните, если можете. Сделать это довольно просто. Вы отбрасываете входящий вызов в конференции, а затем, используя REST API, инициируете исходящий вызов второй стороне. Когда они ответят, вы отправите их в ту же конференцию.

Если это не вариант, вам нужно будет использовать REST API для перенаправления каждой ветви вызова в конференцию. Redirect позволяет вам указать Twilio получить новый набор TwiML для выполнения для определенного идентификатора безопасности вызова. В вашем случае вы хотите, чтобы TwiML выглядел примерно так:

<Response>
    <Dial>
        <Conference>BrayansBestConferenceEvar</Conference>
    </Dial>
</Response>

Дополнительную информацию см. В разделе Изменение вызовов в реальном времени в нашей документации.

Надеюсь, это поможет.

person Devin Rader    schedule 26.08.2016
comment
Спасибо, Девин. Я знаю о втором варианте, это то, что я пытался сделать. Но я не могу перенаправить их обоих одновременно, используя библиотеку Twilio, и, как я уже сказал, если я выполняю одну ногу за раз, она отбрасывает другую. Попробую первый вариант, вроде бы все-таки проще было бы. Спасибо! - person Brayan; 26.08.2016
comment
Дай мне знать, как дела. Первый вариант def дает вам больше гибкости для перемещения ног вызова. - person Devin Rader; 26.08.2016
comment
Еще много работы, но это сработало, спасибо. Однако вопрос: у меня были пользователи в одном конференц-зале, затем я переместил только одну сторону, а другая, оставшаяся в конференции, не слышала музыку удержания. Разве не должна была воспроизводиться удерживаемая музыка, когда на конференции остается только один человек? Или играет только тогда, когда конференция еще не началась? Если да, то как я могу этого добиться? Еще раз спасибо. - person Brayan; 27.08.2016
comment
На самом деле я создам еще один вопрос, поскольку это другая тема. - person Brayan; 27.08.2016

Я недавно использовал их API, и если вы добавите паузу после начальной команды набора для подключения к вызову, то, когда вы дадите команду для перемещения дочернего вызова и родителя сразу после этого, вызов будет активен для перемещения. зарегистрироваться в их системе. Я использую для этого двухсекундную паузу.

person Middletone    schedule 22.07.2020