Сегодня существует множество сервисов уведомлений, позволяющих держать вас в курсе всех желаемых событий. Мы особенно виделииспользование SMS через бесплатно или даже Уведомления в телеграмме получать уведомления от нашей системы домашней автоматизации Jeedom. Что, если бы мы использовали собственный сервер уведомлений, чтобы он был полностью независимым? Это возможно благодаря Нтфй, проект с открытым исходным кодом, который можно бесплатно установить на ваш сервер.
Обзор Ntfy
Нтфй, что произносится как «уведомить», представляет собой сверхлегкую службу уведомлений, позволяющую отправлять сообщения на смартфон или компьютер с помощью простых скриптов без необходимости создания учетной записи и совершенно бесплатно! Это проект с открытым исходным кодом, который предлагает полный API и который может быть размещен на собственном сервере, например, на Nas.
Но если он прост в использовании, Ntfy не менее совершенен, поскольку он способен управлять уровнями важности в оповещениях, управлять вложениями, интерактивными ссылками и т. д.
Чтобы им воспользоваться, просто установите приложение на свой смартфон (доступно на Android и iOS). Нет необходимости создавать учетную запись: просто подпишитесь на уведомление. Название уведомления мы создаём сами. Например:

Если вы не хотите заморачиваться с установкой сервера Ntfy, вы можете просто использовать тот предоставлен его создателем.
Затем мы отправляем сообщение с тем же именем уведомления:

Мы проверяем. И получаем уведомление мгновенно на все устройства, подписанные на это уведомление:

Потому что фактически одновременно могут быть оповещены несколько устройств. Фактически каждое устройство постоянно «слушает» то, что может публиковать сервер. Он чрезвычайно прост в использовании и очень эффективен!
Поскольку есть пакет Docker, я установил Ntfy на свой Synology Nas, чтобы разместить собственную службу уведомлений :)
Предварительные условия
Требования просты: вам понадобится только Synology Nas с установленным на нем Docker (доступен через Центр пакетов Synology).
Вам также необходимо будет настроить Обратный прокси с сертификатом SSL, как мы видели в предыдущем руководстве.
Настройка внешнего доступа
Для корректной работы уведомлений сервер должен быть доступен извне. Приложения уведомлений должны иметь возможность подключаться к нему из любого места.
Мы начнем с создания записи на обратном прокси. Если ваш обратный прокси настроен правильно, с сертификатом SSL и т. д. вам просто нужно предоставить некоторую информацию, чтобы Ntfy был доступен:
- даем записи имя: например Ntfy
- мы вводим его имя хоста. Например, ntfy.mondomaine.synology.me, как мы видели в руководстве по обратному прокси.
- Порт: 443
- ставим галочку «Включить HSTS»
- затем в пункте назначения вводим протокол HTTP, localhost и порт, на котором планируем запускать службу, например здесь 5202:

Наконец, на вкладке «Пользовательский заголовок» нажмите «Создать», затем «Websocket». Две записи будут созданы автоматически:

Мы проверяем. Для обратного прокси все кончено. Перейдем к установке пакета Docker.
Установка Ntfy в Docker
Мы начнем с создания двух каталогов на Nas через File Station. В каталоге Docker мы создаем каталог ntfy, затем внутри подкаталога «cache» и еще один «config»:

Теперь в приложении Docker на вкладке «Сеть» мы начинаем с создания сетевого подключения (это позволяет правильно разделить разные контейнеры). Нажимаем «Добавить»:

И мы создаем сеть «ntfy_default», например:

Затем в меню «Реестр» ищем «ntfy». Выбираем пакеты «binwiederhier/ntfy» и нажимаем «Загрузить».

В следующем диалоговом окне мы выбираем «последняя версия», чтобы получить последнюю версию.
Загрузка идет очень быстро, вес пакета менее 30Мб.
Находим его в меню «Изображение»:

Выбираем его и нажимаем «Запустить». Начнем с выбора сетевого подключения, созданного выше:

Затем даем имя контейнеру, например «Ntfy-сервер», проверяем «автоматический перезапуск», чтобы быть уверенным, что служба перезапустится после перезапуска Nas.

Затем нажимаем «Дополнительные настройки», затем во вкладке команды выполнения добавляем «обслуживать»:

Мы проверяем, затем делаем следующее. Там указываем порт, введенный на уровне Reverse Proxy: ставим 5202:

Затем мы сопоставим два созданных ранее каталога, нажав «Добавить папку», и укажем противоположные /вар/кэш/ntfy И /etc/ntfy:

