Linux что такое sip

ТОП 5: SIP — Клиентов

Содержание

Автор — Андрю Мин (Andrew Min)

Gizmo5

Gizmo5 — одно из старейших SIP-приложений. Разработанный компанией Майкла Робертсона (Michael Robertson) SIPphone и ранее известный как Gizmo Project, Gizmo5 превратился из SIP-клиента в ведущий SIP-провайдер и конкурента противопригарного сервиса Skype. Он поддерживает передачу файлов, голосовую почту и конференции. За скромную плату вы также можете получить телефонный номер и кредит на исходящие звонки (аналогично Skype).

Поскольку Gizmo проприетарен, его нет в репозиториях Ubuntu, но вы можете установить его при помощи пакета libstdc++6, ссылку на его скачивание можно найти на странице: http://url.fullcirclemagazine.org/f6db14.

Ekiga

Ekiga, созданный Дамьеном Сандрасом (Damien Sandras), — это SIP/NetMeeting-клиент, установленный в Ubuntu по умолчанию. Изначально известный как GnomeMeeting, он включает в себя ряд возможностей для работы в локальной сети, таких как поддержка LDAP , Bonjour/ZeroConf. Он также поддерживает стандартные текстовые, голосовые и видео SIP-клиенты, сообщения о статусе, адресные книги и многое другое.

Ekiga установлен в Ubuntu по умолчанию. Чтобы установить его на другие операционные системы, используйте пакет «ekiga».

SIP Communicator

SIP Communicator получил (сомнительную) награду как единственное Java-приложение в этом обзоре. Несмотря на это, он отлично работает в среде Gnome и имеет не только стандартные возможности SIP-клиентов, но также поддерживает Jabber, AIM , Yahoo, MSN и, в тестовом режиме, Facebook. Он также имеет невероятные возможности настройки, в том числе кодирования, расширенные оповещения и огромное число плагинов.

Чтобы установить SIP Communicator, скачайте deb-пакет, находящийся на странице http://url.fullcirclemagazine.org/70453d.

QuteCom

Для установки QuteCom используйте сторонний репозиторий Launchpad перейдя по ссылке http://url.fullcirclemagazine.org/1885a6.

Twinkle

Если вы один из тех пользователей Kubuntu, кто ищет альтернативу QuteCom, попробуйте Twinkle (я пользуюсь именно им). Его автор Мишель де Боэр (Michel de Boer) включил в программу множество возможностей, включая интеграцию с KAddressBook, расширенную обработку звонков, настраиваемые уведомления, шифрование, передачу файлов и даже интерфейс командной строки. Также частично поддерживается оповещение о присутствии и простая адресная книга. К тому же Twinkle отличный VoIP-клиент, основанный на Qt.

Для установки Twinkle используйте пакет `twinkle` из репозитория `universe`.

Источник

Взаимодействие клиентов SIP. Часть 1

Месяц назад я начал свое знакомство с IP-телефонией, а именно с Lync и Asterisk. И заметил следующую картину: в сети очень много интересных статей по практической стороне вопроса (как и что делать) и очень мало внимания уделено теории (в конце статьи приведены ссылки). Если Вы хотите разобраться с SIP, то извольте либо читать RFC 3261, либо одну из «этих толстых книг». Это, естественно, полезно, но многим хочется в начале изучить некую выжимку, а уж потом бросаться в омут с головой. Эта статья как раз для таких людей.

Чтобы не перегружать читателя, я решил разбить статью на две части. В первой части мы рассмотрим работы протокола SIP при взаимодействии двух клиентов.

Простое взаимодействие клиентов

Взаимодействие клиентов в рамках SIP чаще всего осуществляется в виде диалога.

Читайте также:  Windows отключает видеокарту ошибка 43

Диалог – это равноправное взаимодействие двух User Agent (UA) в виде последовательности SIP-сообщений между ними. При этом, существуют запросы, не образующие диалогов. Однако обо всем по-порядку.

Ниже приведен пример простого взаимодействия между двумя устройствами с поддержкой SIP:

Петр хочет начать обмен сообщениями с Иваном, для этого он посылает INVITE-сообщение с данными о типе сессии (простая, мультимедиа и т.д.). Сообщения имеют следующий формат: стартовая строка, одно или несколько полей заголовка, пустая строка, обозначающая конец полей заголовка и необязательное тело сообщения.

Стартовая строка содержит метод, Request-URI и версию SIP (актуальная – 2.0). Request-URI – это SIP-адрес ресурса, которому посылается запрос.

Поля заголовков имеют следующий формат: :

Первая строка начинается с заголовка Via. Каждое SIP-устройство, создающее или пересылающее сообщение, добавляет свой адрес в поле Via (как это происходит, я планирую показать в следующей части статьи). Обычно адрес представляет собой имя хоста, которое может быть разрешено с помощью DNS-запроса. Поле Via содержит версию SIP, знак “/”, пробел, транспортный протокол (UDP, TCP, TLS, SCTP), двоеточие, номер порта и branch – идентификатор транзакции. Ответы на этот запрос будут содержать такой же номер транзакции.

