Bark 是一款ios开源的消息推送服务,如果你的数据比较敏感私密,可以选择自建该服务实现在ios上推送系统级别的消息。
隐私保护
Bark本身自带服务端,可以直接调用而无需自建后服务。但是涉及到个别隐私数据和信息时,可以选择使用自建的后端服务进行你的手机、你的服务器、Apple的推送服务器
之间进行传输。推送的历史数据也只存放在你的iCloud
中。
服务端部署
容器部署
docker run -dt --name bark-server -p 8080:8080 -v `pwd`/bark-data:/data finab/bark-server
docker-compose部署
version: '3.8'
services:
bark-server:
image: finab/bark-server
container_name: bark-server
restart: always
volumes:
- ./data:/data
ports:
- "8080:8080"
其他方式安装
也可以根据自己的平台进行安装:
https://github.com/Finb/bark-server/releases
客户端安装
iPhone/iPad/Mac(M芯片)的设备可以直接前往App Store中进行下载Bark

配置自建服务端
配置服务端
安装完客户端打开后,添加我们自己的后端服务:

此处填写你的后端服务地址例如:
# 域名
http://notify.example.com:8080
# ip
http://192.168.1.2:8080
注册设备
添加完成后端服务后,自动跳转首页点击注册设备
,注册成功后首页会出给相关推送示例。注册成功后会生成一个设备id,需要给哪个设备进行推送就需要指定哪个设备的设备id,设备id跟在你的后端服务地址后面
推送示例
简单推送文字
假设我们需要推送一串文本信息到手机上:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXXC/这里改成你自己的推送内容
此处http://192.168.1.2:8080/
是我们的后端接口地址,MdRuSWERvExwBUktjVXXXC
是我们的设备id,后面部分就是要推送的文本信息。我们只需要去访问这个接口,手机上就会收到通知。

推送带标题的通知消息
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/这里是标题/这里改成你自己的推送内容

推送带声音的消息
可以让手机接收到推送的消息时并发出声音:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/推送铃声?sound=minuet
可以用的声音有很多可以参考手机客户端的铃声列表。
自动保存收到的通知消息
你可以选择让设备自动保存通知消息:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/自动保存通知消息?isArchive=1
当isArchive
为1
时才会保存消息,其他状态的下为不保存。可以在客户端的设置中设置默认保存消息。
推送自定义图标的通知消息
自定义图标需要ios15
以上的系统才能生效:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/自定义推送图标(需iOS15或以上)?icon=https://day.app/assets/images/avatar.jpg

消息分组
对推送的消息可以进行分组查看:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXXC/测试分组/推送消息分组?group=测试分组
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXXC/研发消息/这里是研发分组消息?group=研发通知
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXXC/构建消息/这里是构建分组消息?group=构建通知

不同分组的消息会分开组合展示。
加密消息
可以对推送的消息进行加密管理,这样在传输过程过就不会导致明文泄漏:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/推送加密?ciphertext=ciphertext
时效性
有些时候,可以在手机专注模式下仍然进行消息的通知:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/时效性通知?level=timeSensitive
level
参数的可选类型:
-
•
active
:默认值,系统会立马亮屏并显示消息。 -
•
timeSensitive
:在专注默认是下仍然显示通知。 -
•
passive
:仅显示在通知列表,不会有提醒。
带url跳转的消息
携带url参数,点击消息会跳转到指定的url上:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/URL Test?url=https://www.baidu.com
可以复制的消息
点击消息的时候,可以对copy
参数指定的内容进行复制,也就是复制下来了test
:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/Copy Test?copy=test

设置消息角标
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/设置角标?badge=1
自动复制消息
对推送的消息内容,使其自动复制到剪切板中:
http://192.168.1.2:8080/MdRuSWERvExwBUktjVXXGC/自动复制推送内容到剪切板?autoCopy=1©=optional
欢迎大家关注我的公众号,将会为大家推荐更优质的内容!
原文始发于微信公众号(青檬小栈):开源项目:一分钟自建在ios/Mac上的消息推送服务
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/213103.html