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

ZIM 发布日志

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

2.15.0 版本

发布日期:2024-03-29

新增功能

功能项 功能描述 相关接口
群组角色 新增群组角色 “管理员”,拥有大部分群主上限,可以对修改普通群成员昵称、撤回普通群成员消息、踢人、禁言单独群成员和特定群角色。
如需了解群组角色与对应权限,请参考 群成员管理 - 设置群成员角色
setGroupMemberRole
入群验证
  • ZIMGroupAdvancedConfig 新增属性 joinModeinviteModebeInviteMode,支持在创建群组时设置入群验证模式、邀请模式、和邀请目标用户验证模式,从而方便群主和管理员限制外部用户入群。
  • 当群组的入群验证模式修改为需要目标用户审批后,群内用户需要向外部用户发起入群邀请申请,等待目标用户审批。
  • 当群组的邀请目标用户验证模式修改为需要群主和管理员审批后,外部用户发起入群申请,经由群主或管理员审批。
  • 支持用户查询入群申请相关的列表。
  • 支持在群组创建后调用客户端 API 和服务端 API 更新上述模式。
如需了解接口调用细节,请参考 群组管理
Tips 消息 支持将群内用户的某些群组操作(如创建群组、解散群组等) 转换为特殊类型消息(Tips)。凭借群组消息回调获得操作信息后,开发者可以自行构造并在 UI 上展示相关事件的描述文本。
如需了解 Tips 消息种类和扩展信息,以及调接收后的处理操作,请参考 接收 Tips 消息
自定义推送规则 支持用户在多端登录场景下,自行决定需要接收离线推送的平台,以及查询当前的离线推送规则。
如需了解接口调用细节,请参考 自定义推送规则
消息导出导入 支持将用户本地终端的历史消息导出作为备份,可用于更换设备时迁移聊天记录,或恢复被删除的消息。
如需了解接口调用细节,请参考 导出导入消息
缓存管理 支持查询当前登录用户的本地缓存文件大小,并清理本地缓存。
如需了解接口调用细节,请参考 缓存管理
退出所有房间 支持用户在多房间场景下一次性退出所有房间;也可用于开发者退出单一房间而不提前传入 roomID 的场景。 leaveAllRoom
数据迁移 支持用户通过 ZIM 服务端接口将用户数据迁移至 ZIM 服务。实现方案请参考 迁移方案 -
服务端查询会话列表 支持在服务端分页查询用户最新的 1000 个会话(单聊与群聊)。 查询会话列表
服务端查询历史消息 支持在服务端分页查询用户指定单聊或群聊会话的历史消息列表。
服务端修改群组规格 支持在服务端修改群组的入群验证模式、邀请模式、邀请目标验证模式和群成员人数上限。 修改群规格限制
服务端注销用户 支持在服务端批量注销用户。 批量注销用户

改进优化

优化项 优化描述 相关接口
检测邀请是否送达 支持在发起呼叫邀请时配置参数 enableNotReceivedCheck,检测呼叫是否触达被叫,以便主叫更快感知被叫网络状态并实现提示。 ZIMCallInviteConfig > enableNotReceivedCheck
服务端创建群组接口新增参数 新增 CreateGroupTime 参数,支持设置创建群组的事件。 创建群组
服务端增加群成员接口新增参数 新增 GroupMemberInfos 参数,支持定义入群用户的入群时间和入群模式。 创建群组


2.14.1 版本

发布日期:2024-03-05

问题修复

修复已知问题。



2.14.0 版本

发布日期:2024-02-02

新增功能

功能项 功能描述 相关接口
合并转发
  • 支持用户在收发消息后,通过构造合并消息体,传入发送消息接口即可实现转发合并消息;

    如需实现逐条转发,只需将已有消息作为参数传入发送消息接口即可。

  • 支持查询合并消息包含的子消息具体内容。