Проверяем: осталось только подтвердить, наш контейнер будет создан и запущен:

Если вы введете в браузере адрес, указанный в обратном прокси-сервере для Ntfy, здесь https://ntfy.mondomaine.synology.me, вы должны попасть на эту страницу: если это так, поздравляем, ваша установка работает!

Настройка Ntfy
Ntfy может работать как есть, не делая ничего лишнего. Вот что мне нравится в этом сервисе: его простота.
Но многие параметры можно настроить через файл конфигурации server.yml. Пример этого файла: доступно здесь. Просто сохраните его и поместите в каталог docker/ntfy/config, который мы создали в самом начале.

Можно активировать управление пользователями с помощью пароля, активировать SMTP-сервер и т. д. Все параметры доступен на странице разработчика. На данный момент я активировал только три параметра, чтобы указать URL-адрес службы и активировать кеш для сообщений и вложений:
базовый URL: "http://ntfy.mydomain.synology.me"
файл-кеша: "/var/cache/ntfy/cache.db"
Attachment-cache-dir: "/var/cache/ntfy/attachments"
Что дает в файле конфигурации:

Сохраняем файл с изменениями и перезапускаем Docker-контейнер, чтобы изменения были учтены.
Примеры использования
Прежде чем мы начнем настраивать уведомления везде, давайте проверим, правильно ли работает наша установка!
Функциональный тест
На смартфоне зарегистрируйтесь для получения уведомления, имя которого вы определите, и укажите, что вы используете другой сервер, затем укажите адрес вашего сервера на Synology. Например:

По адресу вашего сервера Ntfy введите уведомление, используя то же имя субъекта. Например:

Подтвердить. Вы должны мгновенно получить уведомление на свой смартфон:

Если все в порядке, можем продолжать!
Используйте с Джидомом
Когда я открыл для себя этот замечательный сервис, я обсудил его на Форум Джидома. Лунарок не заставил себя долго ждать, чтобы дать нам супер плагин для использования Ntfy в Jeedom, и это бесплатно!
Просто установите и активируйте его, как и любой другой плагин Jeedom.
Затем через меню Плагины/Связь/Ntfy создаем новое устройство. Мы даем ему желаемое имя, активируем его и, прежде всего, заполняем URL-адрес Ntfy, который будет иметь тип https://url-du-serveur-ntfy/sujet-de-notification. Например https://ntfy.mondomaine.synology.me/mes_notif_jeedom_2915. Будьте осторожны, используйте заголовок темы, который никто не сможет угадать, чтобы никто другой не мог подписаться на ваши уведомления. Это может быть ряд цифр и букв, которые ничего не означают.

Получаем вот такой виджет, который умеет отправлять уведомления:

Но настоящий интерес представляет возможность отправлять уведомления через сценарии. Например, вот уведомление, подтверждающее открытие ставен утром:

В поле «Сообщение» вы можете ввести желаемое сообщение. Но в поле «Параметры» можно указать заголовок через «Название:», значок через «Теги» и т. д. Все эти аргументы разделяются точкой с запятой.
Например, я получаю такое уведомление на свой смартфон:

Вы можете найти все параметры, которые можно передать на официальная страница. В частности, вы можете настроить степень важности сообщения, что заставит смартфон реагировать по-разному. Прикрепите изображение, вставьте ссылку и т. д., чтобы использовать, например, функцию запроса Jeedom. Короче говоря, он очень полный, и как только вы освоите различные варианты, вы не сможете обойтись без него!
Использование с Synology
Отправляет ли ваша Synology Nas уведомления по электронной почте? Вы можете получить их через Ntfy через свой сервер! Для этого просто используйте вебхуки в конфигурации уведомлений Nas:


Приглашаю вас проконсультироваться Учебное пособие по кэшему за настройку, где объясняется всё от А до Я для получения уведомлений от Synology через Ntfy. Просто замените адрес https://ntfy.sh/ на адрес вашего собственного сервера Ntfy.
Заключение
Ntfy — действительно хороший и хорошо продуманный сервис уведомлений, который приобретает все больше и больше пользователей. На официальном сайте также указан список других приложений, использующих Ntfy, такие как Radarr и Sonarr, Uptime Kuma, Automatisch и т. д.
Пользуюсь им уже несколько месяцев, и все уведомления, которые я могу отправить через Ntfy, проходят через него! Все централизовано в одном месте, через сервис, которым я управляю сам и возможности которого не выделяются на фоне других «конкурирующих» решений. Короче говоря, попробовать — значит принять!