В error-логе Apache обнаружилось, что gsmsendsms заканчивается неудачей с ошибкой: неожиданный ответ: ^RSSI: 9.
RSSI - показатель силы сигнала. Чо к чему?
Полез к модему через minicom. Увидел, что модем регулярно шлёт RSSI: <цифра> и тип соединения. Очевидно, это и есть "неожиданный ответ". gsmsendsms ожидала на свою сентенцию что-то типа ОК, а получила, натурально, уровень сигнала зачем-то.
Выключил эти сообщения (есть такая АТ команда). Теперь gsmsendsms заканчивалась с ошибкой 500.
500 - это ошибка типа "ХЗ". Что-то не так, не технически, а вообще. Непорядок во внешней вселенной.
Вынул SIM-карту из модема, поставил в телефон. Она оказалась заполненной. Хранилище на 15 сообщений было полно предупреждениями МЧС о грядущих ненастьях.
Удалил сообщения и поставил карту назад в модем. Она стала отправлять сообщения.
Проблема была решена, но в ближайшей перспективе. МЧС ведь не остановится. Ненастья грядут.
Изучение AT команд открыло, что AT+CMGD=X удалит из хранилища сообщение номер X. А AT+CMGD=X,4 удалит всё, игнорируя значение X.
Также оказалось, что AT команды можно тупо слать в /dev/ttyUSBx, например, через echo -n.
Осталось вставить это в crontab рута.
Оставил на завтра: слишком много свершений за один день.
2 комментария:
Спасибо, тёзка, будем иметь в виду - не в моём подчинении, но в нашей конторе есть примерно до фига специализированных устройств с симкартами, вдруг пригодится.
Прошу прощения, в предыдущем комменте забыл указать, что хочу получать уведомления об ответах, буде такие появятся
Отправить комментарий