SIP-шлюзы

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску

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

  • sipout.net
  • sipnet.ru - плохо относится к выполнению автоматических звонков, может за это блокировать.

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

Если вы пишете свой скрипт с использованием нашего COM-объекта, номер для большинства SIP-шлюзов следует набирать в формате:

  <номер телефона>@<адрес SIP-шлюза>

Дополнительные параметры настройки SIP

Call Office позволяет указывать дополнительные параметры протокола SIP. Параметры указываются в 32-битной версии реестра в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Wentor\Call Office\SIP (если раздел не существует, его нужно просто создать). В этом разделе можно указывать следующие параметры:

  • BindToAddress (строка) - указать ip-адрес интерфейса через который нужно отправлять запросы к SIP-шлюзу. Эта возможность необходима, если на вашем компьютере несколько ip-адресов и запросы к SIP-шлюзу нужно отправлять через указанный адрес.
  • StunServer (строка) - позволяет задать имя STUN-сервера. STUN-сервера используются для автоматического определения топологии сети. Это позволяет автоматически определить маршрут до SIP-шлюза через сетевые устройства различного вида (NAT, шлюзы, маршрутизаторы). Этот параметр следует указывать, если программа не получает ответа от SIP-сервера. В качестве значения можно указать общедоступный STUN-сервер: stun.ekiga.net.
  • LineURL (строка) - позволяет задать идентификационную информацию клиента в стандартном виде: "<CallerId>" <sip:<user>@<ip>;transport=UDP>
  • Proxy (строка) - позволяет указать адрес прокси-сервера.
  • TCPPort (DWORD) - позволяет указать номер порта TCP.
  • UDPPort (DWORD) - позволяет указать номер порта UDP.
  • EnableDNS (DWORD) - использование DNS (0 - запрещено, 1 - разрешено (по умолчанию)).
  • UseRport (DWORD) - позволяет указать использование rport (0 - запрещено, 1 - разрешено).
  • WaitForAnswer (DWORD) - позволяет включить программное распознавание голосового ответа абонента (0 - выключено, 1 - включено). Некоторые SIP-шлюзы сигнализируют о том, что абонент снял трубку сразу после набора номера. Как правило, это связано с особенностями настройки шлюза или его подключения к телефонной сети. В этом случае, программа всегда будет определять, что трубка снята, сразу после набора номера не дожидаясь реального ответа абонента. Лучшим способом решить эту проблему является правильное подключение или настройка шлюза, но в некоторых случаях это невозможно. Именно для таких случаев и предназначен этот параметр. При ненулевом значении, после набора номера программа будет определять ответ абонента программным способом.
  • AudioCodec (строка) - позволяет задать аудио кодеки и порядок их использования. Кодеки задаются в виде строки разделенной запятыми, например: pcma,pcmu,speex,gsm.

Помимо указания параметров в реестре их можно указать в строке открытия устройства в виде:

 <имя параметра>=<значение>;
 например: SIP\SIP;BindToAddress=192.168.0.1;