Skip to content

Скрипт отправки данных на сервер narodmon

License

Notifications You must be signed in to change notification settings

kini24/narodmon-openwrt-script

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

narodmon-openwrt-script

Скрипт отправки данных на сервер narodmon

Оборудование: D-Link DIR-825
Прошивка: OpenWrt Chaos Calmer 15.05.1
Необходимые пакеты: owserver, owshell, bc, curl

Скрипт собирает данные с подключенного датчика (на примере температуры), формирует данные для отправки и пытается их отправить. Если сервер ответил "ОК", скрипт завершается. В случае любого другого ответа данные сохраняются во временном файле. Если данных накапливается слишком много, скрипт пытается отправить их по частям и только после этого начинает отправку текущих данных. Код ошибки, полученный от сервера, отправляется пользователю через Telegram. Если вам не нужна эта функция, удалите из скрипта строки с номерами 24-27 и 83-85.

В ходе работы делается форматирование данных для приведения к корректному виду (удаление лишних символов), удаляются дублирующиеся строки (например, данные об устройстве передачи). Непосредственно перед передачей пакета данных в файл добавляются закрывающие "##".

Если вам требуется использовать время UTC, то нужно в строку 27 добавить ключ -u. Тогда команда получения текущего времени будет выглядеть следующим образом:
TIME=$(date -uI"seconds")

Для работы скрипта необходимо изменить права доступа для файла. Например, таким образом:
# chmod a+x /root/narodmon.sh
Также нужно добавить в файл /etc/crontabs/root строку вида:
*/5 * * * * /root/narodmon.sh

Пример журнала работы скрипта можно посмотреть в файле narodmon.log

История изменений:
2018-05-13. Отправка сообщений об ошибке в Telegram пользователя.
Исправлена ошибка отправки данных.
Добавлена отправка данных по частям, когда их накапливается слишком много.
2018-03-04. Добавлена обработка ошибки "429 Too Many Requests".
2017-07-09. Добавлена обработка ошибки "ERROR NO CHANGES".

About

Скрипт отправки данных на сервер narodmon

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages