SIP и Java, с чего начать и с чего? - PullRequest
13 голосов
/ 16 апреля 2010

Я хочу реализовать протокол SIP в Java и хотел бы иметь возможность создавать разных клиентов (5 или более) и подключать их к прокси-серверу. Это все для целей тестирования, поэтому я хотел бы хорошо видеть, что происходит на довольно низком уровне.
Сначала клиенты должны иметь возможность общаться через текст, а затем, возможно, также с помощью аудио. (Если я когда-нибудь доберусь до этого)

Я уже немного прочитал о библиотеках JAIN и что я понял из этого, что они не очень хорошо подходят для серверной части? Я также не нашел примеров прокси-серверов, учебных пособий, использующих JAIN.
Я также нашел эту книгу SIP Servlet Tutorial , в прошлом я использовал HTTP-сервлеты, но я должен предпочесть сервлеты, JAIN или ...?

Я совершенно новичок в SIP, поэтому не знаю, с чего начать и что выбрать в сочетании с Java.

Ответы [ 2 ]

13 голосов
/ 23 апреля 2010

Если целью является включение вашего SIP-стека в производственное приложение, то я бы посоветовал вам сделать все возможное, чтобы не писать свой собственный с нуля. Не будет преувеличением сказать, что вам потребуются годы, чтобы ваш стек работал гладко со всеми различными SIP-устройствами и серверами. Если у вас очень узкий набор требований к интеграции, возможно, вы могли бы сделать это быстрее, но это все равно было бы большим делом.

Вот хороший список доступных SIP-стеков . Если, с другой стороны, вы решили реализовать свой собственный старт, просматривая список SIP RFC . RFC 3261 - это спецификация основного протокола, но она была обновлена ​​рядом других RFC, поэтому вам потребуется реализовать как минимум полдюжины только для базовой функциональности SIP. После этого, если вы хотите поддерживать такие вещи, как передачи, присутствие, ожидание сообщений и т. Д., Тогда это еще больше для реализации RFC. Вот этот список стеков SIP снова.

5 голосов
/ 27 февраля 2011

Платформа Sip Servlets поможет вам создавать конвергентные приложения, то есть приложения HTTP и SIP. Устройство конечного пользователя Sip будет взаимодействовать с приложением Sip Servlet. Например, приложением Sip Servlet может быть B2BUA или SIP Proxy.

Я бы посоветовал вам попробовать Mobicents Sip Servlet , представляющий собой законченную платформу Sip Servlet поверх Java-сервлетов, сертифицированную по спецификации JSR289 и использующую Jain Sip для стека SIP.

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

Выбрав платформу для начала работы, вы можете сосредоточиться на бизнес-логике, и вам не придется возиться с деталями

...