Как будет выглядеть SIP-запрос при приглашении большего количества клиентов к разговору - PullRequest
1 голос
/ 30 июня 2010

Я закончил свой SIP-клиент, и он работает, пока дело доходит до одного на один или x на x, если участники определены в начале вызова.

Я хотел быприкрепить вызывающего или вызывающего абонента к середине вызова, я понимаю, что основная проблема заключается в реализации присоединения к сеансу СМИ, но мне нужно сообщить новому участнику подробности всех участников, как это было бы лучше всего реализоватьэто?

Спасибо, Адам.

Ответы [ 2 ]

2 голосов
/ 30 июня 2010

Как говорит ChrisW, RFC 4353 ваш друг здесь.

Прежде чем вы на самом деле реализуете логику конференц-связи, вам нужно несколько кусочков. Вам необходимо поддерживать заголовок Join , метод REFER (основанный на пакете событий . Вам также может понадобиться заголовок Replaces и поддержка перевод вызова .

RFC Call Control покажет вам фактические потоки вызовов при добавлении / удалении участников и т. Д.

Кроме того, взгляните на соответствующий раздел Руководства автостопщика по SIP.

И, как всегда, список sip-developers является хорошим источником помощи.

2 голосов
/ 30 июня 2010

Я не думаю, что вы говорите новому участнику детали всех участников; вместо этого я думаю, что у вас есть участники, разговаривающие с медиасервером, который смешивает мультимедиа из нескольких коллов:

  • Либо один из первоначальных участников (тот, который приглашает третью сторону) выступает в качестве медиасервера: поэтому этот UAC имеет два отдельных вызова, по одному для каждой из двух других сторон, и смешивает мультимедиа.

  • Или исходные участники переносятся на отдельный выделенный медиа-сервер: который впоследствии выполняет 3 вызова (по одному на каждую из трех сторон) и смешивает медиа.


Edit:

Вот пример первого метода: Трехсторонняя конференция (присоединения третьих сторон)

Вот примеры последнего метода: Структура конференц-связи с протоколом инициации сеанса (SIP)

...