迁移方案
ZIM 可为开发者提供全平台互动、海量并发、超低延时、消息必达的通信服务,助力打造大型直播、语聊房、客服系统等场景。如果开发者希望从其他通信服务迁移至 ZIM,可参考本文档处理数据迁移。
基本概念
- 旧系统:原通信服务。
- 新系统:ZIM。
- App 1.0:使用 旧系统 的开发者 App。
- App 2.0:基于 新系统 的开发者 App。
强制升级方案
强制升级,是指完成向 ZIM 服务器同步数据后,强制将开发者的 App 版本从 1.0 升级至 2.0,主要流程如下:
- 导入历史数据至 ZIM 服务器,包括:
- 强制用户从 App 1.0 升级到 App 2.0。
- 老系统下架,所有用户通信均在新系统进行。
详细迁移操作
(首要)导入账号
导入账号是后续导入各种数据的前提。您的 App 后台需要调用 ZIM 服务端接口 批量注册用户 将原有账号全部导入到 ZIM 后台。
导入用户资料
您的 App 后台需要调用 ZIM 服务端接口 修改用户资料,以便将存量用户资料导入 ZIM 后台。
导入用户好友信息和黑名单信息
说明
在 ZIM 中,黑名单与好友二者没有关系,两名用户既可以是好友,也可以互相拉黑。
调用 批量添加好友 接口,将用户的好友信息导入 ZIM。
调用 批量拉黑用户 接口,将用户的黑名单信息导入 ZIM。
导入单聊历史消息
调用 导入单聊消息 接口,将用户的单聊会话消息导入 ZIM。
导入群组数据和群聊历史消息
流程如下:
多 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 不会存在相同的群,不存在数据合并问题。