Каковы лучшие практики для создания SMS-сервера

Я пытаюсь создать систему, в которой у меня есть оконечные узлы, способные отправлять / получать SMS-сообщения по сети GSM. Теперь мне нужно создать серверное решение, которое будет отправлять SMS-сообщения, действуя как шлюз между веб-сервером, на котором хранится моя бизнес-логика, и клиентами (узлами). Связь двусторонняя. Я кое-что читал о полных решениях для SMS-серверов (которые, возможно, действуют как GSM-шлюз), но они оказались слишком дорогими. Я думал о том, чтобы подключить мобильный телефон к моему серверу (а затем использовать некоторые API), но может случиться так, что мой сервер перейдет в центр обработки данных, и я не могу ничего прикрепить таким образом. Я не ожидаю, что у меня будет слишком много сообщений (например, 100 в день / в обе стороны). И клиентов у меня тоже не будет слишком много (менее 100). Здесь я прошу общее системное решение (например, передовой опыт).


person guruslan    schedule 20.02.2011    source источник


Ответы (2)


Существует три основных варианта создания такого SMS-сервера:

1) Подключите к серверу мобильные телефоны или USB-накопители GSM и используйте их для обмена SMS. Ограничения есть

  • Ограниченные объемы (однако ваших 100 SMS в день должно хватить).

  • Возможно, довольно ненадежный из-за потребительского оборудования (например, прошивка телефона / флешки не предназначена для круглосуточной работы, вам может потребоваться регулярно перезагружать устройства; большинству мобильных телефонов для работы требуется батарея, батареи изнашиваются).

  • Возможно, неприемлемо в центрах обработки данных из-за правил RF и покрытия мобильной сети.

  • Схема номера мобильного телефона ограничена MSISDN SIM-карты.

2) Подключите SMS к шлюзу SMS оператора сети. Сетевые операторы используют их именно для этого сценария: массовые SMS-сообщения. Они являются проприетарными и обычно говорят о «более легком для восприятия» транспортном протоколе сообщений. Ограничения:

  • Вы привязаны к оператору сети, как по подключению, так и по протоколу.

  • Возможны задержки связи, поскольку шлюз может выполнять промежуточную передачу.

  • В зависимости от схемы ценообразования может иметь смысл только для больших объемов.

3) Подключите SMS-сервер к сети SS7 мобильного оператора, добавив его как элемент сети. Ограничения:

  • Комплексная реализация. Требуется специальное оборудование (интерфейсная карта SS7) и драйверы для программирования.

  • Требуется нетривиальная сетевая интеграция с оператором сети, включая обширное тестирование.

  • Для подключения требуется линия E1 / T1 (или более крупная, или SIGTRAN). Обычно это относится к центрам обработки данных, но доступно не во всех центрах обработки данных.

  • Дорого по схеме ценообразования и эксплуатации.

Предполагая, что я понимаю ваши требования, в вашем случае я бы выбрал вариант 1) и разместил SMS-сервер там, где он имеет хорошее покрытие, то есть не обязательно в центре обработки данных. Продать его как головной узел для серверной инфраструктуры. Если установка в центре обработки данных является обязательной, перейдите к варианту 2) и ознакомьтесь с оптовыми предложениями SMS от операторов мобильной связи.

person Bernd    schedule 20.02.2011
comment
Отлично. Большое спасибо за это. Я думаю, что мне следует пойти в 1) направлении, и я уже понял, как я собираюсь его настроить. Ура! - person guruslan; 22.02.2011
comment
Привет, Бернд, мы пытаемся создать решение на основе вашего совета по использованию GSM-модема. Однако SMS, полученные MMX144F, хранятся в базе данных, которую мы не можем прочитать извне. Не могли бы вы предложить нам какое-нибудь программное обеспечение, которое может сохранять SMS в текстовый файл? - person bubble; 21.07.2013
comment
Предполагая, что MMX144F - это мобильный телефон или USB-накопитель: вы должны иметь возможность читать содержимое SMS с помощью AT-команд. Если это невозможно, возможно, вам придется попробовать с другим устройством. - person Bernd; 22.07.2013

Я использую пакет smstools в Linux для получения и анализа SMS-сообщений. В файле конфигурации вы указываете на внешний скрипт, который получает 2 аргумента (например, ПОЛУЧЕННЫЙ путь к sms-файлу). Я разбираю SMS с помощью perl. Другой вариант - SMS-шлюз Alamo, но у меня с ним было много проблем.

person Gjorgji Tashkovski    schedule 29.06.2011