wb_editors
906
правок
Admin (обсуждение | вклад) |
Brainroot (обсуждение | вклад) |
||
(не показано 29 промежуточных версий 8 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Модуль уведомлений}} | |||
[[File:web-alarm.png|400px|thumb|right|Настройка модуля уведомлений]] | [[File:web-alarm.png|400px|thumb|right|Настройка модуля уведомлений]] | ||
Модуль уведомлений (алармов, Alarm) предназначен для быстрой настройки отправки СМС и email в случае изменения параметров контроллера или подключённых устройств | Модуль уведомлений (алармов, Alarm) предназначен для быстрой настройки отправки СМС и email в случае изменения параметров контроллера или подключённых устройств: показаний подключённого датчика температуры, сработки пожарной сигнализации, обнаружении протечки и т.п. | ||
==Предварительная настройка для отправки email== | ==Предварительная настройка для отправки email== | ||
На уровне Linux для отправки email используется утилита [https://linux.die.net/man/8/ssmtp sSMTP]. Чтобы начать отправлять почту, нужно [[Просмотр файлов контроллера с компьютера | отредактировать]] её конфигурационный файл | На уровне 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"> | <syntaxhighlight lang="linux-config"> | ||
mailhub=smtp.gmail.com:587 | |||
UseTLS=Yes | |||
UseSTARTTLS=Yes | |||
AuthUser=robot@wirenboard.com | |||
AuthPass=qwerty12345 | |||
# Не забудьте добавить пустую пустую строку в конце файла | |||
</syntaxhighlight> | |||
mailhub=smtp. | Обязательно оставьте пустую строку в конце файла — после строки с <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 | 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> | </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]] из консоли. | |||
==Настройка модуля уведомлений== | ==Настройка модуля уведомлений== | ||
#Зайдите на страницу ''Configs | |||
#Добавьте получателей уведомлений в разделе ''Recipients'': | #Зайдите на страницу '''Settings''' → '''Configs''' → '''Alarm Configuraion''' веб-интерфейса. | ||
#*нажмите кнопку ''+ Recipient'' | #Добавьте получателей уведомлений в разделе '''Recipients''': | ||
#*выберите | #*нажмите кнопку '''+ Recipient'''; | ||
#*В выпадающем списке ''Recipient N'' выберите один из типов: ''E-mail recipient'' или ''SMS recipient''; | |||
#*введите почтовый адрес или номер телефона. Для email можно также указать тему письма. | #*введите почтовый адрес или номер телефона. Для email можно также указать тему письма. | ||
#Настройте проверяемый параметр и условие в разделе ''Alarms'': | #Настройте проверяемый параметр и условие в разделе '''Alarms''': | ||
#*в ''Alarm name'' введите произвольное название для уведомления; | #*нажмите кнопку '''+ Item'''; | ||
#*в ''Cell'' введите параметр, за которым нужно следить. Параметр задаётся в виде | #*в появившемся разделе в выпадающем списке выберите один из четырёх типов уведомлений: | ||
#*в ''Alarm activation message'' введите текст сообщения, которое будет отправлено. В него в произвольном месте можно ввести две фигурные скобки | #*#Expected Value Alarm — уведомление, если значение перестанет равняться заданному. | ||
#Нажмите ''Save'' в самом верху страницы: | #*#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'' будет неактивна, а рядом с параметром красным будет написана ошибка, которую нужно исправить; | #*если вы забыли указать какой-то обязательный параметр, кнопка ''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> |