收发 @ 消息 支持用户在某个会话发送消息时,为消息设置提及指定用户(可以不在当前会话)或提及全部会话内成员。
删除消息 支持用户一次性删除全部会话的所有消息。 deleteAllConversationMessagesWithConfig
保存会话草稿 ZIM 支持用户退出单聊和群聊会话后仍在本地保存会话草稿,以便后续编辑。 setConversationDraft
单聊会话免打扰 在原有“群聊会话免打扰”的基础上,新增支持对单聊会话设置免打扰。单聊会话接收新消息后,不推送通知。 setConversationNotificationStatus
禁止发言 支持群主对群组实现群组禁言和指定群成员禁言。群组禁言支持全体禁言、普通成员禁言、指定角色成员禁言。
好友管理 用户可以直接添加和删除好友、查看看好友列表、向用户发起好友申请、同意或拒绝好友申请、查看好友申请列表、检查其他用户与自己的好友关系、查询或修改好友信息,以及搜索好友。
设置安全审核敏感词 开通安全审核后,支持开发者添加额外敏感词。当用户发送消息包含敏感词时,对该消息进行审核、替换内容或拦截。

如需使用此功能,请联系 ZEGO 技术支持。

-
服务端设置会话免打扰 支持在服务端对群聊会话和单聊会话设置免打扰状态。 设置会话消息免打扰
服务端置顶会话 支持在服务端为用户设置会话的置顶状态。 置顶会话
服务端修改群资料 支持在服务端修改置顶群组的头像、名称和公告。

如需使用此功能,请联系 ZEGO 技术支持了解详情。

-
服务端管理好友 支持在服务端为用户添加和删除好友,查询好友列表,检查好友关系,更新好友备注和属性。
服务端管理黑名单 支持在服务端为用户批量拉黑、解除黑名单、查询黑名单、检查黑名单关系。


2.13.1 版本

发布日期:2024-01-12

问题修复

修复已知问题。



2.13.0 版本

发布日期:2024-01-05

新增功能

功能项 功能描述 相关接口
多端登录 “多平台登录”策略支持配置互踢逻辑,当前仅支持 android、iOS 设备互踢,Windows、Mac 设备互踢。 loginWithUserID
离线登录 支持用户在离线状态登录 IM 服务,访问本地 SDK 数据。 loginWithUserID
黑名单管理 用户可以查询自己的黑名单、将指定用户拉黑(不再接收该用户消息)、移出黑名单、以及检查指定用户是否在黑名单内。
插入本地消息 支持向房间会话插入本地消息。 insertMessageToLocalDB
呼叫邀请 新增回调 callInvitationCreated,呼叫邀请发起者可通过监听此回调,得知呼叫邀请已创建。 callInvitationCreated
服务端撤回消息 支持从服务端调用接口撤回单聊消息和群聊消息。
服务端修改用户资料 支持从服务端调用接口修改用户资料信息,包括用户昵称、头像等。 修改用户资料

改进优化

优化项 优化描述 相关接口
优化 roomID 长度限制 支持最长 128 字节的 roomID ZIMRoomInfo > roomID
用户信息相关类新增用户头像字段 ZIMUserInfoZIMGroupMemberInfo 新增 userAvatarUrl 字段,用于设置或说明用户头像地址。

暂不支持获取房间成员的用户头像字段,即通过 queryRoomMemberListByRoomIDqueryRoomMembersByUserIDs 拿到的 ZIMUserInfouserAvatarUrl 为空。

发送单聊消息服务端接口新增响应参数 新增 SuccessList 参数,成员参数包含 UserIdMsgIdMsgSeq,说明消息接受成功用户的相关信息。MsgSeq 可用于 撤回单聊消息 发送单聊消息
发送群聊消息服务端接口新增响应参数 新增 MsgSeq,可用于 撤回群聊消息 发送群聊消息
消息发送后服务端回调新增字段 新增 user_list 字段,用于批量返回消息接收用户信息。

仅当开发者调用服务端接口 发送单聊消息 时,此字段有值。

消息发送后回调
优化 roomStateChanged 回调逻辑 当开发者调用 ZIM 服务端接口在后台销毁房间后,roomStateChanged 回调描述房间状态变化的原因修改为 ZIMRoomEventRoomNotExist roomStateChanged

废弃删除

废弃项 废弃描述 相关接口
废弃 loginWithUserInfo 接口 废弃旧版登录接口,新增新版登录接口 loginWithUserID。新版登录接口支持通过 ZIMLoginConfig 进行更多配置,如是否使用 Token 鉴权、是否离线登录。 loginWithUserID
部分用户信息相关类废弃旧版头像字段


