基于 Web IM SDK 打包的 uniapp 应用支持 UniPush 推送吗?

描述

基于融云 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 应用的情况,可以使用以下技术方案实现推送通知。

前提条件

  1. 启用全量消息路由。用户一旦发送消息,消息会被抄送到您业务后端服务器。
  2. 您业务后端服务器需要自行维护用户的在线状态。您可以 开通订阅用户在线状态服务 ,也可以主动查询用户在线状态
  3. 您业务后端服务器需要自行对接 UniPush

基本流程

  1. 在用户退出 App,或者退入后台的时,主动断开和融云服务器的连接。
  2. 启用全量消息路由后,用户一旦发送消息,消息会被抄送到您业务后端服务器。
  3. 在您的业务后端服务器,根据用户是否在线,判断是否需要触发推送:
    • 如果用户在线,不处理。
    • 如果用户不在线,利用 UniPush 的推送能力通知用户。
  4. 用户收到推送。打开 App 后,重连融云服务器,可收到消息。

链接

更多支持

如有疑问,欢迎提交工单