Написать скрипт на py

Цена договорная
20 октября 2020, 21:54 • 9 откликов • 87 просмотров
Задача: ежемесячно отправлять показания прибора учета электроэнергии поставщику через SMS.
Имеем: настроенный брокер mosquitto на который передаются показания, роутер с OpenWRT api роутера для отправки смс:
для отправки сообщения необходимо выполнить POST запрос по протоколу HTTP на адрес роутера к URI /api/sendsms и передать в теле запроса JSON объект вида:
{
"recipient": "+79991234567",
"message": "test\n"
} ,где:
"recipient" - номер получателя,
"message" - текст сообщение.

Данные необходимо передавать в кодировке utf-8.
В ответ роутер сообщит об отправке сообщения JSON-объектом вида:
{
"result": "ok",
"_board": {
"platform": "irz_ra01",
"name": "RU11w"
}
} ,где:

"result" - результат отправки: ok или fail
пример работы через утилиту curl:

# curl -X POST http://root:root@192.168.1.1/api/sendsms -d '{"recipient": "+79991234567", "message": "test\n=)"}' ответ:
{"result": "ok", "_board": { "platform": "irz_ra01", "name": "RU11w" }}
      Требования к шаблону SMSсообщения:
    Текст сообщения должен состоять из трех чисел, которые должны быть разделены друг от друга пробелом, звездочкой * или решеткой #.
    • Первое число – код услуги. При передаче показаний код услуги – 10;
    • Второе число - номер Вашего лицевого счета в ПАО «Кузбассэнергосбыт»;
  • Третье число - показания Вашего счетчика (указывается только целая часть)
Скрипт должен брать данные с брокера с определенного топика, округлять значения до целого числа и отправлять sms по шаблону через API роутера.
Питон - не обязательно.
Машина на которой будет в кроне работать скрипт Linux Kernel 4.4.179 arm64
СКРИПТ должен быть масштабируемым - можно добавлять топики с показаниями и добавлять шаблоны и номера sms