2.12.1 版本

发布日期:2023-11-29

问题修复

修复已知问题。



2.12.0 版本

发布日期:2023-11-20

新增功能

功能项 功能描述 相关接口
地理围栏 提供地理围栏服务,保证 IM 数据存储在运营本地,适用于海外高安全场景。 setGeofencingConfig
群消息管理 支持新进入群组成员自动获取群历史消息。

如需使用此功能,请联系 ZEGO 技术支持配置。

一键已读 支持清除所有会话的消息未读数和总消息未读数。 clearConversationTotalUnreadMessageCount
呼叫邀请 支持呼叫外用户主动加入进阶模式呼叫,或呼叫内用户切换设备。 callJoin
删除所有会话列表 支持清空当前会话列表 deleteAllConversationsWithConfig
服务端新增添加群成员接口 支持将指定用户拉进至群组中。 添加群成员
服务端新增解散群组接口 支持解散指定群组。 解散群组
服务端新增转让群主接口 支持将群主转让给指定的群成员。 转让群主
服务端新增设置群成员昵称接口 支持为指定群成员设置其群昵称。 设置群成员昵称
服务端消息支持附带回执 通过服务端发送单聊消息、群聊消息时,可以附带回执功能,以便得知消息是否已读。支持的消息类型包含文本、图片、文件、音频、视频、自定义消息,详情请参考 MessageBody 说明
服务端新增登录登出回调 在用户登录、退出时,ZIM 服务端会主动回调通知给开发者服务端。 登录登出回调
全员离线推送 在调用服务端接口进行全员推送时,支持选择推送类型,实现离线推送。 全员推送

改进优化

优化项 优化描述 相关接口
登录逻辑优化 优化登录逻辑,避免了弱网环境下多设备异常互踢的情况。 -
呼叫创建服务端回调 呼叫创建服务端回调新增 caller 字段说明发起呼叫的用户,详情请参考 呼叫创建回调 -


2.11.0 版本

发布日期:2023-10-26

新增功能

功能项 功能描述 相关接口
多端登录 支持配置双平台或多平台登录策略,用户可在多平台、多设备上同时登录同一账户,实现会话、消息、群组等数据多端互通。如需了解多端登录对其他功能的影响,请参考 多端登录

仅支持专业版或旗舰版套餐用户使用此功能,且需联系 ZEGO 技术支持进行配置登录策略。

loginWithUserInfo

改进优化

优化项 优化描述 相关接口
新增服务端信令消息支持类型 支持通过服务端发送经 base64 编码后的二进制信令消息,详情请参考 MessageBody 说明 -
优化删除会话后的置顶逻辑 删除某置顶会话后,不会自动更改该会话的置顶状态(ZIMConversation > isPinned)为 No。当该会话有新消息,再次出现在会话列表时,仍为置顶会话。 -


2.10.0 版本

发布日期:2023-08-31

新增功能

功能项 功能描述 相关接口
消息表态 支持对单聊和群聊消息做出反应(即表态),一般可用于表情回复消息等场景,也可用于发起群组投票、确认群组结果等操作。此外,还支持删除自己做出的表态,以及查询某个表态相关的用户信息。
服务端发送单聊接口支持发送者无感知 新增 SenderUnaware 字段,允许通过服务端发送单聊消息后,请求参数中的 FromUserId(发送方用户 ID)所对应的客户端对此次发送无感知。 发送单聊消息
服务端新增全员推送接口 支持向所有在线用户(包括消息发送用户自己)发送特定内容的消息,如文本、图片等。本功能适用于全员活动公告、送礼跨房间飘屏等场景。
服务端新增查询用户是否在房间内接口 支持通过此接口,查询指定用户是否在目标房间内。 查询用户是否在房间内

改进优化

优化项 优化描述 相关接口
用户昵称 UserName 长度上限调整 从 64 字节扩展至 256 字节,支持更长昵称,适用于 2.0.0 及以后版本的 ZIM SDK。 ZIMUserInfo > userName


