goip что это такое
GoIP — серия GSM-шлюзов и SIM-банков производства от производителя Hybertone / DBL technology. Оборудование используется для прямых передач звонков между сетью GSM и VoIP.
Принцип работы
SIM-карту вставляют в GSM-шлюз (или SIM-банк, связанный с GSM-шлюзом) чтобы зарегистрировать её в GSM сети, одновременно с этим через программный коммутатор gsm-шлюз соединён с VoIP сетью. Таким образом можно реализовать перевод телефонного трафика между сетями GSM и VoIP каналами. Для передачи медиатрафика используются протоколы SIP и H.323. Оборудование GoIP совместимо со всеми основными IP PBX: Asterisk, Mera, Октелл, 3CX и т. д.
GSM-шлюз также обеспечивает значительную экономию благодаря изменению инфраструктуры и снижению затрат на техническое обслуживание по сравнению с ТСОП.
GoIP включает встроенную поддержку SIP и H.323 протоколов с гибкими настройками. Двухсторонняя аутентификация по паролю и поддержка траст-листов значительно уменьшает риск появления высоких счетов за связь, также поддерживается гибко настраиваемая система перевода звонков. В частности, GoIP-шлюз поддерживает группы нескольких устройств, с гибкими настройками больших групп GSM-шлюзов с разными номерами каналов.
Применение шлюзов GoIP:
Повсеместно используются системными интеграторами, провайдерами телефонии, организаторами Call-центров, большими и малыми компаниями, а также домашними пользователями IP-телефонии.
VoIP-GSM шлюзы GoIP могут успешно решать следующие задачи:
Совместное использование GoIP-шлюзов и GoIP SIM-банка позволяет организовать управление не обслуживаемыми устройствами и также уменьшить нагрузку на операции с SIM-картами, такие как: замена SIM-карты и пополнение счетов.
Преимущество удаленного доступа к SIM-картам:
Например, шлюз GoIP на удаленной площадке больше не будет требовать замены SIM-карт в устройстве или их повторной установки. Управление группой шлюзов GoIP может осуществляться удаленно эффективно и с минимальными затратами при помощи SIM-банка. Основные преимущества использования SIM-банка это — горячая замена сим карт в каналах шлюза (шлюзов) территориально уделенных от самого SIM-банка и других шлюзов для реализации функции перемещения SIM-карт между базовыми станциями GSM-оператора, автономная работа с поддержкой от 32 до 128 независимых соединений SIM-карт.
Отправка и приём SMS сообщений с помощью VoIP шлюзов GoIP и Yeastar
Так как мы занимаемся продажами VoIP оборудования, к нам часто обращаются с различными техническими вопросами. Иногда доходит до того, что клиенты просят примеры кода на конкретных языках программирования. Работа с SMS и интеграция их в бизнес процессы — как раз один из таких регулярных вопросов, поэтому и хочется остановится на нём и рассмотреть более подробно.
Почему GoIP и Yeastar
В действительности, я бы хотел рассказать еще и про OpenVox, но на хабре уже есть статья именно про их шлюзы, да и в наличии на момент написания этого материала их не было. Так же подобные шлюзы делает Dinstar, но обращений по этим шлюзам у нас так катастрофически мало, так что их я решил тоже не рассматривать.
GSM шлюзы GoIP производятся в Китае под брендами нескольких компаний и относятся к низшей ценовой категории, отчасти поэтому они самые популярные. Всё нижеописанное мною применительно к GoIP 4 фирмы DBL, в теории оно же должно работать и на шлюзах Hybertone, но ручаться за это не буду, так как возможны отличия в прошивках.
▪ Web интерфейс
Самый простой способ отправить SMS — это зайти на страничку шлюза, выбрать раздел Send SMS, указать линию, с которой необходимо отправить сообщение, номер получателя и непосредственно текст сообщения. Вариант простой, но годится разве что для теста, не более того. Однако есть возможность отправлять смски с помощью GET и POST запросов.
Для типа GET используем запрос вида:
http://192.168.1.190/default/en_US/send.html?u=admin&p=admin&l=1&n=89991234567&m=test
Отправка с помощью POST запроса — это тоже самое, что отправка через форму в web интерфейсе, отличается тем, что мы сами должны указывать индификатор SMS, в определенных случаях это может быть удобнее. Так же через POST мы можем отправить USSD запрос, что тоже может быть полезно.
Простой пример на perl с использованием фреймворка Mojolicious:
Для отправки USSD придется немного изменить запрос:
Для получения результата придется делать отдельный GET запрос статуса сообщений.
→ Статус сообщений
Отслеживать статусы необходимо хотя бы потому, что мы можем попытаться отправить сообщение в момент, когда линия занята отправкой другого сообщения и, как результат, ничего не выйдет. Плюс к этому, разработчики GoIP не стали заморачиваться с созданием отдельного средства получения результатов USSD запросов, а просто пишут их в виде расшифровок ошибок.
Статусы отправлений можно отслеживать по адресу:
http://192.168.1.190/default/en_US/send_status.xml?u=admin&p=admin
В ответ мы получим XML, в которой отображается статус одного последнего отправления на канал, у меня под рукой был GoIP 4, а у него единая прошивка с восьмым, поэтому в статусах 8 каналов, хотя физически их было 4:
▪ Протокол SMPP
SMPP (Short message peer-to-peer protocol) – специальный протокол, используемый для передачи SMS и USSD сообщений между клиентом и сервером. Это, наверное, единственный «нормальный» способ получать сообщения. Да, в web интерфейсе отображаются последние пять сообщений для каждого канала, но вариант периодически лезть на него и проверять, не появилось ли что то новое, я не могу отнести к адекватным.
Простейший пример получения сообщений с использованием библиотеки Net::SMPP :
С отправкой такая же история, если необходимо отправить SMS с конкретной SIM карты, то подключаемся с id нужного канала:
Параметр | Описание | Значения |
---|---|---|
Тип номера отправителя | 0x00 — Неизвестный (Unknown) 0x01 — Международный (International) 0x02 — Государственный (National) 0x03 — Сетевой Специальный (Network Specific) 0x04 — Номер Абонента (Subscriber Number) 0x05 — Алфавитно-цифровой (Alphanumeric) 0x06 — Сокращенный (Abbreviated) | |
source_addr_npi | Идентификатор плана нумерации отправителя | 0x00 — Unknown 0x01 — ISDN (E163/E164) 0x02 — Data (X.121) 0x03 — Telex (F.69) 0x04 — Land Mobile (E.212) 0x05 — National 0x06 — Private 0x07 — ERMES 0x08 — Internet (IP) 0x09 — WAP Client Id (его должен определять WAP Forum) |
dest_addr_ton | Тип номера получателя | 0x01 — Международный (International) |
dest_addr_npi | Идентификатор плана нумерации получателя | 0x01 — ISDN (E163/E164) (для номеров) 0x02 — National (для остального) |
data_coding | Определяет схему кодировки пользовательских данных короткого сообщения | 0x01 — IA5(CCITT T.50)/ASCII (ANSI X3.4) латинский алфавит 7 бит на 1 символ максимальная длина одного сообщения 160 символов 0x07 — Latin/Hebrew(ISO-8859-8) латинский алфавит 8 бит на 1 символ максимальная длина сообщения 140 символов 0x08 — UCS2(ISO/IEC-10646) для национальных алфавитов (например, русского) максимальная длина сообщения 70 символов |
Yeastar
Родина Yeastar, так же как и у GoIP – Китай, хотя, как мне кажется, в Yeastar стараются делать устройства с большей претензией на качество и удобство использования, чем их конкуренты. Это касается как физического, так и программного исполнения. Но и у них бывают огрехи. Так, например, документация не всегда поспевает за изменениями в новых прошивках, а в отдельных случаях в ней могут отсутствовать важные моменты.
▪ Web интерфейс
Отправлять и принимать сообщения можно через web интерфейс, в общем то, это стандартный способ для подобных железок. В шлюзах Yeastar этот интерфейс чем то отдаленно напоминает простенькие почтовые web морды — «папочки» Inbox и Outbox с незатейливыми фильтрами и поиском. В любом случае, это на голову выше чем то, что есть в GoIP, а главное хранятся не последние пять входящих сообщений для каждого канала, а значительно больше. Только, к сожалению, не понятно сколько, опять же в datasheet про это нет ни слова.
Так же как и в большинстве подобных железок, отправить сообщение можно с помощью GET запроса, что в общем не удивительно, это один из самых простых способов интеграции. Естественно, у Yeastar своя реализация со своими особенностями.
Для начала надо включить возможность отправлять SMS сообщения и USSD запросы. Для этого необходимо активировать «API Settings», если вы предпочитаете интерфейс на русском языке, то данный раздел будет называться «Настройки AMI» (правда очень логично?). Во вторых, необходимо поменять пароль по умолчанию, пока этого не сделаешь, авторизация не проходит, об этом опять же ни слова в документации.
После этих манипуляций мы можем использовать запросы для SMS и USSD соответственно:
Коротко о параметрах:
Главное отличие от GoIP: при отправке SMS с Yeastar нет необходимости контролировать занят канал или нет, наше сообщение ставится в очередь и как только канал освобождается оно будет отправлено. А с USSD запросами работа происходит синхронно, т. е. ответ мы получаем сразу и нет необходимости его где то потом искать. Минус только в том, что ответы нам приходят в виде plain text, а хотелось бы что то более подходящее: JSON или XML.
▪ Asterisk Managment Interface
Вся линейка шлюзов Yeastar построена вокруг Asterisk (программный сервер IP-телефонии от компании Digium), поэтому поддержка такого специфического протокола как SMPP отсутствует. Зато есть родной для Asterisk’a протокол AMI, работать с которым достаточно просто.
Для начала посмотрим как принимать сообщения:
Так же через AMI мы может отправлять SMS и USSD запросы:
По USSD думаю всё понятно, только не забываем, что каналы нумеруются с двойки. А по SMS есть небольшое уточнение: если нам судьба сообщения безразлична и статус отслеживать не надо, то после текста сообщения можно ничего не указывать. В противном случае, необходимо указать уникальный индификатор. Тогда, когда судьба смски станет известна, система отправит нам сообщение о её состоянии. Что-то такого вида:
В качестве заключения
Лично мне было бы удобнее работать со шлюзом Yeastar TG400 через AMI. С другой стороны, я не вижу каких-то больших проблем и в случае использования GoIP. О чем я сознательно умолчал: у каждого из производителя есть бесплатный программный SMS сервер, в случае GoIP чтобы его использовать потребуется PHP, Apache и MySQL, а в случае Yeastar – Windows. Подобные продукты больше подходят для рассылки одинаковых сообщений по заранее подготовленным базам номеров, а не интеграции с какими-то приложениями. Это и есть причина, по которой я их пропустил. Если кому-то интересно, на сайтах производителей должны быть соответствующие описания.
7 причин купить GoIP шлюз для терминации
Но это не все достоинства данного оборудования. Есть еще 7 причин купить GSM шлюз GoIP, о которых вам будет полезно узнать.
1. Подходит для бизнеса любого масштаба
2. Может работать совместно с SIM-банками
Шлюзы GoIP совместимы с SIM-банками на 128/256 карт, благодаря чему становится возможным удаленное управление оборудованием. VoIP termination providers могут на расстоянии загружать и выгружать SIM-карты, без необходимости физического доступа к шлюзам. Кроме того, сим-банк позволяет хранить большое количество карточек для терминации в одном месте, используя их поочередно.
3. Достаточно простой в настройке
Настройка gsm шлюза Hybertone требует минимальных временных затрат и элементарных технических навыков. Достаточно ознакомиться с мануалом к этому оборудованию, чтобы выполнить необходимые настройки.
Расширьте возможности оборудования GoIP, подключив его к сервису GoAntiFraud! Мы предоставляем проверенные инструменты для повышения эффективности GSM терминации. Наш сервис поможет продлить срок жизни SIM-картам, автоматизировать рабочие процессы и удаленно управлять GoIP оборудованием из любой точки планеты.
4. Может использоваться вместе с бесплатным SIM-сервером
На сайте Hybertone доступен для бесплатного скачивания SIM-сервер. Это специальное программное обеспечение, с помощью которого вы можете соединить сим-банк и GoIP шлюзы, расположенные в любых точках мира. Используя данный софт, становится возможным автоматизировать многие рабочие процессы в GSM терминации.
5. Может использоваться вместе с бесплатным SMS-сервером
Также на официальном сайте производителя Hybertone вы можете бесплатно скачать SMS-сервер. Это еще одна программа, полезная для терминации звонков. С ее помощью вы можете создавать смс-рассылки, то есть отправлять сообщения в больших количествах. Такая функция позволяет эффективно имитировать поведение человека в GSM сетях.
6. Работает на базе протоколов SIP и H.323
7. Совместим с сервисом GoAntiFraud
Сервис GoAntiFraud поддерживает шлюзы и SIM-банки производства GoIP, а также позволяет существенно расширить их возможности. Подключение устройств к нашему серверу займет у вас минимум времени, и вы сразу получите доступ к эффективным инструментам для терминации трафика. Вместе с сервисом GoAntiFraud вы сможете значительно повысить продуктивность ваших GoIP шлюзов.
GoAntiFraud предлагает комплексное решение для выгодной GSM терминации с оборудованием GoIP. Мы напрямую сотрудничаем с производителем Hybertone, поэтому у нас можно купить GSM шлюзы и SIM банки GoIP по самой низкой цене. Для новичков в сфере VoIP терминации у нас есть готовое решение NewBusiness, включающее необходимый комплект оборудования, софт для автоматизации работы и инструменты для защиты от SIM-блока.
GoIP – представляет собой шлюз между двумя сетями: GSM и VoIP. Его задача – построить мост между этими двумя сетями. Логика работы похожа на работу FXO шлюза. Только вместо аналоговой сети соединение происходит с GSM сетью.
GoIP способен выполнять схожие функции, но имеет некоторые отличия: •В большинстве случаев тарифы звонков на номера сетей GSM гораздо ниже, если звонок происходит внутри сети, а совершается не из традиционной сети. К тому же, часто приходится ожидать подключения к проводным линиям, в чем нет необходимости при использовании GoIP.
Последние версии программного обеспечения (ПО), как правило, включают в себя исправления ошибок и добавление новых функций устройства. Важно: некорректно проведенное обновление ПО, может повлечь за собой выход из строя устройства.
Прежде чем вставлять или извлекать SIM карту, отключите питание GoIP. В зависимости от конструкции корпуса GoIP, положение SIM карты может отличаться. Для GoIP-4/8 с фронтальной установкой карт, направление установки – внутрь срезом, вверх контактными площадками. Для GoIP на одну SIM карту с фронтальной установкой положение установки – внутрь срезом, вниз контактными площадками
Вы можете отправлять SMS через вэб-интерфейс, однако отправка ограничена только одним сообщением на один номер. Текст и номер получателя сообщения не сохраняются.
Для организации SMS рассылки необходимо воспользоваться специальным ПО SMS сервера, работающем под ОС Linux.
Никак. Старые SMS удаляются автоматически по мере поступления новых. Для чтения доступны последние 5 сообщений.
Длина сообщения составляет 140 байт. В GoIP используется 7-bit ASCII кодировка, которая позволяет передавать 160 символов в 140 байтах. Однако при вводе 16-bit unicode кодировки количество символов уменьшается до 70.
Это проблему можно попробовать решить использованием IE.
Могут быть две основные причины:
b)Дополнительное время может добавляться устройством в конце разговора. Чтобы уменьшить эту погрешность обновите ПО GoIP.
Для начала проверьте режим конфигурации. Различные SIP серверы могут обрабатывать звонки через GoIP по-разному. В случае, если сервер принимает звонок без регистрации, то, как правило, такой случай не вызывает проблем. Однако если регистрация на сервере требуется или это случай с необходимость регистрации в режиме Trunk Mode, сервер может проводить аутентификацию по SIP номеру, указанному в запросе INVITE. Если у вас включен режим передачи АОН «Use CID as SIP Caller ID» в настройках GoIP, то SIP номер в запросе будет заменен на номер из АОН GSM сети. В этом случае SIP сервер может отклонить такой вызов. Проверьте настройки сервера, чтобы выявить такую ситуацию и разрешите изменение этого параметра. Если это невозможно, то попробуйте изменить режим трансляции АОН на «Remote Party ID». Если и это не помогло, то отключите режим передачи АОН. Это значит, что вы не сможете увидеть номер звонящего на SIP терминале.
Смотри предыдущий ответ.
Предустановленный IMEI можно изменить на соответствующей странице веб-интерфейса. Описание формата в предыдущем ответе. Заметьте, что последняя цифра – 0. Заводская установка значения IMEI – пустое поле. Первое заполнение происходит при подключении SIM карты.
Уровень GSM сигнала показан на странице статуса в колонке GSM.
В таблице, приведенной ниже показана соответствующая информация. Рекомендуемый уровень сигнала для устойчивой работы шлюза – выше 15. Если уровень сигнала будет значительно ниже, то возможно пропадание голоса во время разговора. Если вы оказались в такой ситуации, то попробуйте выбрать другое место для установки шлюза или используйте выносную антенну. Если вы видите значение уровня сигнала 99, это может означать, что в этом месте отсутствует GSM сигнал или отсутствует регистрация SIM карты в сети.
Уровень сигнала
Значение
-133 dBm или меньше
Отсутствует или не зарегистрировано
Обновление ПО может решить эту проблему.
Проверьте ширину используемого сетевого канала в обоих направлениях. Требуемая ширина канала зависит от используемого кодека и различных других сетевых параметров. Не забывайте, что качество голоса в GSM сетях не гарантируется.
Уровень громкости может быть установлен для каждого канала по отдельности через веб-интерфейс по адресу: http:///en_US/gain.html Уровни громкости из VoIP в GSM и из GSM в VoIP регулируются Input Gain и Output Gain соответственно. Увеличение Output Gain означает, что GSM/PSTN абонент услышит увеличение громкости звука. Увеличение Input Gain приведет к тому, что VoIP абонент получит увеличение громкости. Замечание: необходимо учитывать тот факт, что изменение уровней громкостей влияет и на передачу DTMF, что в некоторых случаях может привести к ошибкам определения нажатия клавиш. Будьте осторожны с данными регулировками.
Нет. Шлюз не поддерживает протоколирование звонков через веб-интерфейс. Используйте SMS-сервер, если данная функция необходима.
Есть два способа сброса настроек на заводские установки.
1.Reset в ручном режиме a. Включите питание GoIP b. Нажмите и удерживайте кнопку RESET. Приблизительно через 10 сек. красный светодиод начнет быстро мигать. Дождитесь пока светодиод перейдет в обычный режим. Это будет значить, что сброс на заводские настройки завершен.
В зависимости от возможностей, предлагаемых GSM оператором, есть несколько вариантов:
3. Голосовой звонок в абонентскую службу. Не самый подходящий способ для тех, кто занимается эксплуатацией многоканальных систем, т.к. это занимает достаточно много времени.
Да. Для входящих (из сети GSM) и исходящих (из VoIP) можно использовать аутентификацию по номерам путем включения их в Whitelist. В каждый список можно включить до 15 записей.
Да, вы можете использовать Backup Server в режиме Single Server Mode. Если регистрация на основном сервере не удалась, то шлюз будет регистрироваться на резервном. В режиме Trunk Gateway mode вы можете указать до трех адресов. Оба механизма могут помочь избежать проблем с неработающим SIP сервером.
Да, это возможно. Для этого необходимо провести настройки в режиме Config. By Line или Config. By Group mode. Используйте префиксы, доступные в этих режимах. Обратитесь к инструкции.
Необходимость выбора канала присутствует в следующих режимах: Single Server mode, Config. By Group mode, или Trunk Gateway mode. Для равномерного распределения каналов используется автоматический алгоритм, который выбирает свободный наименее загруженный канал (по числу звонков за период времени).
Да, такое возможно. Настройка работает в режимах Single Server mode, Config. By Line mode или Config. By Group mode при разрешенных звонках CALL IN via GSM в секции Call Management. Поле Forward Number оставьте пустым.
Могут быть две возможные причины: 1. Для звонков VoIP—>GSM используется неверный формат номера. Используйте настройки Dial Plan для модификации номера в требуемый формат. Для международных звонков не забывайте о необходимости набора кода страны и кода региона. Кроме того, данная возможность должна быть разрешена сотовым оператором для той SIM карты, через которую проходит вызов. 2. В случае вызова с донабором необходимо убедиться, что GoIP получает сигнал дополнительного набора DTMF правильно. Если на этом этапе присутствуют ошибки, то номер будет набираться неверно. При использовании режима RFC2833 / SIP INFO на вызывающем оборудовании передаваемая информация согласуется с сервером. Для режима inband DTMF существует возможность ошибки считывания тонов в некоторых цифрах.
Да, GoIP может быть использован в групповом режиме GSM Group mode. Групповой режим реализует метод, при котором вызовы на один номер распределяются по нескольким возможным линиям. Сервисы типа колл-центра или службы обратного звонка (Call Back Service) используют такой метод, при котором требуется звонить на один номер для доступа к услуге. Для подробного описания GSM Group mode обратитесь к инструкции.
Что такое SIM-банк и как он работает
Такие устройства, как VoIP GSM шлюзы пользуются растущей популярностью среди российских компаний и предпринимателей. Сфера их применения достаточно широка – начиная с экономии средств компании на звонках по мобильным номерам, заканчивая различными SMS-рассылками. Потребности многих компаний не ограничиваются одним, даже самым мощным, шлюзом. При использовании же нескольких подобных устройств, особенно распределенных территориально, трудозатраты по их поддержке и администрированию возрастают значительно. Устройства под названием SIM-банки позволяют не только упростить работу с несколькими VoIP GSM шлюзами, но и добавить последним множество интересных возможностей. Сегодня, на примере SIM-банков SMB32 и SMB128 мы познакомимся и научимся работать с данным классом устройств.
Что такое SIM-банк
SIM банк — это устройство агрегации SIM карт в одном месте. Проще говоря, это устройство, в которое физически подключаются SIM карты, а связь SIM карты с GSM шлюзом осуществляется через IP сеть. Это значит, что GSM-шлюзы могут быть установлены где угодно – даже в разных городах и странах, в то время как сами SIM-карты будут всегда у вас под рукой. При этом, для оператора связи точкой регистрации SIM карты будет расположение того шлюза, с которым она сейчас работает, а не действительное её месторасположение.
Агрегация множества SIM-карт в одном устройстве – это основная функция SIM-банка. Но также он может выполнять и другие функции, например:
Какими SIM-банки бывают
Пожалуй, самыми популярными на сегодняшний день устройствами класса SIM-банк являются те, что выпускаются под названием GoIP. Есть модель SMB32 на 32 SIM-карты, а есть модель SMB128, соответственно, на 128 SIM-карт. У нас под рукой оказалась старшая модель и пара четырехканальных VoIP GSM шлюзов GoIP 4. Описанные в статье настройки будут также применимы и к младшей модели SMB32 и к другим моделям VoIP GSM шлюзов GoIP (на один канал, на восемь, на шестнадцать).
Слева — SIM-банк SMB32, справа — SIM-банк SMB128
А вот на что следует обратить внимание, так это на производителя устройств. По славной китайской традиции VoIP GSM шлюзы под названием GoIP выпускают как минимум две компании — Hybertone и DBL. Несмотря на то, что на аппаратном уровне эти устройства идентичны, они могут иметь различия в ПО. Все описанное в этой статье применимо к GSM шлюзам и SIP-банкам производства компании DBL. Гарантировать применимость данных настроек к устройствам Hybertone, я, к сожалению, не могу.
Для полноты картины стоит отметить, что также SIM-банки выпускает и другой производитель VoIP GSM шлюзов – компания Dinstar. У них есть модели на 64 и 128 SIM-карт, однако поработать с ними пока, к сожалению, не доводилось.
Режимы работы SIM-банка
SIM-банки GoIP могут работать в двух режимах: выступать в качестве сервера для GSM-шлюзов или работать совместно с бесплатным ПО SMB Scheduler Server. Первый вариант более простой, но имеет некоторые ограничения. Он подходит для тех компаний, которые используют один SIM-банк и не планируют передавать SIM-карты в нем между различными шлюзами. Работа с SMB Scheduler Server лишена этих ограничений – по заявлению разработчиков, поддерживается до 10000 SIM-карт, а также возможности их распределения как между каналами одного шлюза, так и между самими шлюзами.
Мы рассмотрим оба этих варианта работы – от простого к сложному. Но сначала необходимо зарегистрировать наши GSM-шлюзы на IP-АТС, в нашем случае это будет – Asterisk. Те, кто хорошо знаком и с VoIP GSM-шлюзами GoIP, и с Asterisk, могут просто пропустить следующий раздел.
Подключение шлюза GoIP к SIP серверу Астериск
Вначале совсем немного теории. GSM-шлюзы GoIP могут регистрироваться на SIP-сервере четырьмя различными способами:
В Астериске создаем SIP пир для нашего шлюза с параметром Line ID – 70064 (это последние пять цифр серийного номера шлюза, для удобства):
Как я уже говорил, GSM шлюз в нашем примере будет распределять исходящие вызовы по своим линиям, основываясь на префиксе номера. Но для этого нам надо, чтобы Asterisk добавлял эти префиксы к номерам, руководствуясь какой-то логикой. В нашем случае особой логики не будет – Asterisk будет по очереди добавлять префиксы 011, 012, 013 и 014 (которые соответствуют 1-4 линиям шлюза) пока не найдет свободную линию и вызов не пройдет. Играясь с маской номера, можно построить более гибкую логику выбора исходящей линии, основанную, к примеру, на том, какому оператору связи принадлежит вызываемый номер.
Теперь в web-интерфейсе GoIP переходим в раздел Configurations — Basic VoIP. Для опции Config Mode выбираем вариант Trunk Gateway Mode — ниже отобразятся соответствующие настройки для этого режима. В опции SIP Trunk Gateway1 указываем IP адрес нашего SIP сервера или его доменное имя. В опции Phone Number указывается имя пира, созданного на стороне SIP сервера, в нашем случае — это goip70064. Re-register Period(s) — указывается интервал времени в секундах для повторной регистрации на SIP сервере; мы указали 60 секунд, если указать 0 — то регистрация осуществляться не будет. Далее идёт опция Authentication ID, где указывается имя для аутентификации шлюза на SIP сервере и часто совпадает с именем SIP пира, в нашем случае — это опять же goip70064. Затем указывается пароль в опции Password, мы указали — pass70064. В последней опции, Routing Prefix — указывается префикс, по которому будут распределяться исходящие вызовы между GSM линиями. В файле extensions.conf в Asterisk мы использовали префиксы 011 – 014, поэтому именно их и следует указать здесь:
После основных настроек подключения, добавим настройки входящей и исходящей маршрутизации. Настройка входящей маршрутизации доступна в разделе Configuration — Call In. Здесь достаточно указать для каждой линии в опции Forwarding to VoIP Number — номер, который будет вызываться на IP-АТС. В нашем случае я указал просто 5555 для всех линий. Для того, чтобы просто проверить, что вызовы действительно приходят с наших GSM линий на SIP сервер, этого будет вполне достаточно.
Настройка исходящей маршрутизации осуществляется в разделе Configuration — Call out. Для каждой линии настраивается параметр Dial Plan, в котором нужно прописать правило, которое будет удалять префикс (тот самый префикс, который мы задали в разделе Configurations — Basic VoIP) в начале вызываемого номера:
Для нашего примера данных настроек будет вполне достаточно: мы сможем совершать звонки через линии шлюза GoIP, добавляя к вызываемым номерам соответствующий префикс, а так же принимать звонки с любой GSM линии, направляя их всех на внутренний номер 5555, заведенный на Asterisk. Аналогичные настройки мы произвели и для второго шлюза GoIP, который также будет работать с нашим SIM-банком.
SIM-банк в роли сервера
Подключение шлюза GoIP к SIM-банку
Теперь подключим наши GSM-шлюзы GoIP 4 к SIM-банку SMB128, работающему в режиме сервера. Для этого необходимо перевести SIM-банк в режим работы сервера и добавить учетные записи для каждого GoIP шлюза. В Web-интерфейсе SMB128 переходим в раздел Configurations — SIM Bank Settings и в опции Operation Mode выбираем вариант Use Buil-in SIM Server. В разделе GoIP Clients, добавляем необходимое количество учетных записей для каждого шлюза GoIP. Потребуется заполнить следующие поля:
Далее, подключаем шлюзы GoIP к SIM банку. В Web-интерфейсе шлюза GoIP переходим в раздел Configurations — Preferences. Переводим опцию Remote Server в состояние Enable, после чего появятся дополнительные опции. Remote SIM переключаем в состояние Enable — тем самым, указывая шлюзу использовать режим работы с удаленным SIM сервером. В опции Server указываем IP адрес SIM-банка или его доменное имя, в опции ID указывается идентификационный номер шлюза — тот самый Login ID, который мы использовали при заведении учетной записи в SIM банке. В опции Password указываем соответствующий пароль.
Правила распределения SIM-карт
Как уже было сказано, режим работы SIM-банка в качестве сервера имеет некоторые ограничения. Самое главное из них заключается в том, что каждому каналу каждого GSM-шлюза выделяется собственный диапазон SIM-карт, который не может использоваться другими каналами. То есть, весь диапазон SIM-карт разбивается на несколько непересекающихся множеств, каждое из которых назначается определенному GSM-каналу.
Выглядит это следующим образом: в разделе Configurations — SIM Bank Settings Web-интерфейса SIM-банка есть опция # of SIM slots reserved per line, в которой указывается количество SIM-карт, которое может быть использовано каждым из каналов. В нашем примере у нас есть два четырехпортовых шлюза GoIP4, итого – 8 каналов. Если в этой опции мы укажем, например, значение «3», то первому каналу первого шлюза будут доступны SIM-карты №1, №2 и №3, второму каналу первого шлюза — №4, №5 и №6, а первому каналу второго шлюза — №13, №14 и №15.
После того, как мы выделили каждому каналу его множество SIM-карт, требуется дать ответы на два вопроса: во-первых, какое событие должно произойти, чтобы SIM-банк заменил для GSM-канала текущую SIM-карту на другую, из назначенного каналу множества. Во-вторых, на какую именно SIM-карту при наступлении этого события следует произвести замену? Ответ на первый вопрос мы дадим в следующем разделе, а вот на второй вопрос отвечает опция SIM Schedule Mode. Доступны следующие методы выбора рабочей SIM-карты:
Условия переключения между SIM-картами
Теперь самое время настроить события, наступление которых влечет за собой переключение на другую SIM-карту или выполнение SIM-банков еще каких либо действий. Для этого в разделе Configurations есть два подраздела:
На наступление каждого из событий можно назначить следующие действия:
Мониторинг SIM-карт
Для мониторинга установленный в SIM-банке SIM-карт предназначен раздел SIM Slot Status. Данные в этом разделе представлены в виде таблицы, где каждая ячейка соответствует одной SIM-карте и содержит следующую информацию:
SIM-банк в роли клиента
Работа SIM-банка в качестве клиента возможна при использовании бесплатного ПО Scheduler Server. Scheduler Server — это программный сервер, который позволяет управлять сразу несколькими шлюзами GoIP и SIM банками SMB. На момент написания статьи актуальная релизная версия ПО 1.7.2 и доступна для скачивания по ссылке.
При использовании Scheduler Server становятся доступны следующие возможности:
Установка Scheduler Server
Требования к системе:
Как работает Scheduler Server
Главная роль сервера — связать SIM-карту в SIM-банке с линией GoIP шлюза. Работает это следующим образом:
Режим группового назначения
В отличии от режима работы SIM-банка в качестве сервера, где каждая группа SIM-карт может быть привязана только к определенному GSM-каналу, использование Scheduler Server дает намного больше возможностей по распределению SIM-карт. Работает это следующим образом: создаются группы, к которым можно привязать как любые слоты в SIM-банке, так и любые GSM-линии любого GSM-шлюза. Соответственно, распределение SIM-карт по GSM-линиям осуществляется внутри этих групп.
Однако есть еще одна особенность – каждый GSM-шлюз (именно шлюз, не линия) привязывается к зоне. Зоны создаются самим пользователем и по задумке разработчиков должны характеризовать реальное территориальное расположение шлюза. Нужно для реализации функции эмуляции передвижения SIM-карты: Scheduler Server настроен по умолчанию таким образом, чтобы постоянно переключать SIM-карты между шлюзами из различных зон.
В каких случаях происходит переключение SIM-карты? Увы, в случае с Scheduler Server работают только временные условия. Для каждой группы могут быть заданы следующие временные правила распределения SIM-карт:
Подключение устройств к Scheduler Server
Для начала с помощью Web-интерфейса Scheduler Server требуется завести учетные записи для всех GSM-шлюзов и SIM-банков, которые будут к нему подключены. Учетные записи для GSM-шлюзов заводятся в разделе GoIP. Нажимаем Add и заполняем следующие поля:
Учетные записи для SIM-банков создаются, соответственно, в разделе SIM-Bank. Для добавления нового устройства, требуется заполнить следующие поля:
Переходим к Web-интерфейсам наших устройств. Начнем с GSM-шлюза GoIP. В разделе Configurations — Preferences переводим опции Remote Server и Remote SIM в состояние Enable. В опции Server указываем IP адрес Scheduler Server или его доменное имя, в опции ID указывается идентификационный номер шлюза — тот самый GoIP ID, который мы использовали при заведении учетной записи в Scheduler Server, в поле Password указываем соответствующий пароль. Переключатель Net protocol переводим в состояние UDP.
Теперь зарегистрируем на Scheduler Server наш SIM-банк. В Web-интерфейсе SMB128 переходим в раздел Configurations — SIM Bank Setting и в опции Operation Mode выбираем Use External SIM Server, а в опции SIM Data Communications with выбираем SIM Server. Все остальные настройки аналогичны настройкам GSM-шлюза.
Настройка режима группового назначения
Проще всего осуществлять настройку группового назначения SIM-карт в разделе Web-интерфейса Configuration – Group. После того, как необходимое количество групп создано, к ним можно привязывать слоты SIM-банка – для этого необходимо кликнуть по ссылке SIM справа от названия группы. Для того чтобы управлять привязанными к группе GSM-каналами есть ссылка GoIP, а для управления расписанием – Scheduler.
Настройка режима фиксированного назначения
Если требуется одну или несколько SIM-карт «намертво» привязать к определенной GSM-линии определенного GSM-шлюза, то проще всего это сделать в разделе Monitor — GoIP Channel.
На этом мы заканчиваем наше краткое знакомство с основными функциями SIM-банков GoIP SMB и ПО Scheduler Server. Обладая этими базовыми знаниями, разобраться со всеми дополнительными возможностями будет уже значительно проще, чем делая это «с нуля». Для тех, кто хочет изучить вопрос еще глубже и/или получить больше функционала, я бы советовал обратить внимание на интерфейс GoAntiFraud. Это ПО сторонней компании, разработанное специально для управления и мониторинга устройствами GoIP и SMB. Распространяется оно по подписке и стоит, в общем-то, довольно прилично. Однако, имеется 7-дневный пробный период, который позволяет ознакомиться со всеми возможностями и принять решение о покупке.