即时通讯
  • iOS : Objective-C
  • Android
  • macOS
  • Windows
  • Web
  • 小程序
  • Flutter
  • Unity3D
  • uni-app
  • React Native
  • 产品简介
  • 下载
  • 快速开始
    • 跑通示例源码
    • 实现基本消息收发
  • 用户相关
  • 房间相关
  • 群组相关
  • 消息相关
  • 呼叫邀请
  • 会话管理
  • 缓存管理
  • 离线推送
  • 语音组件
  • 客户端 API
  • 服务端 API
  • 迁移方案
  • SDK 错误码
  • 常见问题
  • 文档中心
  • 即时通讯
  • 迁移方案

迁移方案

更新时间:2024-03-29 23:07

ZIM 可为开发者提供全平台互动、海量并发、超低延时、消息必达的通信服务,助力打造大型直播、语聊房、客服系统等场景。如果开发者希望从其他通信服务迁移至 ZIM,可参考本文档处理数据迁移。

基本概念

  • 旧系统:原通信服务。
  • 新系统:ZIM。
  • App 1.0:使用旧系统的开发者 App。
  • App 2.0:基于新系统的开发者 App。

强制升级方案

强制升级,是指完成向 ZIM 服务器同步数据后,强制将开发者的 App 版本从 1.0 升级至 2.0,主要流程如下:

  1. 导入历史数据至 ZIM 服务器,包括:
  2. 强制用户从 App 1.0 升级到 App 2.0。
  3. 老系统下架,所有用户通信均在新系统进行。

详细迁移操作

(首要)导入账号

导入账号是后续导入各种数据的前提。您的 App 后台需要调用 ZIM 服务端接口 批量注册用户 将原有账号全部导入到 ZIM 后台。

导入用户资料

您的 App 后台需要调用 ZIM 服务端接口 修改用户资料,以便将存量用户资料导入 ZIM 后台。

导入用户好友信息和黑名单信息

在 ZIM 中,黑名单与好友二者没有关系,两名用户既可以是好友,也可以互相拉黑。

调用 批量添加好友 接口,将用户的好友信息导入 ZIM。

调用 批量拉黑用户 接口,将用户的黑名单信息导入 ZIM。

导入单聊历史消息

调用 导入单聊消息 接口,将用户的单聊会话消息导入 ZIM。

导入群组数据和群聊历史消息

流程如下:

  1. 调用 创建群组 接口,将现有群组信息和群成员导入 ZIM。
  2. 如果导入群组信息后发现群成员有误,可以调用 添加群成员移除群成员 进行调整。
  3. 调用 导入群聊消息 接口导入历史群聊消息。

多 App 数据合并说明

如果您希望将多个 App 的用户数据导入到 ZIM 后台,请参考以下指引。

用户资料

如果一个用户的资料出现在两个 App 里,请合并后一次性导入。如果导入多次,第一次导入的结果会被覆盖。

用户关系链

如果在 App 1 中,用户 A 与用户 B 是好友;在 App 2 中,用户 A 与用户 C 是好友,无需特殊处理。这两条好友信息导入 ZIM 后,B 与 C 都是 A 的好友。

如果在两个 App 中,用户 A 与用户 B 都是好友,则仅需导入一次,重复导入会失败。

单聊历史消息

如果用户 A 与用户 B 在两个 App 里之间都有聊天消息。导入单聊消息后,消息会合并到一个会话里。建议将原本两个 App 的消息合并在一个 App。

群组数据、群聊历史消息

两个 App 不会存在相同的群,不存在数据合并问题。

本篇目录