2.9.0 版本

发布日期:2023-07-18

新增功能

功能项 功能描述 相关接口
呼叫邀请新增模式 新增进阶模式,支持用户在呼叫中邀请、退出呼叫和结束呼叫。
撤回他人消息 群组会话中,群主可以撤回他人发送的消息。 revokeMessage
获取房间成员信息 支持调用服务端接口,根据房间 ID 获取房间成员的信息,包括房间用户数量、用户 ID 及名称。 获取房间成员信息
服务端消息发送接口新增支持更多消息类型 支持通过服务端接口发送图片、文件、音频、视频、自定义和弹幕类型消息,详情请参考 MessageBody 说明
下载外部富媒体消息 支持调用 downloadMediaFileWithMessage 接口,通过外部 URL 下载富媒体消息。 downloadMediaFileWithMessage
设置消息拓展字段 新增仅本端可见的消息拓展字段,支持更新该字段,可用于展示消息翻译状态或其他内容。
搜索本地消息 通过关键字、用户 ID 等条件对单个或所有 单聊群聊 会话的本地消息进行搜索,获取符合条件的消息列表;也可以基于本地消息搜索会话。
搜索群组 支持基于关键字对群组名称进行搜索,同时支持将群成员名称和群成员昵称纳入搜索范围。 searchLocalGroupsWithConfig
搜索群成员 支持基于关键字对指定群内的群成员名称进行搜索,同时支持将群成员昵称纳入搜索范围。 searchLocalGroupMembersByGroupID

改进优化

优化项 优化描述 相关接口
呼叫邀请接收回调 优化呼叫邀请普通模式,支持在呼叫邀请的超时时间内,离线用户收到呼叫邀请在上线后能够立即被通知。 callUserStateChanged

废弃删除

废弃接口 废弃说明 废弃版本
为便利开发者监听呼叫邀请中用户的呼叫状态变化,新增 callUserStateChanged,替代原呼叫邀请回调 callInvitationAcceptedcallInvitationRejectedcallInviteesAnsweredTimeout 2.9.0


2.8.0 版本

发布日期:2023-05-23

新增功能

功能项 功能描述 相关接口
置顶会话 用户可以选择想要优先查看的会话,将其固定在会话列表顶部。
自定义消息类型 新增自定义类型消息,开发者可自定义消息的类型,如投票类型、接龙类型、视频卡片类型等,并自行完成消息的解析。ZIM SDK 不负责定义和解析自定义消息的具体内容。 ZIMCustomMessage
查询会话信息 通过指定会话 ID 查询会话的详细信息。 queryConversation
查询房间内用户状态 通过指定若干 userID 和 roomID,查询目标用户是否在指定房间内,从而进行业务逻辑设计,如邀请连麦。

最多支持一次性查询 10 名用户的信息。

queryRoomMembersByUserIDs
消息发送前回调 通过设置服务端回调,在用户发送单聊、群聊或房间聊天消息时,ZIM 向开发者服务端发送请求,开发者可实现:
  • 拦截违规消息。
  • 建立用户黑白名单。
消息发送前回调
消息发送后回调 通过设置服务端回调,在用户发送单聊、群聊、房间消息成功或失败后,ZIM 向开发者服务端发送请求,开发者可实现:
  • 实时记录用户发送的消息。
  • 统计用户发送的消息。
  • 直播录屏场景中,通过录制视频的时间戳,将聊天记录嵌入到录播视频中。
消息发送后回调
批量注册用户 支持调用服务端接口,指定用户信息(用户 ID 等),开发者可实现发起一次请求,注册多名用户。

最多支持一次性注册 100 名用户。

批量注册用户
查询 App 下的群列表 支持调用服务端接口获取 App 中所有群组的 ID。 查询 App 下的群列表
查询群成员列表 支持调用服务端接口,指定群组 ID,获取对应群组的成员列表。 查询群成员列表
移除群成员 支持调用服务端接口,指定群组 ID 和用户 ID,批量群成员。

最多支持一次性移除 50 名群成员。

移除群成员

废弃删除

