首页
/
工具详情
ntfy 使用指南
一、平台介绍
- ntfy(读作 notify)是一个轻量级的开源工具。
- 它采用 HTTP 协议,实现了 Pub/Sub(发布/订阅) 模式的消息推送架构。
- 用户只需发送简单的 PUT 或 POST HTTP 请求,即可向手机、桌面终端或浏览器发送实时通知消息。
二、主要功能特性
- 零配置 / 即插即用 (Zero Config):
- 无需注册账号即可直接使用公共主题进行推送。
- 多平台终端支持:
- 覆盖 iOS(iPhone/iPad)、Android(Google Play & F-Droid)以及 Web 浏览器端。
- 提供独立的 CLI 客户端 (Command Line Interface)。
- 丰富消息样式与增强项:
- 优先级设置 (Priority):支持不同级别,对应不同的响铃、震动模式及通知位置(锁屏显示)。
- 标签与 Emoji (Tags & Icons):可在内容中插入自定义图标或分类标签(例如
tags: warning触发特定样式)。 - 操作按钮 (Action Buttons):支持在通知栏直接点击,触发 HTTP 请求、打开网页链接或启动 APP。
- 附件/文件传输:允许随同通知一起发送图片、视频流或其他文档类型等二进制数据。
- 高兼容性集成能力:
- 无缝适配主流工具,如 Home Assistant(智能家居)、Uptime Kuma(监控)、GitHub Actions(CI/CD)及 ChangeDetection.io。
- 开源与自建部署 (Self-hostable):
- 代码完全开源并遵循 Apache 2.0 / GPLv2 协议。
- 用户可自由选择通过 Docker 容器化技术自行搭建私有服务器,实现数据本地托管。
三、适用人群分类
- 开发者 & DevOps 运维人员:
- 适用于接收服务器报错日志、定时任务(Cronjob)状态报告或 CI/CD 流水线构建完成后的通知提醒。
- Homelab / 智能家居玩家:
- 对接 Home Assistant 中枢系统,监控 NAS 设备运行异常或家用摄像头检测到人脸时的打卡报警推送。
- 自动化脚本爱好者 (Automation Enthusiasts):
- 基于 Python、Shell、Node.js 等语言编写脚本,用于监控网页内容变化、检测新文件生成并即时发送实时提醒通知。
四、免费与付费方案说明
ntfy 采用 开源免许可 + 官方云服务按需订阅 的商业模式:
- 免费版/自建版 (Free / Self-hosted)
- 开源自建模式:功能无限制,完全免费使用。
- 公共主题模式 (
ntfy.sh):无需注册账号即可直接使用,但默认属于公共频道且不具备数据保留机制(消息不可长期保存)。 - 官方付费托管版 (Official Cloud Plans)
- 根据月度订阅量分为三个层级:
(1) Supporter月付:$5 / 月。
- 年付优惠:约为 $60(需自行确认)。
- 功能限制:每日最多 2,500 条消息、保留 3 个专属主题空间、附件大小上限为 25 MB、支持发送约 50 封/日的邮件通知。
(2) Pro月付价格:$10 / 月。
- 年付优惠:约为 $120(需自行确认)。
- 功能限制:每日最多 20,000 条消息、保留 10 个专属主题空间、附件大小上限为 250 MB、支持发送约 250 封/日的邮件通知。
(3) Business月付价格:$20 / 月。
- 年付优惠:约为 $240(需自行确认)。
- 功能限制:每日最多 50,000 条消息、保留 50 个专属主题空间、附件大小上限为 1 GB、支持发送约 500 封/日的邮件通知。
- 🔗 获取最新定价与详细方案请查阅官网:https://ntfy.sh/#pricing
五、快速上手指南
第一步:在客户端订阅主题 (Subscribe)
- 打开设备终端应用(如手机上的 ntfy App)或浏览器访问 ntfy.app。
- 点击页面中的 “订阅主题” (Subscribe to topic) 按钮。
- 输入一个自定义的唯一标识符作为频道名(例如:
my_alerts_01987)。
第二步:发送 HTTP 通知 (Send Notification)
在任意支持命令行的终端环境(如 macOS/Linux/Windows PowerShell)中执行以下指令:
bash
# A. 最简文本推送示例
curl -d "Backup complete 😀" ntfy.sh/my_alerts_01987
# B. 包含标题、优先级和标签的复杂格式推送
curl \
-H "Title: **警告:磁盘空间不足**" \
-H "Priority: high" \
-H "Tags: warning,server,disk_space_low" \
-d "根分区剩余可用空间低于 10%!请立即关注。" \
ntfy.sh/my_alerts_01987
# C. (可选) 使用 POST JSON 格式发送更多数据参数(如图标)
curl https://ntfy.sh/my_topic -d "{\"title\": \"Hello\", \"image\": [\"http..."]}"
六、重要注意事项与安全指南
- 主题隐私与防猜 (Privacy & Topic Security):
- 免费版服务通常不具备鉴权机制,任何知道主题名称的人均可以接收或向该频道发送消息。
- 切勿使用
test、alerts、home等容易被他人猜测的通用名称作为公共主题名。 - 建议方案:生成并使用长随机字符串(例如
my_secret_alerts_998a2b3c4d5e6f7g)以确保私密性。 - 敏感信息安全 (Data Security):
- 严禁通过公共免费主题 (
ntfy.sh) 传输密码、API Key、SSH 私钥或任何个人身份信息。 - 若需发送加密密钥,请务必自行部署私有服务器(Self-host)或使用付费版开启主题锁定功能。
- 后台保活与推送延迟 (Reliability & Latency):
- Android 设备:强烈推荐使用 Google Play 商店版本以利用 FCM (Firebase Cloud Messaging) 保证高可靠性;若使用 F-Droid 开源版,必须在系统设置中开启“电池优化允许”或后台常驻以确保 WebSocket 连接稳定。
- iOS 平台:依赖 Apple Push Notification Service (APNs),在设备进入睡眠模式或被杀进程时可能存在微小延迟,请尽量保持 App 前台运行或使用通知中心推送通道。
暂无评论