Чаще всего, значение branch начинается с “z9hG4bK”. Это значит, что запрос был сгенерирован клиентом, поддерживающим RFC 3261 и параметр уникален для каждой транзакции этого клиента.

Следующее поле, Max-Forwards, содержит относительно большое целое число. Каждый сервер SIP, который пересылает сообщение, уменьшает это число на единицу. Данное поле обеспечивает простой механизм обнаружение петель (loop).

Следом идут поля From и To, которые описывают отправителя и получателя запроса. Важно, что SIP-запросы маршрутизируются исходя из Request-URI, указанного в стартовой строке (см. выше). Это объясняется тем, что поля From и To могут быть изменены при пересылке. Если используется отображаемое имя (например, Ivan Ivanov), то SIP URI помещается внутрь пары угловых скобок. Параметр tag в поле From генерирует отправляющая сторона. В свою очередь принимающая сторона поместит свой tag в поле To.

Поле Call-ID – идентификатор вызова. Совокупность tag’ов из полей From и To и Call-ID однозначно идентифицируют данный диалог. Это необходимо, так как между клиентами может идти сразу несколько диалогов.

Следующее поле, Cseq, содержит порядковый номер запроса и название метода. В данном случае – INVTITE. Номер увеличивается с каждым новым запросом.

Поля Via, Max-Forwards, To, From, Call-ID и CSeq составляют минимальный необходимый набор полей заголовков SIP-сообщения.

Для сообщения INVITE также необходимо поле заголовка Contact, в котором содержится SIP URI, относящийся к коммуникационному устройству отправляющей стороны. Это поле используется, чтобы из всех устройств, которыми одновременно может пользоваться Петр, ответ был отправлен именно на данное устройство. Обратите внимание на значения полей From и Contact. Первый раз я не заметил разницу:

В сообщении присутствует опциональное поле Subject, то есть тема сообщения. Некоторые SIP-клиенты могут выводить значение этого поля на экран. Для маршрутизации и идентификации диалога поле не используется и может быть произвольным.

Поля Content-Type и Content-Length отвечают за описание тела сообщения. В данном случае будет использоваться Session Description Protocol (SDP). Размер сообщения вычисляется с учетом символов перевода строки:

Детальное описание работы протокола SDP заслуживает отдельной статьи, поэтому ниже приведена только краткая расшифровка:

Читайте также:  Mac fan control mac os catalina

В ответ на INVITE SIP-клиент Ивана отправляет два сообщения: 180 Ringing и 200 OK. Первое сообщает, что на стороне Ивана SIP-клиент подает звуковой сигнал звонка, второе – подтверждает установку диалога. Разберемся с каждым из них.

Так будет выглядеть сообщение 180 Ringing:

Бледным выделен текст, который не изменился по сравнению с сообщением INVITE.

Обратите внимание на поля заголовков To и From. Несмотря на то, что данное сообщение идет со стороны Ивана, значения полей остаются такими же, как были в первоначальном запросе (от Петра к Ивану). Это объясняется тем, что данные поля определяют направление запроса, а не сообщения.

Строка Via также перекочевала из исходного запроса, в конце строки добавлен параметр received этот параметр содержит IP-адрес, с которого пришел запрос. Обычно это адрес, который может быть получен путем разрешения URI, содержащегося в Via.

Как я и обещал, в поле To добавился tag, идентифицирующий диалог. Все последующие сообщения в рамках диалога будут содержать неизменные значения tag.

Наконец, в поле Contact содержится актуальный адрес Ивана.

Так выглядит сообщение 200 ОК, которое отправил SIP-клиент Ивана:

Думаю, смысл всех полей, относящихся к протоколу SIP теперь ясен.

В ответ на 200 ОК клиент Петра отправляет подтверждение:

Данное сообщение подтверждает, что клиента Петра успешно получил ответ от клиента Ивана. Оба клиента договорились о параметрах меди-сессии, которая будет осуществляться по протоколу RTP.

Обратите внимание, что номер последовательности CSeq все еще равен единице, но в качестве метода уже стоит ACK. Параметр Branch в поле Via содержит новый идентификатор транзакции, так как ACK, отправляемый в ответ на 200 OK считает новой транзакцией.

Теперь давайте рассмотрим, как происходит завершение медиа-сессии. Клиент Петра посылает BYE-запрос для завершение сессии:

Получив запрос на завершение сессии, клиент Ивана посылает подтверждение:

Мы рассмотрели простой вариант работы протокола SIP. Обратите внимание, что в разные моменты времени клиенты Ивана и Петра выступали то в роли сервера, то в роли клиента, поэтому во всех SIP-клиентах должна функционировать как серверная (User Agent Server или UAS), так и клиентская часть (User Agent Client или UAC).

В следующей статье я планирую рассмотреть взаимодействие клиентов SIP с использованием Proxy-сервера и регистрацию клиентов на Proxy-сервере.

Источник

Лучшие SIP-клиенты для Linux: ТОП-10

При помощи офисной voip или своей производственной АТС можно уменьшить расходы, затрачиваемые на связь, улучшить голосовое общение с клиентами.