废弃项 废弃描述 相关接口
废弃系统消息类型 ZIMMessageType 废弃了系统消息(值为 30),开发者请使用功能更完善的自定义消息(值为 200)替代。 ZIMMessageTypeCustom

其他事项

1. 从 2.8.0 版本开始,ZIM 不再支持 iOS 11.0 以下版本,开发者的 iOS Deployment Target(最低支持版本)提升到 iOS 11.0

具体说明,请参考 App Store submission requirement starts April 25Xcode 14 Release Notes

2. 从 2.8.0 版本开始,ZIM iOS SDK 不再支持 32 位 armv7 架构

具体说明,请参考 Xcode 14 Release Notes



2.7.1 版本

发布日期:2023-03-15

问题修复

修复已知问题。



2.7.0 版本

发布日期:2023-03-07

新增功能

功能项 功能描述 相关接口
增加包管理方式 增加 swift package manager 包管理方式。 -

改进优化

优化项 优化描述 相关接口
优化用户登录时 userName 置空逻辑 区分了用户名修改接口和登录接口。用户登录时,若将 userName 置空,不再会因此修改 userName,优化用户登录体验。 userName
优化会话消息拉取时机 SDK 会智能检测当前用户的会话活跃情况,优化数据同步的时机,提升用户查询速度与体验。 -
优化断网重连时机 当 APP 断网后,SDK 会实时检测网络状态变化以及 APP 前后台变化,加快用户重连速度。 -


2.6.0 版本

发布日期:2023-01-11

新增功能

功能项 功能描述 相关接口
服务端新增呼叫邀请相关回调 用户可以通过 ZIM 服务端的回调,明确呼叫邀请的结果,适用于网络环境不好时,SDK 反馈的结果不稳定。
消息体增加扩展字段 ZIMMessage 增加 extendedData 字段,用户可以将用户头像和昵称等信息传入该字段,在聊天对话发送消息时实时展示。 extendedData
新增发送消息状态回调 开发者可以通过监听此回调来完善消息发送状态的逻辑。根据消息状态的变更,开发者可以在 UI 上做相应提醒等。 messageSentStatusChanged

改进优化

优化项 优化描述 相关接口
优化弱网情况下消息发送的逻辑 用户在弱网环境下发送消息时,SDK 会通过策略逻辑尽可能保证消息发送状态的正确性。 -


2.5.0 版本

发布日期:2022-11-30

新增功能

功能项 功能描述 相关接口
消息撤回 撤回发送成功的消息,默认撤回 2 分钟内的消息。撤回操作仅支持撤回单聊和群聊的消息,不支持撤回房间内消息。

如需配置撤回时间,请联系 ZEGO 技术支持。

消息回执 ZIMMessageSendConfig 新增 hasReceipt 参数,支持在单聊和群聊会话中发送附带回执的消息。
ZIM SDK 支持在单聊和群聊会话查看其他用户是否阅读本端发送的信息,以及支持查看群聊中已读消息和未读消息的数量,以及对应的用户信息,但是不支持信令消息、弹幕消息、以及房间内消息使用回执。
呼叫邀请支持离线推送 ZIMCallInviteConfig 新增 pushConfig 参数,支持向离线用户推送呼叫邀请。离线用户接受呼叫邀请需要搭配 ZPNs SDK 一起使用。 ZIMCallInviteConfig

改进优化

优化项 优化描述 相关接口
优化 Swift 语言 API 命名 针对 Swift,ZIM 对现有的 Objective-C 接口自动生成的 Swift API 做了手动校正,避免因 XCode 自动生成接口导致 API 歧义等问题。

若开发者使用 Swift 集成 ZIM SDK 2.5.0 版本后,出现了接口编译失败问题,只需按照 IDE 指示更改即可。接口变更详情请参考 升级指南 - ZIM

-
变更 ZIMPushConfig 的额外字段命名 为避免开发者接入概念混淆,ZIMPushConfig 的 extendedData 参数修改为 payload 参数,功能不变。开发者在使用 ZPNs SDK 时,通过厂商通道的 extras 里面的 payload 字段即可获取到发送端传入的额外字段,详情请参考 自定义点击通知获取 payload 字段

若集成 ZIM SDK 2.5.0 版本后,开发者使用了离线推送功能后出现了接口编译失败的问题,请将 extendedData 改为 payload。

