Я разработал нечто подобное (хотя для гораздо меньшего количества текстовых сообщений) для моего работодателя. Сервер Linux подключен к USB-ключу Bluetooth для получения данных от встроенных сенсорных устройств в лаборатории и GSM модема Siemens TC35 через последовательный канал RS232. Сервер может отправлять сообщения на выбранный телефон сотрудника, если датчики определяют, что существует проблема, которая также обрабатывается программой C ++. Кроме того, есть приложение J2EE, которое позволяет сотрудникам вводить сообщения через веб-страницу, которые затем отправляются в виде текстовых сообщений выбранным сотрудникам. Приложение J2EE сбрасывает сообщения в базу данных, которые затем собираются программой C ++ и отправляются с помощью команд AT
через TC35. Это делается таким образом, чтобы сообщения о проблемах датчика всегда имели приоритет.
В программировании не было ничего особенного, поскольку AT
команды легко понять. Просто убедитесь, что ваши программы безопасны, чтобы они не могли быть захвачены спамером, а модем находится в комнате с хорошим покрытием GSM / 3G и не находится в подвале.
Да, также неплохо бы, чтобы ваша программа регулярно запрашивала у GSM-модема уровень сигнала и другую информацию о базовой станции сотовой связи и сохраняла ее в специальной таблице базы данных. Это позволит вам обнаружить проблемы с вашим сотовым провайдером и перейти к другому, если это необходимо. Я использовал эту информацию, чтобы обнаружить, что базовая станция, которую я использовал, выходила из строя или часто сталкивалась с техническими проблемами, из-за которых пропускная способность моих модемных сообщений снижалась до минимума.
Удачи