Разработать скрипт управления/мониторинга COM порта

1 000 руб. за проект
05 декабря 2019, 07:08 • 11 откликов • 45 просмотров
Имеется GSM модем, который управляется через COM порт определенными командами типа AD.
С этого модема есть возможность совершать звонок на CSD сим-карты, с помощью команды ATD+7XXXXXXXXXX и получать ответ CONNECT в случае успешного установления связи, или NO CARRIER в случае неудачной попытки установить связь. Так же имеются другие команды и ответы, не не в этом суть.

Образовалась задача мониторинга работы сим карт, на основании отвечает сим-карта или нет. Если отвечает - значит работает, если нет - значит не работает. Необходимо ежедневно делать опрос 1000+ сим карт.

Соответственно нужно разработать простенькую программку которая будет всем этим управлять и данные (номер) о сим-картах которые не отвечают записывать в файл.

В управлении модемом присутствуют некоторые нюансы. Например, если у нас установилось соединение CONNECT с номером которому был совершен звонок, то это соединение не так просто разорвать. Как вариант просто закрывать COM порт и соединение будет завершено.

Я вижу алгоритм работы программы следующий:
  • Программа открывает com порт;
  • Отправляет в порт сообщение AT;
  • Если приходит ответ OK значит соединение с модемом установлено - переходим к след. шагу;
  • Считывает из файла номер сим-карты на которую надо дозвониться;
  • Отправляет в com порт сообщение ATD+7XXXXXXXXXX cоответствующее определенном номеру сим;
  • Если приходит ответ CONNECT 9600/RLP, закрываем порт - прерываем соединение, переходим к первому пункту;
  • Если приходит ответ NO CARRIER или какой нибудь другой ответ, записываем номер на который не удалось дозвониться в файл, закрываем com порт, переходим к первому пункту.
Можно реализовать на си, но если есть другие варианты и предложения готов выслушать.

Отзывы
Огромное спасибо Василию за проделанную работу. Основательно подошел к реализации проекта, а так же предложил собственные идеи, которые в дальнейшем были реализованы. Работа выполнена менее чем за час. Ответил на все интересующие меня вопросы, а так же объяснил детали работы программы. Заказом доволен на 100%. Всем рекомендую.
5 лет назад
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Фрилансер
 
5 лет назад