-
优化富媒体消息传输协议 减少网络传输过程中的协议包大小。 -
优化 API 调用的线程安全 - -

废弃删除

1. 废弃了对 bitcode 的支持

从 2.5.0 版本开始,iOS SDK 不再支持 bitcode,请参考 Xcode 14 Release Notes 中关于废弃 bitcode 的说明。



2.4.2 版本

发布日期:2022-11-01

问题修复

修复已知问题。



2.4.0 版本

发布日期:2022-10-10

新增功能

功能项 功能描述 相关接口
管理房间用户属性 支持房间内的用户自定义用户属性。例如:用户等级、勋章、状态等信息。
新增系统消息 新增系统消息类型,支持 SDK 触发进群通知、群主替换等系统性消息。可以通过 插入本地消息 功能实现。 -
插入本地消息 支持直接向本地插入一条任意消息类型的消息。开发者可结合系统消息类型,在客户端将回调通知(例如:邀请某人进群、把某人移出群等),转为系统消息类型,插入本地 DB,以达到系统提示的效果。 insertMessageToLocalDB

改进优化

优化项 优化描述 相关接口
优化消息发送接口 优化消息对象,在发送前和发送后是同一个对象。开发者在发送“视频”等内容较大的消息时,可以在消息上传完成前,缓存该消息对象,直到收到 SDK 发送成功通知时,通过比较对象相同来实现发送前 Loading 的效果。 sendMessage
优化断网重连逻辑 优化在无网状态下、以及断网重连后的逻辑。 -
优化性能 优化数据库性能。 -

接口变更

  • 新增接口
新增接口 接口描述 上线版本
loginWithUserInfo 新增不带 Token 参数的 loginWithUserInfo 接口。开发者使用 “AppSign 鉴权” 时,可直接使用该接口登录 ZIM,接入更加便捷。 2.4.0
sendMessage 新增发送消息接口,支持发送单聊、房间、群组消息。 2.4.0
sendMediaMessage 新增富媒体消息发送接口 sendMediaMessage(同名重载),支持获取媒体上传前的信息,可发送文件、图片、音频、视频等富媒体信息。 2.4.0
  • 废弃接口
废弃接口 变更说明 废弃版本
废弃单聊消息 sendPeerMessage、房间消息 sendRoomMessage、群组消息 sendGroupMessage 3 个消息发送接口,统一使用 sendMessage 接口替代,发送消息方式更加规范。 2.4.0
sendMediaMessage 原有的发送富媒体消息 sendMediaMessage 接口废弃,替换为同名的 sendMediaMessage 接口,接口参数不同,请注意切换使用。 2.4.0


2.3.3 版本

发布日期:2022-09-09

改进优化

优化项 优化描述 相关接口
鉴权方式优化 从当前版本开始,开发者可以自主进行 “AppSign 鉴权” 和 “Token 鉴权” 的切换。

问题修复

修复已知问题。



2.3.1 版本

发布日期:2022-08-22

问题修复

修复已知问题。



2.3.0 版本

发布日期:2022-08-12

新增功能

功能项 功能描述 相关接口
新增扩展字段 支持用户通过扩展字段,设置自己的个人信息,例如用户头像、个性签名、性别等个人信息。 updateUserExtendedData
新增头像字段 用户信息及群组新增头像字段,用户可以上传自己的头像、或自定义群组头像。
支持 AppSign 鉴权

iOS、Android、macOS、Windows 平台支持 AppSign 鉴权,降低开发者接入门槛。

开发者在调用 createWithAppConfig 接口,传入 AppSign,进行鉴权,鉴权通过即可使用 ZIM 相关功能。

createWithAppConfig
图片/视频消息支持宽、高设置

方便开发者设计图片展示效果:

  • 图片消息支持设置“原图”宽、高,“大图”宽、高,“缩略图”宽、高。
  • 视频消息支持设置“首帧图“宽、高。
增加单例对象接口 便于开发者获取 ZIM 单例对象。 getInstance

改进优化

优化项 优化描述 相关接口
逻辑优化
  • 优化网络断开时、API 的逻辑表现。
  • 优化获取房间成员列表的逻辑。
