Получение push от самоделок
Решил я сделать датчик открытия двери, казалось бы реализация простая, геркон и всё, что может быть проще? Но ведь нам надо как то получать уведомления о данном событии, что толку прикрутить просто пищалку, если меня нет дома?
Умного дома у меня нет, вернее я.станция есть, но самая дешевая лайт 2, без зигби хаба, плюс колонка/хаб не будет работать если нет электричества. Да и я не разобрался, как завести своё устройство в умный дом алисы. Есть у моей колонки поддержка matter, но меня этот вариант не устроил, в том числе по причине описанной в начале абзаца.
Контроллер я так и так собирался использовать esp32-c3 super mini, мне нравятся эти штуки.
Перебрав очевидные варианты, типа: телеги, вк, email, мах и т.д. Я отмел все: телегу потому что блочат, вк, email и другие простые варианты, потому что нет возможности гибко настроить уведомления. Допустим я получу сообщения в вк, мне теперь на каждое реагировать так, будто там что-то важное? С почтой аналогично. Нужен вариант, чтобы настроить отдельный звук на данное уведомление, дабы не глядя знать, что это важно. Про мах вообще молчу, просто так там бота так не завести.
Покопавшись в сети я обнаружил ntfy их главный сайт попал под фильтры, но документация открывается https://docs.ntfy.sh/.
Преимущества:
каналы, с индивидуальной настройкой уведомлений
приоритет сообщения. Не влияет на доставку, но отображается по-разному и опять же, индивидуальная настройка сигнала.
есть self-hosting решение, т.е. можно замутить собственный ntfy сервер.
Недостатки:
каналы не имеют парольной защиты, если вы пользуетесь публичным ntfy сервером, канал может читать кто угодно, как и писать в него
нужно установить отдельное приложение
нет гарантии доставки сообщения
нет проверки прочитано ли сообщение
хз как будет работать если сервера гугла, который отправляют push попадут в блок. По идеи будет, из за прямой связи с сервером, но могут быть проблемы из за оптимизации энергопотребления.
Я разместил сервер ntfy на свой vds под linux, тем самым избавился от недостатка с публичностью. Система поддерживает авторизацию, и разграничение прав, можно давать права на конкретные каналы, как на чтение и запись, так и на что-то одно. Документация довольно подробная и понятная. Отправка сообщений простейшим http запросом.
Моя самоделка шлёт HearBeet каждый час для контроля работоспособности, эти сообщения приходят без всплывающего уведомления, она просто есть. Когда дверь открывается, об этом приходит сообщение на другой канал и там звук есть.
Ещё можно настроить повторную отправку push, если не прочитал сообщение, но сделано криво, без интервала, и будет заёбывать бесконечным сигналом. Была бы возможность настроить повтор каждые n минут, вот это было бы прикольно.
Если вдруг, кто-то ломает голову, как сделать отправку со своей самоделки и получение на смартфоне push, попробуйте данное решение.

