# 重要-即时通讯IM开源项目OpenIM关于版本管理及v2.3.0发布计划

越来越多的客户把OpenIM用到了生产环境,由于新特性持续迭代和bug修复,会涉及到后续的升级方案,为了让大家后续从容应对,本文重点总结OpenIM对未来版本管理的思路和方案。同时,官网对于文档进行了全面更新,有部分端的文档需要在下周完成。

版本管理

OpenIM版本管理较为复杂,涉及到服务端版本,以及多端SDK版本。由于OpenIM的SDK底层使用golang实现,所以aar/framework和go core SDK(Open-IM-SDK-Core https://github.com/OpenIMSDK/Open-IM-SDK-Core) 版本保持一致。而插件层会修复自身bug从而带来版本号的变化,所以插件也有自身的版本号。服务端和客户端SDK只需要大版本(版本号第一位数字)保持一致即可。

用例子说明版本号管理

(1)比如go core SDK是2.0.1 (稳定版)
(2)aar包2.0.1 aar和go core SDK版本保持一致;
(3)flutter2.0.1+a 前面三位数保存一致, a b c 是修复自身bug后的版本号
(4)app 自身版本独立,如2.11.2, 但需要在app里面增加一项,表示使用了SDK版本号为2.0.1+a

go sdk版本(github Open-IM-SDK-Core tag)aar/framework版本Flutter sdk版本iOS sdk 版本Android sdk 版本js sdk 版本uniapp 版本app/pc版本
2.0.12.0.12.0.1+1 前面和core保持不变2.0.1.1 前面2.0.1保持不变2.0.1.1 前面2.0.1保持不变2.1.0-beta.1前面和core保持一致2.0.1和core保持一致应用版本可以完全独立,但需要展使用sdk详细版本信息。

版本发布过程2.0.1-rc0 =》2.0.1-rc1 =》 2.0.1(稳定版)

项目成果

从服务端到客户端SDK开源即时通讯(IM)整体解决方案,可以轻松替代第三方IM云服务,并能根据业务需求高度自定义和二次开发,打造具备聊天、社交、办公功能的app。

OpenIM继续领跑开源IM领域,在广大开发者的大力支持下,目前github star持续突破。越来越多的开发者把OpenIM应用在社交,协同办公领域。在运营过程中也暴露并修复了代码的一些bug,由于使用场景广泛,OpenIM越来越健壮,开源价值也凸显出来了。

在这里插入图片描述

github地址: https://github.com/OpenIMSDK/Open-IM-Server

开发者中心:https://doc.rentsoft.cn/#/

V2.2.0稳定版

V2.2.0稳定版发布时间:2022年7月1日

平台支持

以下平台都支持消息互通,SDK和服务端代码100%开源,采用Apache-2.0 License协议,任何团队和个人都可以免费商用。demo主要展示SDK如何使用。商业版是OpenIM团队在开源的服务端和SDK基础上,开发带有UI功能完整的IM产品

平台SDK 及兼容性源码Demo商业版
Android兼容android5.0及以上版本100%开源100%开源有,针对付费客户开放
iOS兼容iOS 11.0及以上版本100%开源100%开源有,针对付费客户开放
Flutter兼容flutter2.0及以上版本100%开源100%开源有,针对付费客户开放
Uniapp100%开源100%开源有,针对付费客户开放
Electron100%开源100%开源有,针对付费客户开放
小程序100%开源100%开源
Web100%开源100%开源有,针对付费客户开放
Linux100%开源100%开源

帐号功能

功能说明
帐号禁用设置Token踢出状态,强制用户踢出
帐号导入把用户导入OpenIM
用户在线状态查询用户是否在线,以及具体哪些端在线
查询帐号查询帐号是否导入

多端登录

功能说明
单平台登录Android、iPhone、iPad、Windows、Mac 只能1端在线;Web 可10端同时在线

消息类型

功能说明
文本消息消息内容是普通文本
图片消息消息内容为图片 URL 地址、尺寸、图片大小等信息
表情消息表情消息为开发者自定义
语音消息语音数据需要提供时长信息,以秒为单位
地理位置消息消息内容为地理位置标题、经度、纬度信息
文件消息消息内容为文件的 URL 地址、大小、格式等信息,格式不限,不限制大小。
短视频消息消息内容为视频文件的 URL 地址、时长、大小、格式等信息,不限制大小。
自定义消息开发者自定义的消息类型,例如红包等形式的消息
系统通知消息包含内置的系统通知消息和开发者自定义系统通知消息
Tips 消息包括群、好友、用户信息修改等Tips
合并消息最大支持10条消息合并
清空所有消息清除个人的本地和服务端消息
图片视频文件支持MinIO,cos,oss上传

会话功能

功能说明
删除会话支持删除本地;支持删除本地,同时删除服务端
设置会话免打扰设置会话免打扰,单聊 群聊
置顶会话置顶/取消置顶

设置功能

功能说明
设置全局免打扰设置后能收到消息,但不提醒

消息功能

功能说明
离线消息用户登录后退到后台,当有用户给其发消息时,即时通信 IM 支持离线推送
漫游消息在新设备登录时,将服务器记录(云端)的历史消息存储进行同步,默认为全量同步。
多端同步多终端消息同步,可同时收到消息
历史消息支持本地历史消息和云端历史消息
消息撤回撤回投递成功的消息,撤回时间由UI自己控制
已读回执查看单聊/群聊会话中对方的已读未读状态,对于群聊可以查看哪些人已读/未读
消息转发将消息转发给其他用户或群组
@功能群内 @ 消息与普通消息没有本质区别,仅是在被 @ 的人在收到消息时,需要在 UI 上做特殊处理
正在输入支持
离线推送目前整合了个推、极光推送
消息删除支持仅删除本地,或者同时删除本地和服务端
消息回复支持对消息进行回复
本地消息搜索支持搜索好友,搜索群组、群成员;搜索消息,按照会话分组

阅后即焚

功能说明
私聊阅后即焚在私聊时,双方都可以开启或者关闭阅后即焚状态,在阅后即焚开启后,对方已读后,可以开启30秒倒计时,双方删除

用户功能

功能说明
设置用户资料用户设置自己的昵称、头像、性别、年龄等资料
获取用户资料用户查看自己、好友及陌生人资料
当前登录用户资料变更回调通过监听回调,及时刷新UI界面
自定义用户资料设置ex字段
用户通知监听回调登录用户信息修改,连接成功/失败,token过期,被踢下线

关系链功能

功能说明
查找好友可通过用户帐号 ID 查找好友
申请添加好友申请添加好友,需对方同意
导入好友支持导入双向好友关系
删除好友成为好友后可以删除好友
获取所有好友获取所有好友
同意/拒绝好友收到请求加好友请求的系统通知后,可以通过或者拒绝
添加用户到黑名单把任意用户拉黑,如果此前是好友关系,仍然保留
移除黑名单把用户从黑名单中移除
获取黑名单列表拉取用户黑名单列表
好友备注成为好友后可以给好友备注
校验好友支持校验单向好友关系
校验黑名单支持校验单向黑名单
获取收到的的好友申请列表被添加的好友申请列表
获取主动发出去的好友申请列表主动申请添加其他人为好友的申请列表
好友通知监听回调包括好友申请,好友列表变更,好友资料变更;
黑名单通知监听回调用户黑名单列表变更

群组功能

目前群组采用写扩散模型,会导致消息复制多份,同时不支持新成员查看进群前的历史消息。

功能说明
群容量人数无上限,建议控制在一万人以内
创建群任何人可以创建群
群资料属性群名,群头像,群简介,群公告,群扩展字段
进群模式群成员邀请直接入群;所有人直接进群;所有人都需要验证;群主和管理员验证通过
获取收到的群申请列表群主管理员可以查看其他用户的入群申请
获取发出的群申请列表查看本用户入群申请列表
获取群成员列表拉取群成员信息,支持分页拉取
群主转让现有群主转让群主身份给群成员
群成员类型群主、管理员、普通成员
管理员设置群主可以增减管理员
群组资料修改权限群主、管理员可修改:群名,群头像,群简介,群公告,群扩展字段
修改群成员昵称群主可以修改所有人的群昵称。 管理员只能修改普通群成员的群昵称。
修改自己的群昵称群成员修改群内昵称,群昵称默认为用户昵称
消息类型支持同消息类型
消息提醒接收消息但不提示;屏蔽群消息
历史消息支持
离线消息支持
消息漫游支持
指定成员强制推送@群内 @ 消息与普通消息没有本质区别,仅是在被 @ 的人在收到消息时,需要在 UI 上做特殊处理
群消息已读回执支持,后台可以配置是否启用,群消息哪些人已读未读
踢人群主和管理员可以踢人,且管理员不能踢群主和其他管理员
主动退群除群主外,其他用户均可以主动退群。 群主需先将群转让给其他群成员才可以进行退群操作
禁言群主管理员对普通成员禁言、解除禁言
转让群群主可以将群的拥有者权限转给群内的其他成员,转移后, 被转让者变为新的群主,原群主变为普通成员。
解散群群主管理员可以解散群
群通知监听回调包括群信息修改,群成员变更,个人进群列表变更,以及群申请通知。

v2.3.0重要特性

预计v2.3.0-rc0发布时间为2022年7月20日

版本特性预计发布时间
群聊写扩散增加读扩散机制,解决消息存储冗余问题2022-7-20
优先同步群聊最新消息,按需拉取历史消息2022-7-20
服务端加入一致性缓存,优化db读写性能2022-7-20
支持单群百万级超级大群2022-7-20
支持新入群用户查看历史消息2022-7-20

我们的团队

有部分读者总在质疑现在乐此不疲做聊天 app还有什么价值?这里统一回答一下,OpenIM不是一个独立的聊天工具,是IM统一解决方案,OpenIM用开源技术创造服务价值,打造轻量级、高可用的IM架构,开发者只需简单调用 SDK,即可在应用内构建多种即时通讯及实时音视频互动场景,打造社交,还是电商客服,或者游戏互动等场景。相比于其他云服务商,OpenIM有其优势:开源,安全,可靠,低成本。对于信息安全重视的电子政务,企业协同办公,OpenIM都是非常好的选择。从公司成立之初就将“开源”作为核心战略来推进,以公司化运营打造开源IM,充分体现了自由、平等、分享的互联网精神。OpenIM邀请全球技术极客来参与OpenIM建设,使每位开发者都能免费使用最优秀的IM组件,让每个app都具备即时通讯能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值