-
性能优化 优化线程切换性能。 -

接口变更

  • 废弃接口
废弃接口 变更说明 废弃版本
createWithAppID 原有的 createWithAppID 接口废弃,变更为 createWithAppConfig,开发者可以通过传入 AppSign 进行鉴权,接入更加便捷。 2.3.0


2.2.3 版本

发布日期:2022-07-22

问题修复

修复已知问题。



2.2.1 版本

发布日期:2022-07-18

问题修复

修复已知问题。



2.2.0 版本

发布日期:2022-06-30

新增功能

功能项 功能描述 相关接口
更新用户名称 支持用户更新自己的名称 userName。
查询用户个人信息 支持用户查询个人信息,例如用户名称、签名等信息。
获取群组人数 支持获取群组里的成员人数。 queryGroupMemberCountByGroupID


2.1.6 版本

发布日期:2022-06-17

问题修复

修复已知问题。



2.1.5 版本

发布日期:2022-06-06

新增功能

功能项 功能描述 相关接口
安全审核 支持对单聊、群聊和房间内的通讯消息(文本消息、图片消息)进行安全审核,审核范围包含:鉴黄、暴恐、违禁、涉政、广告等。

问题修复

修复已知问题。



2.1.1 版本

发布日期:2022-05-09

问题修复

修复已知问题。



2.1.0 版本

发布日期:2022-04-29

新增功能

功能项 功能描述 相关接口
收发富媒体消息 支持用户发送和接收图片、语音、视频和文件等类型的富媒体消息。
自动创建房间 进入房间时,如果房间不存在,支持自动创建房间。 enterRoom

改进优化

优化项 优化描述 相关接口
ZIMMessage 成员属性优化 ZIMMessage 对象的成员属性改为“只读”属性,开发者发送消息时无需关注和修改其属性。 ZIMMessage


2.0.0 版本

发布日期:2022-03-21

新增功能

功能项 功能描述 相关接口
会话管理
  • 支持用户更新、查询、删除会话列表。
  • 支持拉取会话列表,承载所有会话,实现消息列表。
群组系统 支持用户登录后,创建、加入、退出、解散群聊;同时配备转让群主、设置群公告等常用功能。
离线消息推送
  • 支持“单聊/群组”消息发送给离线用户,离线用户上线后自动拉取。
  • 支持通过手机厂商,将离线消息通知推送到手机设备上,支持主流厂商(华为、小米、OPPO、vivo、Apple)多数机型。
消息管理
  • 支持“单聊/群组/房间”的所有消息存储在本地数据库中,用户更换设备也可拉取到历史信息。
  • 支持删除“单聊/群组”会话的指定消息或全部消息。
呼叫邀请
  • 支持用户登录后,向指定“用户/群组/房间”发起呼叫邀请、取消邀请;支持其他用户同意邀请、拒绝邀请。
  • 可应用于视频通话、抱麦申请等场景。

改进优化

本次迭代,我们对产品的所有已有接口和新增接口,做了统一的风格优化,开发者从 1.x.x 升级至 2.0.0 API 时,需要在代码里做以下适配。

优化项 优化描述 相关接口
API 接口命名优化
创建 ZIM 实例 接口命名优化:create 重命名为 createWithAppID
登录 接口命名优化:login 重命名为 loginWithUserInfo
查询房间成员 接口命名优化:queryRoomMember 重命名为 queryRoomMemberListByRoomID
查询房间在线成员人数 接口命名优化:queryRoomOnlineCount 重命名为 queryRoomOnlineMemberCountByRoomID
API 或回调接口新增参数
发送单聊/房间消息接口,增加 config 参数,用于设置是否配置离线推送、以及消息优先级等。
部分回调接口,增加 roomID 参数,便于开发者在调用相关接口时,获取当前操作结果来源的房间 roomID。
ZIMRoomAttributesOperatedCallback 增加了 roomID 和 errorKeys 参数,便于开发者获取房间属性时,获取当前操作结果来源的房间 roomID,同时操作失败的 key 会返回给开发者。


1.3.7 版本

发布日期:2022-02-18

问题修复

