====== Скрипт уведомления пользователей о ходе измерения ======
**Bot** отправляет уведомления по **электронной почте** и/или каналу **telegram** об ошибках измерения. Информация об ошибках извлекается из протокола измерения. Кроме того, можно отправлять и любые сообщения из скрипта, для чего в скрипт нужно добавить:
from bot import messangers
messangers.send_message("<текст_сообщения>")
===== Структура =====
Bot состоит из 3х модулей и конфигурационного файла.
==== Модули ====
Пакет состоит из следующих модулей:
* **protocol_reader** - модуль для чтения протоколов измерения;
* **messangers** - список функций для рассылки, содержит классы для рассылки по почте и telegram, а так же функции send_message, которая отправляет сообщение по всем указанным адресам;
* **logwatch** - sonix-подобное устройство, которое сканирует рабочий протокол и в случае нахождения ошибок отправляет сообщение функцией send_message.
==== Конфигурационный файл ====
Конфигурационный файл записывается в формате json, и отвечает за следующие параметры
- **mail** - почтовая конфигурация:
- **user** - пользователь для отправки почтовых сообщений;
- **password** - пароль для отправки почтовых сообщений;
- **port** - порт почтового сервера, через который будут отправляться почтовые сообщения;
- **server** - dns имя сервера, через который будет осуществляться почтовая рассылка;
- **recipients** - список получателей для отправляемого письма.
- **telegram** - конфигурация телеграм:
- **bot-id** - id бота для рассылки сообщений;
- **channel-id** - id канала, на который стоит отправлять сообщения.
Пример содержимого конфигурационного файла:
{
"mail": {
"user": "sonix-bot",
"password": "your_password",
"port": 25,
"server": "smtp.nf.jinr.ru",
"recipients": [
"somebody@mail_address",
"another_if_neccessary@mail_addres"
]
},
"telegram": {
"bot-id": "your_telegram_bot_id",
"channel-id": "telegram channel_id"
}
}
===== Установка на спектрометре =====
Для подключения Bot на спектрометре необходимо установить соответствующий пакет, заполнить параметры в конфигурационном файле для отправки сообщений и настроить загрузку модуля logwatch.py в настройках Sonix+.