/var/log/life.log
Блог программиста из солнечной Бурятии

Чтение смс с 3g модема в роутере

router.jpg Есть у меня в хозяйстве китайский noname роутер, который уже несколько лет успешно раздаёт интернет с 3g модема. Правда для этого пришлось заказать на али ещё проводки, чтобы залить на него нормальную прошивку, поставил dd-wrt. Проблемой было то, что безлимитных тарифов нет, а трафик заканчивался неожиданно в самый не подходящий момент. В личном кабинете довольно часто сервис показа остатка трафика был недоступен. В конце концов мне это надоело и я решил написать скриптик, который отсылает usd запросы и читает смс с модема. А то ведь ещё умудряются подписывать модем на всякие гороскопы и прочие платные подписки.
Изначально планировал получать смс в текстовом режиме командой AT+CMGL="ALL", но как оказалось, в результатах выполнения команды части длинного sms никак не идентифицируются. В результате пришлось сделать парсер бинарного формата. Вообще нормального описания формата не нашлось, либо слишком запутано либо слишком упрощённо.
Теперь у меня на новой вкладке отображаются смс и остаток трафика.
startpage.png
Код выложил на гитхаб