现在消息推送接收服务有很多,有邮箱、钉钉、pushplus等等,使用邮箱或者钉钉这类来进行消息推送基本都有次数限制,比如邮箱每天只能发送一定数量的邮件并且邮件这种难免有点笨重,每次看消息都需要点开邮箱应用才能看到消息。
基于此,今天介绍另一个推送服务——Bark,支持自建。推送形式和我们日常使用的app推送一样,就显示到我们手机最上方。
Bark
Bark有以下有点:
- 免费、轻量!简单调用接口即可给自己的iPhone发送推送。
- 依赖苹果APNs,及时、稳定、可靠
- 不会消耗设备的电量, 基于系统推送服务与推送扩展,APP本体并不需要运行。
- 隐私安全,可以通过一些方式确保包含作者本人在内的所有人都无法窃取你的隐私。
Bark虽然有很多优点,但美中不足的是只支持ios,安卓用户只能无缘了。
整个软件开源在github上,后端:GitHub – Finb/bark-server: Backend of Bark,APP端:GitHub – Finb/Bark: Bark is an iOS App which allows you to push custom notifications to your iPhone
如果推送的消息不是很重要的话建议直接用免费的推送服务,如果消息很私密的话还是自建吧,本篇两种都会介绍一下。
使用官方服务推送
ios用户直接去商店下载即可,下载链接:App Store 上的“Bark – 给你的手机发推送” (apple.com)
软件通过http服务来进行推送,访问https://api.day.app/你自己的key/这里改成你自己的推送内容
这个链接就会推送了。
可以自定义消息的title和图标。
1 |
/:key/:body |
自定义图标的话系统需要ios15以上
1 |
https://api.day.app/你的key/推送测试/自定义推送图标?icon=https://wx.qlogo.cn/mmopen/3DKCx066JZ8PLNmUicAMPFiaxxPq8cIP5LB8koSIGdrHllvn3U0SZTE8nKnceggqdF3WjvOOWTFYkNGJ0TRjpGjHN3xsyjLEPa/64 |
推送效果如下,可玩性还是非常高的。
支持GET、POST表单形式和POST JSON形式,自己开发的时候根据个人喜好来。
支持的参数列表,具体效果可在APP内预览。
参数 | 说明 |
---|---|
title | 推送标题 |
body | 推送内容 |
level | 推送中断级别。 active:默认值,系统会立即亮屏显示通知 timeSensitive:时效性通知,可在专注状态下显示通知。 passive:仅将通知添加到通知列表,不会亮屏提醒。 |
badge | 推送角标,可以是任意数字 |
autoCopy | iOS14.5以下自动复制推送内容,iOS14.5以上需手动长按推送或下拉推送 |
copy | 复制推送时,指定复制的内容,不传此参数将复制整个推送内容。 |
sound | 可以为推送设置不同的铃声 |
icon | 为推送设置自定义图标,设置的图标将替换默认Bark图标。 图标会自动缓存在本机,相同的图标 URL 仅下载一次。 |
group | 对消息进行分组,推送将按group分组显示在通知中心中。 也可在历史消息列表中选择查看不同的群组。 |
isArchive | 传 1 保存推送,传其他的不保存推送,不传按APP内设置来决定是否保存。 |
url | 点击推送时,跳转的URL ,支持URL Scheme 和 Universal Link |
自建服务
服务端支持docker启动,建议使用此种方式部署,这里我是用的docker-compose来管理容器。
1 |
mkdir bark && cd bark |
启动后可以自定义域名反代到我们的服务上,之前已经操作很多遍了这里就不过多介绍了。为了你的通信安全,自定义域名反代弄好后最好申请个ssl证书。
现在我们手机端和自建服务端都弄好了,接下来该是把他俩关联起来。
切换到 App,点击右上角的「+」进入添加私有服务器页面,填写你的自定义域名
。
至此整个推送服务就搭建完成了,之后推送的时候就访问你自己的自定义域名就行了,例如https://你的自定义域名/你自己的key/这里改成你自己的推送内容
闲聊
-
本期项目挺不错,APP通知交互也挺好看,可以配合日常的定时任务通知或者当个备忘录通知提醒。
-
虽然还没到周末,但时程已经被安排满满当当了,不知道周末还能不能去看花。