修复已知问题。



1.3.1 版本

发布日期:2021-12-27

此版本新增了后台服务端 API 接口,提升后台的消息发送能力。适用的场景更广泛,开发者可应用于在线剧本杀、在线直播、语聊房等场景中,下发场景所需音乐链接、图片链接、大批量文字等信息将更加便捷。

接口变更

  • 新增接口
新增服务端 API 接口 接口描述
发送单聊消息(POST 方式) 采用 POST 方式,向指定用户发送消息,消息大小限制为 32 KB。
发送房间消息(POST 方式) 采用 POST 方式,向房间内发送消息,并推送给房间内所有在线用户,消息大小限制为 32 KB。
  • 废弃接口
废弃接口 变更说明 废弃版本
发送单聊消息(GET 方式) 原有的 GET 请求方法(消息大小限制为 2 KB)废弃,变更为 发送单聊消息(POST 方式),消息大小限制扩大为 32 KB,适用场景更广泛。 1.3.1
发送房间消息(GET 方式) 原有的 GET 请求方法(消息大小限制为 2 KB)废弃,变更为 发送房间消息(POST 方式),消息大小限制扩大为 32 KB,适用场景更广泛。 1.3.1

改进优化

优化项 优化描述 相关接口
优化断网重连逻辑 优化断网重连逻辑。 -

问题修复

修复了请求超时逻辑在特殊场景下的异常问题。



1.3.0 版本

发布日期:2021-11-09

新增功能

功能项 功能描述 相关接口
新增“房间属性”功能

房间属性指房间内保存的 Key-Value 属性对,开发者可以使用此功能为房间设置自定义信息。

此功能可用于语聊房、直播等场景,用来记录房间背景图地址、各用户的角色身份、设备状态等自定义信息。

接口变更

  • 新增接口
新增接口 接口描述
createRoom 创建带高级设置的房间。
setRoomAttributes

设置房间属性。

  • 当 Key 不存在时,调用此接口,将自动添加此 Key-Value 属性对。
  • 当 Key 存在时,调用此接口,将更新 Value 值。

此接口支持同时设置多个 Key-Value,后台默认最多可设置 10 个 Key-Value 属性对。

deleteRoomAttributesByKeys 删除房间属性。调用此接口,传入 Key 即可删除,支持同时删除多个 Key-Value 属性对。
queryRoomAllAttributes 查询房间内设置的属性信息。
beginRoomAttributesBatchOperationWithRoomID

开始进行房间属性的组合式操作,支持组合调用设置和删除房间属性。组合操作可将同一房间中,多个不同操作合并为一个原子操作进行执行,通常用于连续操作时不想被其他用户操作插入执行的场景中。

在此接口之后调用的 setRoomAttributes 和 deleteRoomAttributesByKeys 将会被同时发送到后台执行。

endRoomAttributesBatchOperationWithRoomID

结束进行房间属性的组合式操作。

调用此接口之后将请求后台执行组合式操作。

onRoomAttributesUpdated 房间内有属性对更新时,相关信息的回调。
onRoomAttributesBatchUpdated 房间内有使用组合式操作来更新房间属性时,相关信息的回调。

问题修复

  1. 修复部分房间生命周期问题。
  2. 修复其他已知问题。


1.2.1 版本

发布日期:2021-10-13

改进优化

优化项 优化描述 相关接口
SDK 接口优化 roomStateChanged 回调新增 roomID 参数。 roomStateChanged

问题修复

修复 roomStateChanged 接口某些场景不回调的问题。



1.2.0 版本

发布日期:2021-09-07

新增功能

功能项 功能描述 相关接口
支持 SDK 线上依赖 支持开发者使用 Cocoapods 自动集成 SDK,提升集成效率。 实现基本消息收发 - 集成

改进优化

优化项 优化描述 相关接口
SDK 错误码优化 优化后台返回码,便于开发者排查问题,提升接入体验。 服务端 API - 全局返回码
SDK 内部重连逻辑优化 优化内部断网重连逻辑,提高系统稳定性。 -


1.1.0 版本

发布日期:2021-08-13

首次发布,支持 1v1 通信、多人房间聊天等功能。

本篇目录