Подключаемся к удаленному SIP серверу через Интернет
Для того, чтобы SIP сервер был доступен для подключения удаленных абонентов, нужно открыть к нему доступ извне. Это означает проброс портов доступа к SIP серверу на роутере, подключенном к Интернету:
ПРОБРОС, PORT FORWARDING, НУЖНО ВЫПОЛНИТЬ ДЛЯ ПОРТОВ МАРШРУТИЗАТОРА:
ПРИМЕР:
ОПРЕДЕЛЕНИЕ ВНЕШНЕГО IP АДРЕСА МАРШРУТИЗАТОРА (SIP СЕРВЕРА):
Воспользуйтесь одним из бесплатных сервисов для определения своего IP адреса в Интернете, например: http://www.whatismyip.com/
Обращаться к сервису нужно из той же локальной сети, в которой работает SIP сервер.
В качестве примера, определим внешний адрес SIP серввера как 200.100.10.10
НАСТРОЙКА ПРОЕКТА IRIDIUM ДЛЯ ПОДКЛЮЧЕНИЯ К УДАЛЕННОМУ SIP СЕРВЕРУ:
Настроим драйвер SIP в проекте iRidium для SIP:
Для этого существует дополнительный скрипт, который рассмотрим далее:
ОПРЕДЕЛЕНИЕ "EXTERNAL IP" ПАНЕЛИ УПРАВЛЕНИЯ ПРИ РАБОТЕ ЧЕРЕЗ ИНТЕРНЕТ:
Если External IP (параметр драйвера SIP в настройках iRidium) неизвестен, разговор с абонентом через удаленный SIP сервер работать не будет, т.к. сервер должен получить IP адрес панели для осуществления коммутации вызова. Панель должна передать свой внешний IP адрес в параметре External IP.
Определение адреса панели можно осуществить через приведенный далее скрипт.
Скрипт проверки внешнего адреса работает только при наличии лицензии с суффиксом Pro.
Скачать скрипт для переключения между локальным и внешним адресом SIP сервера
Скрипт нужно добавить в свой проект (через редактор скриптов, кнопка [JS] в редакторе):
и настроить его параметры (соответствуют параметрам драйвера SIP в редакторе):
Скрипт обеспечит получение внешнего IP адреса панели управления, на которой запущен. Определение адреса происходит автоматически, а применение новых настроек (подключаться к серверу через локальный или внешний адрес) - по нажатию на кнопки в проекте.
Кнопки нужно создать и привязать к ним команды ScriptCall(ExternalIP) и ScriptCall(LocalIP), вызывающие применение локальных или внешних настроек подключения:
ПРИМЕР:
SIP_Intercom_iPad_ExternalServer.irpz
ПРОБРОС, PORT FORWARDING, НУЖНО ВЫПОЛНИТЬ ДЛЯ ПОРТОВ МАРШРУТИЗАТОРА:
- 5060 (TCP) - основной порт подключения к серверу (для Mobotix T24/T25 - порт 5061). Cлужит для регистрации и получения команд от сервера.
- RTP порты (UDP) - см. проект iRidium и настройку сервера. Может быть диапазон 7078-9078 или 40000-41000. Через порты RTP производится передача голоса, поэтому их проброс нужно сделать обязательно
ПРИМЕР:
- SIP Server - эта настройка обеспечивает подключение к удаленному серверу через порт 12005 (маршрутизатор переадресует данные с порта 12005 на реальный порт сервера: 5060). Переадресация рекомендована в связи с тем, что многие сотовые операторы блокируют обмен данными через порт 5060 (стандартный порт SIP).
- SIP RTP - диапазон RTP портов для передачи голоса
- 192.168.0.41 - IP адрес SIP сервера в локальной сети
ОПРЕДЕЛЕНИЕ ВНЕШНЕГО IP АДРЕСА МАРШРУТИЗАТОРА (SIP СЕРВЕРА):
Воспользуйтесь одним из бесплатных сервисов для определения своего IP адреса в Интернете, например: http://www.whatismyip.com/
Обращаться к сервису нужно из той же локальной сети, в которой работает SIP сервер.
В качестве примера, определим внешний адрес SIP серввера как 200.100.10.10
НАСТРОЙКА ПРОЕКТА IRIDIUM ДЛЯ ПОДКЛЮЧЕНИЯ К УДАЛЕННОМУ SIP СЕРВЕРУ:
Настроим драйвер SIP в проекте iRidium для SIP:
- Host: внешний IP адрес маршрутизатора, к которому подключен SIP сервер
- Port: проброшенный на маршрутизаторе порт подключения к SIP серверу. По умолчанию это 5060. См. выше пример перенаправления 12005:5060 с целью избежать блокировки подключения на стороне сотового оператора
- Password - пароль подключения к серверу (для выбранного аккаунта)
- Caller (ID) Name - имя абонента (например: User)
- SIP ID - идентификатор абонента (может называться Caller ID, например: 102)
- First RTP Port - начало диапазона RTP портов голосового обмена
- Last RTP Port - конец диапазона RTP портов голосового обмена. Диапазон RTP портов указывается на случай, если на маршрутизаторе запрещены к использованию некоторые UDP порты. Этот диапазон необходимо пробросить на роутере, при работе через интернет
- Use SIP TONE - генерировать SIP сообщения тонального набора
- USE DTMF TONE - генерировать сообщения тонального набора
- Extrenal IP - укажите свой (панели управления) внешний IP адрес, если он СТАТИЧЕСКИЙ (если панель находится в сети, подключенной к маршрутизатору, имеющему статический внешний IP адрес). Если IP не статический:
Для этого существует дополнительный скрипт, который рассмотрим далее:
ОПРЕДЕЛЕНИЕ "EXTERNAL IP" ПАНЕЛИ УПРАВЛЕНИЯ ПРИ РАБОТЕ ЧЕРЕЗ ИНТЕРНЕТ:
Если External IP (параметр драйвера SIP в настройках iRidium) неизвестен, разговор с абонентом через удаленный SIP сервер работать не будет, т.к. сервер должен получить IP адрес панели для осуществления коммутации вызова. Панель должна передать свой внешний IP адрес в параметре External IP.
Определение адреса панели можно осуществить через приведенный далее скрипт.
Скрипт проверки внешнего адреса работает только при наличии лицензии с суффиксом Pro.
Скачать скрипт для переключения между локальным и внешним адресом SIP сервера
Скрипт нужно добавить в свой проект (через редактор скриптов, кнопка [JS] в редакторе):
и настроить его параметры (соответствуют параметрам драйвера SIP в редакторе):
Скрипт обеспечит получение внешнего IP адреса панели управления, на которой запущен. Определение адреса происходит автоматически, а применение новых настроек (подключаться к серверу через локальный или внешний адрес) - по нажатию на кнопки в проекте.
Кнопки нужно создать и привязать к ним команды ScriptCall(ExternalIP) и ScriptCall(LocalIP), вызывающие применение локальных или внешних настроек подключения:
ПРИМЕР:
SIP_Intercom_iPad_ExternalServer.irpz
Customer support service by UserEcho