Онлайн сервис заказа такси. Часть 48. Внедрение GSM шлюза для СМС. Часть V

Эпопея с GSM оборудованием продолжается. Напомню, что основная задача — снижение расходов на СМС сообщения, которое планирую добиться отправкой СМС сообщений не через сторонних операторов, а через собственные каналы.

Работа со сторонними сервисами для отправки СМС создает ряд проблем.
При использовании прямых каналов — очень высокая стоимость СМС. Даже не смотря на то, что у меня хорошие тарифы на SMSC

smsc

Посчитайте, даже если использовать тарифы с платной регистрацией имен, все равно, средняя стоимость 1 СМС будет превышать ₽1, а при 3.000 СМС в сутки — это почти ₽100.000 в месяц!

Да, есть «непрямые каналы», но что это такое, я описывал в одной из своих предыдущих статей про внедрение GSM шлюза. Основная проблема — непонятки с доставкой, а так же очень большой срок доставки СМС, который зачастую достигал нескольких минут, что является недопустимым для активационных СМС. Поэтому, я решил купить оборудование и для отправки использовать SIM карты операторов сотовой связи.

Однако есть проблема — я нахожусь в Москве, где тарифы сотовых операторов на СМС крайне высокие. Минимальная стоимость получалась на уровне 20 коп. и единственное решение — это установка оборудования не в Москве. Однако, в этом случае возникают проблемы в необходимости администрировать это оборудование. В итоге было решено расширить техническую и программные части.


Прежде всего я привел в порядок свою «коммуникационную стойку». Раньше это выглядело вот так

commu_1

После наведения порядка, выглядеть стало так

commu_2

Прямоугольная коробочка с кучей лампочек — это SIM банк.

СИМ-Банк. Краткое описание что это такое.
SIM банк — это устройство агрегации SIM карт в одном месте.
Проще говоря, это устройство, в которое физически подключаются SIM карты, а связь SIM карты с GSM шлюзом осуществляется через IP сеть. Это значит, что GSM шлюзы могут быть установлены где угодно – даже в разных городах и странах, в то время как сами SIM карты будут всегда у вас под рукой. При этом, для оператора связи точкой регистрации SIM карты будет расположение того шлюза, с которым она сейчас работает, а не действительное её месторасположение.

Агрегация множества SIM карт в одном устройстве – это основная функция SIM банка. Но также он может выполнять и другие функции, например: централизованное управление SIM картами;
+ горячая замена / установка SIM карт;
+ автоматическое распределение SIM карт между GSM шлюзами по временным правилам;
+ автоматическая замена SIM карт на GSM шлюзах при наступлении определенных событий или по временным критериям.

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

Далее, помимо 8 канального GSM шлюза, которым я пользовался раннее, был куплен дополнительно 1 канальный.

goip_1


Для взаимодействия этого оборудования друг с другом, было принято решение использовать их родное ПО, под названием SIM Server, которое объединяет SIM банк с GSM шлюзом и управляет SIM картами.
Другое ПО, которое используется в связке — это SMS Server, через которое происходит управление отправкой СМС. С моего сервера СМС передаются через API на SMS Server.

Итоговая схема выглядит вот так:

schema_gsm


Итак, куплен дополнительно 1 канальный GSM шлюз, Goip 1. Через Aliexpress цена вопроса около ₽3.400. Но не стал дожидаться, нашел на Avito за ₽5.000 и купил его. Все настроил и субботним утром поехал в Калугу. В принципе, еще один шлюз мной заказан. Установлю его в другом городе, в качестве резервного.

По приезду, попытался купить там местные симки Tele2 и был удивлен тем, что в городе нет обыкновенных салончиков сотовой связи, в которых обычно можно без паспорта купить SIM карты. Вообще. Ни одного! Ритейлеры вытеснили всех! Влез на Avito, нашел продавца и через 10 минут был уже у его подъезда. Ценник он заломил неприличный, но деваться некуда, отдал ₽2.500 за 20 штук, тариф «Оранжевый», без абонентской платы.

Далее, заехал к знакомым, подключил GSM шлюз, убедился что SIM Server и SMS Server его видят и поехал обратно в Москву. Вернувшись, установил SIM карты в SIM банк, заранее подключив на них необходимые тарифные опции, настроил алгоритмы замены SIM карт и ушел спать.

Встав утром, часов в 12 (а лег после 4-х утра), обнаружил, что GSM шлюз отвалился. Позвонил знакомым, оказалось, что домой они вернутся после работы, в общем, оставалось только ждать. После того, как они вернулись, передернули свой роутер, GSM шлюз появился на некоторое время, затем вновь пропал. Расспросив подробнее о их роутере понял, что у них стоит шлак от Ростелекома, который они передергивают по 2 раза в день, понял, что так дело не пойдет.

В итоге пришел к тому, что вместе с GSM шлюзом должен в комплекте идти источник интернета, надежного. Принял решение докупить роутер, с встроенным LTE. От бюджетного варианта, «роутер + USB модем» отказался, так как надежность такой связки сомнительна. После изучения актуальных моделей остановился на Huawei B315S

huawei_b315S-22

Примерно к 11 вечера он был уже у меня. Далее, встал вопрос, как коннектиться к самому GSM шлюзу, ведь у меня нет постоянного IP адреса. Но тут я вспомнил, что в устройствах есть такая опция, как Remote Control. Почитал документацию, нашел как пользоваться этой функцией. Оказалось, необходимо установить на VPS сервер родной софт, именуемый как Remote Control Server и в самом устройстве прописать данные моего сервера. Спустя минут 20 все было готово и я смог указав в адресной строке браузера IP адрес своего сервера, подключиться к веб интерфейсу шлюза.


Далее, возникла задача получить обратно шлюз в Москву, чтобы здесь все настроить и отправить обратно. И ведь надо это сделать быстро! В итоге нашел на сервисе Blablacar водителя, с которым договорился, что он привезет оборудование в Москву. Нашел я его в 10 вечера, а в 12 часов следующего дня шлюз был у меня дома. Обошлось все это удовольствие в ₽1000 руб.

Следующая задача, которая до конца пока что не решена — это как заставить SIM Server переключать слоты и подавать новую SIM карту в GSM шлюз, после отправки 150 SMS? В дефолте такого функционала нету.

На данный момент:
1. Я заметил, что SIM Server все же переключает SIM карты. Но так и не понял, по каким алгоритмам он это делает. Вероятно, переключение происходит после того, как получает от оператора сотовой связи ошибку. По этому случаю я сделал следующее:
на SIM картах баланс в пределах 0 руб. Через Qiwi кошелек настроил автоплатеж, на 23:59, на сумму в ₽2.01. Этой суммы достаточно, чтобы баланс был более ₽2 и чтобы в 00:00 продлилась услуга SMS-свобода, в рамках которой за ₽2 в сутки я могу получить 150 СМС. Однако, на данный момент нет возможности проверить эту теорию и на сколько все это будет работать. Надо вновь отправить в Калугу оборудование и дальше следить.
2. Я получил от технической поддержки производителя документацию по SIM Server и SMS Server и речь здесь не от User Manual, а именно документацию, которая поможет программисту разобраться в программном коде и подстроить необходимые алгоритмы переключения SIM карт.


В общем, работа продолжается и надеюсь, на этой неделе выйдет последняя часть эпопеи внедрения GSM шлюза для отправки СМС сообщений и за 3.000 СМС я буду платить по ₽40 в сутки, а сами сообщения будут доходить в течении 4-6 секунд.

Подписаться
Уведомление о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x