ZIM 发布日志
2.18.0 版本
发布日期:2024-10-15
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
群备注 | 支持用户对某个群组设置仅自己可见的群备注。详情请参考 群资料管理 - 修改群备注。 | |
用户在线状态 | 不仅支持用户通过订阅以持续关注其他用户的在线状态变化,还支持一次性查询其他用户的当下的在线状态,也支持用户查询自己的订阅列表。此外,在多端登录场景下,用户可以监听自己的在线平台变化。详情请参考 在线状态订阅。 | |
获取房间用户头像 | 用户现在可以通过 ZIMRoomMemberInfo 类的 userAvatarUrl 属性,查询房间内其他用户的头像信息。 | ZIMRoomMemberInfo > userAvatarUrl |
切换房间 | 新增 switchRoomFromRoomID 接口以切换房间,适用于秒开等需要平滑切换房间的业务场景。详情请参考 房间管理 - 切换房间 | switchRoomFromRoomID |
服务端查询用户信息 | 支持在服务端通过用户 ID 查询用户的信息,包含用户名称、用户头像和扩展字段。 | 查询用户信息 |
服务端撤回房间消息 | 支持从服务端调用接口撤回房间消息。 | 撤回房间消息。 |
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
首次拉取会话列表耗时优化 | 优化用户登录后首次拉取会话列表的时效,提升用户体验。 | queryConversationListWithConfig |
服务端发送群聊消息响应参数优化 | 服务端 API SendGroupMessage 的响应参数新增 MsgId ,可用于定位消息。 | 发送群组消息 |
消息发送后回调参数优化 | 当消息发送失败,消息发送后回调中的 msg_id 参数将不再为空。 | 消息发送后回调 |
从服务端获取消息拓展字段 | 支持通过消息发送前回调中的 payload 参数获取用户发送消息时传入的拓展字段。 | 消息发送前回调 |
MessageBody 扩展字段长度可上调 | MessageBody 结构中的 ExtendedData 长度上限默认为 1 KB。如需上调,请联系 ZEGO 技术支持。 | MessageBody 说明 |
2.17.1 版本
发布日期:2024-08-15
问题修复
修复已知问题。
2.17.0 版本
发布日期:2024-08-02
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
内容审核 | 无需额外开发,即可实现对消息的安全审核。
| - |
会话标记 | 支持用户对会话设置标记,适用于需要关注某会话或无法处理某条会话的场景。可使用本功能实现会话分组,即对多个会话设置相同的标记。客户端实现流程请参考 标记会话,服务端实现流程请参考 设置会话标记。 | |
会话列表查询 | 支持将标记、会话类型和是否包含未读消息作为过滤项获取会话列表。详情请参考 标记会话。 | queryConversationListWithConfig |
特定会话未读消息总数查询 | 支持按标记作为过滤项获取未读消息总数。详情请参考 标记会话。 | queryConversationTotalUnreadMessageCount |
回复消息 | 支持用户在会话内针对某条消息进行回复,当前支持回复文本、图片、文件、音频、视频、合并和自定义消息。此外,还支持用户查询回复树,获取回复的完整消息列表。详情请参考 回复消息。 | |
获取特定历史消息列表 | 支持查询指定的历史消息列表,适用于需要了解某条消息的上下文的场景。详情请参考 获取历史消息。 | queryMessagesByMessageSeqs |
服务端离线消息推送无限频 | 支持开发者在调用服务端接口 发送单聊消息 和 发送群组消息 向国内 Android 厂商进行无限频离线推送。 | MessageBody 说明 - OfflinePush - PushStrategyId |
服务端发送房间消息接口支持发送者有感知 | 新增 SenderUnaware 字段,允许通过服务端发送房间消息后,请求参数中的 FromUserId (发送方用户 ID)所对应的客户端对此次发送有感知。 | 发送房间消息 |
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
计费优化 | 优化 ZIM 各个版本间的计费梯度和规格,新增内容审核的费用说明,详情请参考 计费说明。 | - |
2.16.0 版本
发布日期:2024-05-31
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
服务端管理呼叫邀请 | 支持在服务端发起、接受和拒绝呼叫邀请。 | |
服务端管理禁言 | 支持在服务端禁言群组和特定群成员。 | |
服务端设置群成员角色 | 支持在服务端修改群成员的角色。 | 设置群成员角色 |
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
优化回执 | 包含回执过期状态实时感知,支持离线查询回执详情,支持查询群人数超过 100 人的群回执详情; | |
呼叫邀请 | 支持用户进行进阶模式呼叫邀请时,通过 callCancelWithInvitees 接口单独传入某个指定的 userID,仅对该用户取消呼叫,不影响全局呼叫状态。 | callCancelWithInvitees |
2.15.0 版本
发布日期:2024-03-29
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
群组角色 | 新增群组角色 “管理员”,拥有大部分群主上限,可以对修改普通群成员昵称、撤回普通群成员消息、踢人、禁言单独群成员和特定群角色。 如需了解群组角色与对应权限,请参考 群成员管理 - 设置群成员角色。 | setGroupMemberRole |
入群验证 |
|
|
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 |
用户信息相关类新增用户头像字段 | ZIMUserInfo 和 ZIMGroupMemberInfo 新增 userAvatarUrl 字段,用于设置或说明用户头像地址。注意:暂不支持获取房间成员的用户头像字段,即通过 queryRoomMemberListByRoomID 和 queryRoomMembersByUserIDs 拿到的 ZIMUserInfo 的 userAvatarUrl 为空。 | |
发送单聊消息服务端接口新增响应参数 | 新增 SuccessList 参数,成员参数包含 UserId 、MsgId 和 MsgSeq ,说明消息接受成功用户的相关信息。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)所对应的客户端对此次发送无感知。 | 发送单聊消息 |
服务端发送房间消息接口支持发送者有感知 | 新增 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,替代原呼叫邀请回调 callInvitationAccepted 、callInvitationRejected 和 callInviteesAnsweredTimeout 。 | 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 不再支持 macOS 10.13 以下版本,开发者的 macOS Deployment Target(最低支持版本)提升到 macOS 10。13
具体说明,请参考 App Store submission requirement starts April 25 及 Xcode 14 Release Notes。
2.7.1 版本
发布日期:2023-03-15
问题修复
修复已知问题。
2.7.0 版本
发布日期:2023-03-07
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
优化用户登录时 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 参数,功能不变。 说明:若集成 ZIM SDK 2.5.0 版本后,开发者使用了离线推送功能后出现了接口编译失败的问题,请将 extendedData 改为 payload。 | - |
优化富媒体消息传输协议 | 减少网络传输过程中的协议包大小。 | - |
优化 API 调用的线程安全 | - | - |
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 |
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
逻辑优化 |
| - |
性能优化 | 优化线程切换性能。 | - |
接口变更
- 废弃接口
废弃接口 | 变更说明 | 废弃版本 |
---|---|---|
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
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
会话管理 |
| |
群组系统 | 支持用户登录后,创建、加入、退出、解散群聊;同时配备转让群主、设置群公告等常用功能。 | |
消息管理 |
| |
呼叫邀请 |
|
改进优化
本次迭代,我们对产品的所有已有接口和新增接口,做了统一的风格优化,开发者从 1.x.x
升级至 2.0.0
API 时,需要在代码里做以下适配。
优化项 | 优化描述 | 相关接口 |
---|---|---|
API 接口命名优化 | 创建 ZIM 实例 接口命名优化:create 重命名为 createWithAppID。 | createWithAppID |
登录 接口命名优化:login 重命名为 loginWithUserInfo。 | loginWithUserInfo | |
查询房间成员 接口命名优化:queryRoomMember 重命名为 queryRoomMemberListByRoomID。 | queryRoomMemberListByRoomID | |
查询房间在线成员人数 接口命名优化:queryRoomOnlineCount 重命名为 queryRoomOnlineMemberCountByRoomID。 | queryRoomOnlineMemberCountByRoomID | |
API 或回调接口新增参数 | 发送单聊/房间消息接口,增加 config 参数,用于设置是否配置离线推送、以及消息优先级等。 | |
部分回调接口,增加 roomID 参数,便于开发者在调用相关接口时,获取当前操作结果来源的房间 roomID。 | ||
ZIMRoomAttributesOperatedCallback 增加了 roomID 和 errorKeys 参数,便于开发者获取房间属性时,获取当前操作结果来源的房间 roomID,同时操作失败的 key 会返回给开发者。 | ZIMRoomAttributesOperatedCallback |
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
新增功能
功能项 | 功能描述 | 相关接口 |
---|---|---|
新增“房间属性”功能 | 房间属性指房间内保存的 此功能可用于语聊房、直播等场景,用来记录房间背景图地址、各用户的角色身份、设备状态等自定义信息。 |
接口变更
- 新增接口
新增接口 | 接口描述 |
---|---|
createRoom | 创建带高级设置的房间。 |
setRoomAttributes | 设置房间属性。
此接口支持同时设置多个 Key-Value,后台默认最多可设置 10 个 Key-Value 属性对。 |
deleteRoomAttributesByKeys | 删除房间属性。调用此接口,传入 Key 即可删除,支持同时删除多个 Key-Value 属性对。 |
queryRoomAllAttributesByRoomID | 查询房间内设置的属性信息。 |
beginRoomAttributesBatchOperationWithRoomID | 开始进行房间属性的组合式操作,支持组合调用设置和删除房间属性。组合操作可将同一房间中,多个不同操作合并为一个原子操作进行执行,通常用于连续操作时不想被其他用户操作插入执行的场景中。 在此接口之后调用的 setRoomAttributes|_ 和 deleteRoomAttributesByKeys 将会被同时发送到后台执行。 |
endRoomAttributesBatchOperationWithRoomID | 结束进行房间属性的组合式操作。 调用此接口之后将请求后台执行组合式操作。 |
roomAttributesUpdated | 房间内有属性对更新时,相关信息的回调。 |
roomAttributesBatchUpdated | 房间内有使用组合式操作来更新房间属性时,相关信息的回调。 |
问题修复
- 修复部分房间生命周期问题。
- 修复其他已知问题。
1.2.1 版本
发布日期:2021-10-13
改进优化
优化项 | 优化描述 | 相关接口 |
---|---|---|
SDK 接口优化 | roomStateChanged 回调新增 roomID 参数。 | roomStateChanged |
问题修复
修复 roomStateChanged 接口某些场景不回调的问题。
1.2.0 版本
发布日期:2021-09-07
首次发布,支持 1v1 通信、多人房间聊天等功能。