如今,有许多通知服务可以让您了解所有您想要的事件。我们特别看到了通过免费使用短信 甚至是 电报通知 接收来自 Jeedom 家庭自动化系统的通知。如果我们使用自己的完全独立的通知服务器怎么办?这是可能的,感谢 恩特菲,一个开源项目,可以自由安装在自己的服务器上。
NTFY概述
恩特菲发音为“notify”,是一种超轻型通知服务,允许您通过简单的脚本向智能手机或计算机发送消息,无需帐户,并且完全免费!它是一个开源项目,提供完整的 API,并且可以托管在自己的服务器上,例如 Nas。
但如果使用简单,Ntfy 也同样完整,因为它能够管理警报的重要性级别、管理附件、可点击链接等。
要使用它,只需在您的智能手机上安装该应用程序(适用于 Android 和 iOS)。无需创建帐户:只需订阅通知。我们自己创建通知的名称。例如:

如果您不想安装 Ntfy 服务器,您可以简单地使用 由其创建者提供。
然后我们使用相同的通知名称发送一条消息:

我们验证。我们会在订阅此通知的所有设备上立即收到通知:

因为实际上可以同时向多个设备发出警报。事实上,每个设备都会不断“监听”服务器可以发布的内容。它非常容易使用,而且超级有效!
由于有 Docker 软件包,所以我在 Synology Nas 上安装了 Ntfy 来托管我自己的通知服务:)
先决条件
要求很简单:您只需要一台安装了 Docker 的 Synology Nas(可通过 Synology 套件中心获取)。
您还需要配置 反向代理 使用我们在上一篇指南中看到的 SSL 证书。
配置外部访问
为了使通知正常工作,必须可以从外部访问服务器。通知应用程序必须能够从任何地方连接到它。
我们将首先在反向代理上创建一个条目。如果您的反向代理配置正确,具有 SSL 证书等,您只需提供一些信息即可访问 Ntfy:
- 我们为条目命名:例如 Ntfy
- 我们输入它的主机名。例如 ntfy.mondomaine.synology.me,正如我们在反向代理指南中看到的那样
- 端口:443
- 我们勾选“启用 HSTS”
- 然后在目的地中,我们输入 HTTP 协议、localhost 以及我们计划运行服务的端口,例如这里的 5202:

最后,在“自定义标头”选项卡中,单击“创建”,然后单击“Websocket”。将自动创建两个条目:

我们验证。反向代理就结束了。让我们继续安装 Docker 包。
在 Docker 上安装 Ntfy
我们将首先通过 File Station 在 Nas 上创建两个目录。在 Docker 目录中,我们创建一个 ntfy 目录,然后在“cache”子目录中创建另一个“config”:

现在,在 Docker 应用程序的“网络”选项卡中,我们首先创建一个网络连接(这允许您正确分隔不同的容器)。我们点击“添加”:

我们创建一个“ntfy_default”网络,例如:

然后,在“注册表”菜单中,我们搜索“ntfy”。我们选择“binwiederhier/ntfy”软件包,然后单击“下载”。

我们在下面的对话框中选择“最新”以获得最新版本。
下载速度非常快,包大小不到 30MB。
我们在“图像”菜单中找到它:

我们选择它,然后单击“启动”。我们首先选择上面创建的网络连接:

然后,我们给容器命名,例如“Ntfy-server”,我们勾选“自动重启”,以确保重启Nas后服务会重新启动。

然后我们点击“高级设置”,然后在执行命令选项卡中,我们添加“serve”:

我们验证,然后进行下一步。在那里,我们指示在反向代理级别输入的端口:我们输入 5202:

然后,我们将通过单击“添加文件夹”来映射之前创建的两个目录,并指示相反的目录 /var/缓存/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”
附件缓存目录:“/var/cache/ntfy/附件”
配置文件中给出:

我们保存修改后的文件,然后重新启动 Docker 容器以使修改生效。
使用示例
在我们开始到处设置通知之前,让我们测试一下我们的安装是否正常工作!
功能测试
在智能手机上,注册您将定义其名称的通知,并表明您正在使用不同的服务器,然后在 Synology 上表明您的服务器地址。例如:

在 Ntfy 服务器的地址中,使用相同的主题名称输入通知。例如:

证实。您应该立即在智能手机上收到通知:

如果一切正常,我们就可以继续了!
与 Jeedom 一起使用
当我发现这项出色的服务时,我在 吉多姆论坛。没过多久Lunarok就给我们带来了超级 使用 Ntfy 的插件 在 Jeedom,而且这是免费的!
只需像其他 Jeedom 插件一样安装并激活它即可。
然后通过 Plugins / Communication / Ntfy 菜单,我们创建一个新设备。我们给它指定我们想要的名称,激活它,最重要的是,我们完成 Ntfy URL,其类型为 https://url-du-serveur-ntfy/sujet-de-notification。例如 https://ntfy.mondomaine.synology.me/mes_notif_jeedom_2915。请小心,使用无人能猜到的主题标题,这样就没有其他人可以订阅您的通知。它可以是一系列毫无意义的数字和字母。

我们获得这个可以发送通知的小部件:

但真正感兴趣的是能够通过场景发送通知。例如,这里有一条确认早上百叶窗打开的通知:

在消息字段中,您可以输入所需的消息。但在选项字段中,可以通过“标题:”指定标题,通过“标签”指定图标等。所有这些参数都用分号分隔。
例如,我在智能手机上收到此通知:

你可以找到所有可以传递的选项 官方页面。特别是,您可以调整消息的重要程度,这将使智能手机做出不同的反应。附加图像、插入链接等。例如使用 Jeedom 询问功能。简而言之,它非常完整,一旦你掌握了不同的选项,你就离不开它了!
与 Synology 配合使用
您的 Synology Nas 还会向您发送电子邮件通知吗?您可以通过您的服务器通过 Ntfy 接收它们!为此,只需使用 Nas 通知配置中的 Webhook:


我邀请您咨询 卡赫姆教程 设置,其中解释了通过 Ntfy 从 Synology 接收通知的所有内容。只需将地址 https://ntfy.sh/ 替换为您自己的 Ntfy 服务器的地址即可。
结论
Ntfy 是一个非常好的、设计精良的通知服务,正在赢得越来越多的用户。官方网站还列出了 使用 Ntfy 的其他应用程序列表,例如 Radarr 和 Sonarr、Uptime Kuma、Automatisch 等。
我已经使用它几个月了,我可以通过 Ntfy 发送的所有通知都会通过它!一切都通过我自己管理的服务集中在同一个地方,与其他“竞争”解决方案相比,其可能性并不突出。简而言之,尝试就是采用!