Остановимся подробнее на 10 популярных программах на базе linux.

Ekiga

Эта программа была разработана Дамьеном Сандрасом. Представляет собой программу SIP/NetMeeting-клиента, по умолчанию установленную в Ubuntu. Ранее программа была известна под названием GnomeMeeting.

  • поддерживает sip-телефонию;
  • есть адресные книги;
  • с ней можно работать в локальной сети;
  • поддерживает отправку голосовых, стандартных текстовых сообщений.

Для установки на прочие операционные системы стоит открыть пакет «ekiga» для инсталляции.

Asterisk

Для телефонии для бизнеса этот SIP-сервер является одним из наиболее популярных. Он был разработан в 1999 году. С его помощью хотели заменить дорогостоящие мини-АТС.

Этот сервер поддерживает линукс. Перечислим его плюсы:

  • с его помощью можно проводить видеосеансы;
  • поддерживает функционирование с обычной телефонией;
  • чтобы не допустить прослушивание сервер способен шифровать звонки;
  • интегрируется в CRM-системы.
Читайте также:  Windows 10 не устанавливает антивирусы

При помощи дополнительных программ его функционал можно расширить. SIP-сервер способен взаимодействовать с различными протоколами, ему под силу решить сложные задачи.

Сложность является его ключевым минусом.

Он отличается наличием удобных web-интерфейсов, однако они не упрощают пользование SIP-сервером.

SIP-сервер 3CX Phone System

Этот сервер востребован при телефонизации фирм с любой численностью сотрудников. К примеру, он пользуется успехом у корпораций, имеющих десятки подразделений.

Также виртуальные номера может использовать небольшая фирма.

С помощью этого SIP-сервера можно осуществлять следующие функции:

  • использовать как call-центр;
  • конференцсвязь;
  • он интегрирован в CRM.

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

SIPXecs

Этот сервер функционирует на Linux. Данная софтовая атс позволяет решать множество задач.

Перечислим ее плюсы:

  • использование веб-интерфейса для управления телефонией;
  • можно удерживать звонки;
  • ожидание звонков;
  • быстрый дозвон;
  • обработка и перевод звонков;
  • возможность использования многоканальной связи;
  • звонки заграницу.

Из минусов можно отметить, что работает исключительно с SIP.

Linphone

У этого кроссплатформенного программного клиента есть свои плюсы.

  • русскоязычный графический интерфейс;
  • подходит для операционных систем Linux, MAC OS, OC Android, Microsoft Vista, -XP, -Windows.

Если использовать на базе Linux, то можно пользоваться аргументами командной строки для управления Linphone, интерактивным клиентом Linphonec.

У этой программы не только русскоязычный интерфейс, он многоязычный.

В качестве основы для графического интерфейса взят GTK.

Из минусов можно отметить, что немного трудно разобраться с управлением звонками.

Удобный корпоративный софтфон.

Укажем его плюсы:

  • поддерживает видеосвязь;
  • предоставляет функции для пользователей в сфере бизнеса;
  • есть возможность централизованно контролировать звонки;
  • обеспечение безопасности;
  • поддерживает MAC, Windows, Android, Blackberry, Linux, iPhone;
  • можно пользоваться бесплатно.

Корпоративный Bria предоставляет широкий спектр услуг для бизнеса.

Zoiper

Перечислим преимущества этого софтфона:

  • можно пользоваться бесплатно;
  • если оплатить платную версию, то она без ограничения функциональных возможностей;
  • поддерживает Linux, iPhone, Windows, WP8, MAC, Windows.

При помощи этой бесплатной программы можно звонить в любую страну.

Расскажем об особенностях этой программы:

  • есть ограниченная по функционалу бесплатная версия;
  • можно воспользоваться более полной платной версией;
  • можно передавать файлы;
  • поддерживает шифрование;
  • есть чат;
  • поддерживает Linux, MAC, Windows.

Это довольно простая программа, в ней доступен индикация статуса.

Jitsi

Укажем преимущества этой программы:

  • информативный минималистичный интерфейс;
  • простые окна конфигурации;
  • разнообразные настройки;
  • поддерживает видеовызовы, голосовые вызовы;
  • поддерживает Google Hangouts, ICQ;
  • можно передавать файлы;
  • записывать разговоры;
  • использовать общий рабочий стол.

Также плюсом этой программы является возможность использования удобного сервиса для организации видео-, голосовых конференций. К сожалению, для мобильных устройств нет версий.

Эта программа работает с Linux, Windows, Mac OS, поддерживает русский язык.

Yate Client

Это приложение поддерживает русский язык. Перечислим другие его плюсы:

  • аскетичный вид;
  • нет излишеств;
  • достаточно просто разобраться в том, как оно работает;
  • удобные окна;
  • можно подключиться к «Facebook»;
  • оперативно работает служба поддержки.

У этого интерфейса простая настройка программы. Если добавлять дополнительные аккаунты, которые требуют web-авторизации, то могут возникнуть трудности.

Как видим, на базе Linux можно выбрать подходящее приложение. Есть варианты с русскоязычным интерфейсом.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Оцените статью