描述
基于融云 Web 版 IM SDK 开发 uni-app 应用(Web/小程序),是否可以支持 UniPush 推送?
UniPush 是 DCloud 联合个推公司推出的集成型统一推送服务,是所有uni-app开发者首选的推送服务。
分析(根因分析、需求分析)
目前 Web IM SDK 本身不支持 uni-app 打包后的推送。如有需要,您可以结合融云服务端提供的消息路由和用户在线状态能力,由您的业务服务器自行对接 UniPush,在合适的时机触发推送通知。
如果开发 Android/iOS 平台应用,您可以直接选用 uni-app 版 IM SDK。该版本 SDK 需搭配 DCloud 插件市场 的 RCUniIM 原生插件使用,支持推送。注意,uni-app 版 SDK 仅适用于 Android 及 iOS 平台。如需开发 Web/小程序,您需要使用 Web IM SDK。
解决方案
针对使用 Web 版 IM SDK 开发 uni-app 应用的情况,可以使用以下技术方案实现推送通知。
前提条件
- 启用全量消息路由。用户一旦发送消息,消息会被抄送到您业务后端服务器。
- 您业务后端服务器需要自行维护用户的在线状态。您可以 开通订阅用户在线状态服务 ,也可以主动查询用户在线状态。
- 您业务后端服务器需要自行对接 UniPush 。
基本流程
- 在用户退出 App,或者退入后台的时,主动断开和融云服务器的连接。
- 启用全量消息路由后,用户一旦发送消息,消息会被抄送到您业务后端服务器。
- 在您的业务后端服务器,根据用户是否在线,判断是否需要触发推送:
- 如果用户在线,不处理。
- 如果用户不在线,利用 UniPush 的推送能力通知用户。
- 用户收到推送。打开 App 后,重连融云服务器,可收到消息。
链接
更多支持
如有疑问,欢迎提交工单。