|
|
(не показано 40 промежуточных версий 8 участников) |
Строка 1: |
Строка 1: |
| {{DISPLAYTITLE:Модуль уведомлений}}
| |
| [[File:web-alarm.png|400px|thumb|right|Настройка модуля уведомлений]] | | [[File:web-alarm.png|400px|thumb|right|Настройка модуля уведомлений]] |
| Модуль уведомлений (алармов, Alarm) предназначен для быстрой настройки отправки СМС и email в случае изменения параметров контроллера или подключённых устройств: показаний подключённого датчика температуры, сработки пожарной сигнализации, обнаружении протечки и т.п. | | Модуль уведомлений (алармов, Alarm) предназначен для быстрой настройки отправки СМС и email в случае изменения параметров контроллера или подключённых устройств (например, показаний подключённого датчика температуры). |
| ==Предварительная настройка для отправки email==
| |
| На уровне Linux для отправки email используется утилита [https://linux.die.net/man/8/ssmtp sSMTP]. Чтобы начать отправлять почту, нужно [[Просмотр файлов контроллера с компьютера | отредактировать]] её конфигурационный файл <code>/etc/ssmtp/ssmtp.conf</code>.
| |
| | |
| Электронные письма будут отправляться с одного из ваших почтовых ящиков, от которого потребуются:
| |
| *логин — например, <code>robot@wirenboard.com</code>,
| |
| *пароль,
| |
| *адрес и порт SMTP сервера. Для ящиков на Gmail это <code>smtp.gmail.com:587</code>, для Mail.Ru — <code>smtp.mail.ru:465</code>.
| |
| | |
| ==Для ящика на сервере Google==
| |
| | |
| Очистите содержимое файла <code>/etc/ssmtp/ssmtp.conf</code> и добавьте туда строки:
| |
| <syntaxhighlight lang="linux-config">
| |
| mailhub=smtp.gmail.com:587
| |
| UseTLS=Yes
| |
| UseSTARTTLS=Yes
| |
| AuthUser=robot@wirenboard.com
| |
| AuthPass=qwerty12345
| |
| # Не забудьте добавить пустую пустую строку в конце файла
| |
| | |
| </syntaxhighlight>
| |
| | |
| Обязательно оставьте пустую строку в конце файла — после строки с <code>AuthPass=</code>.
| |
| | |
| Для отправки писем через Google Mail необходимо [https://support.google.com/accounts/answer/6010255 разрешить отправку писем из менее защищённых приложений] и, возможно, [https://support.google.com/accounts/answer/185833 создать отдельный пароль].
| |
| | |
| ==Для ящика на сервере mail.ru==
| |
| | |
| Очистите содержимое файла <code>/etc/ssmtp/ssmtp.conf</code> и добавьте туда строки:
| |
| <syntaxhighlight lang="linux-config">
| |
| mailhub=smtp.mail.ru:465
| |
| FromLineOverride=YES
| |
| UseTLS=Yes
| |
| AuthUser=robot@wirenboard.com
| |
| AuthPass=qwerty12345
| |
| # Не забудьте добавить пустую пустую строку в конце файла
| |
| | |
| </syntaxhighlight>
| |
| | |
| В файл <code>/etc/ssmtp/revaliases</code> добавьте строку:
| |
| <syntaxhighlight lang="linux-config">
| |
| root:robot@wirenboard.com:smtp.mail.ru:465
| |
| </syntaxhighlight>
| |
| | |
| ==Для ящика на сервере yandex.ru==
| |
| | |
| Очистите содержимое файла <code>/etc/ssmtp/ssmtp.conf</code> и добавьте туда строки:
| |
| <syntaxhighlight lang="linux-config">
| |
| mailhub=smtp.yandex.ru:465
| |
| FromLineOverride=YES
| |
| UseTLS=Yes
| |
| #Важно: Логин без домена
| |
| AuthUser=robot
| |
| AuthPass=qwerty12345
| |
| # Не забудьте добавить пустую пустую строку в конце файла
| |
| | |
| </syntaxhighlight>
| |
| | |
| В файл <code>/etc/ssmtp/revaliases</code> добавьте строку:
| |
| <syntaxhighlight lang="linux-config">
| |
| root:robot@wirenboard.com:smtp.yandex.ru:465
| |
| </syntaxhighlight>
| |
| | |
| ==Проверка настроек==
| |
| Чтобы проверить, что отправка email заработала, выполните в [[SSH | консоли]] команду:
| |
| <syntaxhighlight lang="bash">
| |
| echo 'Test message to check sSMTP new configuration' | ssmtp -v ivanov@gmail.com
| |
| # вместо ivanov@gmail.com подставьте адрес другого своего ящика (например того, куда собираетесь получать уведомления с контроллера)
| |
| </syntaxhighlight>
| |
| Дополнительную информацию можно получить на сайтах [http://askubuntu.com/questions/185070/why-i-get-hostname-name-or-service-not-known-error askubuntu.com] и [https://wiki.archlinux.org/index.php/SSMTP wiki.archlinux.org].
| |
| | |
| ==Предварительная настройка для отправки SMS==
| |
| Убедитесь, что вы [[GSM/GPRS |настроили модем]] вставили SIM-карту и подключили GSM антенну.
| |
| | |
| Перед настройкой в веб-интерфейсе можете протестировать [[GSM/GPRS#.D0.A0.D0.B0.D0.B1.D0.BE.D1.82.D0.B0_.D1.81_sms_.D0.B8_ussd| отправку SMS]] из консоли.
| |
| | |
| ==Настройка модуля уведомлений== | | ==Настройка модуля уведомлений== |
| | | ==Как настроить отправку уведомлений с облее сложными условиями== |
| #Зайдите на страницу '''Settings''' → '''Configs''' → '''Alarm Configuraion''' веб-интерфейса.
| | Модуль уведомлений для быстрой настройки просты уведомлений. Если вам нужны более сложные сценарии уведомлений, их можно запрограммировать через [[Движок правил wb-rules | движок правил]]. Чтобы отправить сообщение, из правила нужно вызвать функцию |
| #Добавьте получателей уведомлений в разделе '''Recipients''':
| |
| #*нажмите кнопку '''+ Recipient''';
| |
| #*В выпадающем списке ''Recipient N'' выберите один из типов: ''E-mail recipient'' или ''SMS recipient'';
| |
| #*введите почтовый адрес или номер телефона. Для email можно также указать тему письма.
| |
| #Настройте проверяемый параметр и условие в разделе '''Alarms''':
| |
| #*нажмите кнопку '''+ Item''';
| |
| #*в появившемся разделе в выпадающем списке выберите один из четырёх типов уведомлений:
| |
| #*#Expected Value Alarm — уведомление, если значение перестанет равняться заданному.
| |
| #*#Minimum Value Alarm — уведомление, если значение станет меньше заданного.
| |
| #*#Maximum Value Alarm — уведомление, если значение станет больше заданного.
| |
| #*#Minimum&Maximum Value Alarm — уведомление, если значение выйдет из заданного диапазона.
| |
| #*в '''Alarm name''' введите произвольное название для уведомления;
| |
| #*в '''Cell''' введите параметр, за которым нужно следить. Параметр задаётся в виде <code>Device/Control</code>, где названия ''Device'' и ''Control'' для каждого параметра можно найти в веб-интерфейсе в разделе '''Settings''' → '''MQTT Channels'''. Например, для датчика 1-Wire, подключённого к внешнему modbus-сенсору WB-MS, эта строка будет выглядеть как <code>wb-ms-thls-v2_101/External Sensor 2</code>;
| |
| #*в '''Alarm activation message''' введите текст сообщения, которое будет отправлено. В него в произвольном месте можно ввести две фигурные скобки <code>{}</code>, вместо которых в сообщение будет подставлено новое значение отслеживаемого параметра.
| |
| #*в зависимости от типа уведомления, заполните поля '''Minimum Value''', '''Maximum Value''', '''Expected Value''';
| |
| #*некоторые дополнительные настройки станут доступны, если нажать на кнопку '''Properties''' и отметить их.
| |
| #Нажмите '''Save''' в самом верху страницы:
| |
| #*если вы забыли указать какой-то обязательный параметр, кнопка ''Save'' будет неактивна, а рядом с параметром красным будет написана ошибка, которую нужно исправить;
| |
| #*если всё в порядке, уведомления сразу начнут работать.
| |
| | |
| ==Как настроить уведомления с более сложными условиями== | |
| Модуль уведомлений предназначен для быстрой настройки простых уведомлений. Если вам нужны более сложные сценарии уведомлений, их можно запрограммировать через [[Движок правил wb-rules | движок правил]]. Чтобы отправить сообщение, из правила нужно вызвать функцию | |
| <syntaxhighlight lang="ecmascript"> | | <syntaxhighlight lang="ecmascript"> |
| Notify.sendEmail("to", "subject", "text"); //отправляет почту указанному адресату (to), с указанной темой (subject) и содержимым (text); почтовый адрес, тема и содержимое указываются в кавычках | | Notify.sendEmail(to, subject, text); //отправляет почту указанному адресату (to), с указанной темой (subject) и содержимым (text) |
| </syntaxhighlight> | | </syntaxhighlight> |
| или | | или |
| <syntaxhighlight lang="ecmascript"> | | <syntaxhighlight lang="ecmascript"> |
| Notify.sendSMS("to", "text"); //отправляет SMS на указанный номер (to) с указанным содержимым (text); номер и текст указываются в кавычках | | Notify.sendSMS(to, text); //отправляет SMS на указанный номер (to) с указанным содержимым (text) |
| </syntaxhighlight> | | </syntaxhighlight> |