ntfy: 用 HTTP 请求给手机发推送

ntfy 是什么 ntfy(读作 notify)是一个开源的发布/订阅推送服务。脚本用一个普通的 HTTP PUT/POST 把消息发到某个 topic,订阅了这个 topic 的手机 App、浏览器或其他脚本就会收到通知。 不需要注册账号,topic 第一次被用到时自动创建 服务端是一个 Go 程序,可以用官方的 ntfy.sh,也可以自己部署 客户端:Android(Google Play / F-Droid)、iOS(App Store)、网页(Web Push),都是开源的 典型用途是让无人值守的脚本在出结果时通知人:备份完成、CI 失败、定时任务出错、AI agent 跑完一个任务。 最简单的用法 手机装好 App,订阅一个 topic,比如 wiloon-enx-agent-7f3k9q,然后: # Plain message curl -d "Backup finished" ntfy.sh/wiloon-enx-agent-7f3k9q # Title, priority, tags (emoji shortcodes) and a link opened on tap curl \ -H "Title: enx-agent: #51 merged" \ -H "Priority: default" \ -H "Tags: white_check_mark" \ -H "Click: https://github.com/wiloon/enx/pull/203" \ -d "PR #203 merged, issue #51 closed" \ ntfy.sh/wiloon-enx-agent-7f3k9q 常用的请求头: ...

Created 17176-10-17 · Updated 17176-10-17 · 2 min · 406 words · -

iPhone App Notification Troubleshooting 收不到通知排查

现象 手机是 iPhone 15 Pro,上面装了一个即时通讯 App(下文称「某 App」)。有新消息时,锁屏和横幅都没有提示。打开 App 后,顶部会先显示 “Updating”,更新完才能在 App 里看到新消息。 iOS 系统设置里该 App 的通知配置看起来都没问题: Allow Notifications 已开启 Notification Delivery 是 Immediate Delivery Background App Refresh 已开启 原因分析 打开 App 时显示 “Updating”,说明消息是 App 启动后自己去服务器拉下来的,在这之前推送没有送到手机。 即时通讯类 App 的通知一般走这条链路:App 的服务器把通知发给 Apple Push Notification service(APNs),APNs 再推给手机,App 本身不需要在后台运行。所以问题一般出在两处:服务器没有发推送,或者推送没能经过 APNs 到达手机。 Background App Refresh 控制的是 App 在后台刷新数据,和远程推送基本无关,开不开都不影响通知。 检查清单 按常见程度排序,建议依次检查。 1. 是否在电脑端或 Web 端同时在线 不少 IM 服务的逻辑是:用户在桌面客户端或 Web 端在线时,就不再给手机发推送,以免同一条消息在多台设备上重复提醒。 关掉电脑上的客户端和浏览器里的 Web 页面,然后用另一个账号给自己发一条消息,看锁屏能不能收到 在 App 的设备管理页面(通常叫 Devices 或「登录设备」)查看还有哪些会话在线,不用的可以退出 2. App 内部的通知设置 iOS 系统设置之外,App 内部往往还有自己的一套通知开关: ...

Created 8086-10-08 · Updated 8086-10-08 · 1 min · 187 words · -