2.0已经重构完毕,架构更清晰,代码更规范,邀请各位参与OpenIM社区建设有兴趣的同学可以加我私聊。
目前侧正在业务开发,已提供更多功能,包括群管理,阅后即焚,朋友圈,标签下发等。
web端体验:https://open-im-online.rentsoft.cn/
安卓端体验:https://www.pgyer.com/OpenIM
## 项目成果
服务端超过7K star,OpenIM作为开源IM的领跑者,离不开大家的支持,消息通过经过压测和可靠性测试,请放心用于生产环境。
性能及容量总结
服务器资源:8核16G内存, 6个机械磁盘,每个磁盘100G, mongo 分片,10MB带宽。
容量:用户容量10万以上,消息条数10亿条。
性能评估:同时在线用户10万,每秒钟发送消息900条,消息延时1秒(从发送者发出消息到接收到消息)
可靠性总结
启动sdk,模拟50个用户在线、离线情况,消息可靠性100%
发送10万消息,有3条失败,其他消息都能被对方精确收到,并成功落地本地db。对于失败的3条消息,接收方确实没有收到,系统消息是一致的。
IM消息系统的可靠性,通常就是指消息投递的可靠性,即我们经常听到的“消息必达”,通常用消息的不丢失和不重复两个技术指标来表示。确保消息被发送后,能被接收者收到。由于网络环境的复杂性,以及用户在线的不确定性,消息的可靠性(不丢失、不重复)无疑是IM系统的核心指标,也是IM系统实现中的难点之一。总体来说,IM系统的消息“可靠性”,通常就是指聊天消息投递的可靠性(准确的说,这个“消息”是广义的,因为还存用户看不见的各种指令和通知,包括但不限于进群退群通知、好友添加通知等,为了方便描述,统称“消息”)。
github地址:https://github.com/OpenIMSDK/Open-IM-Server
开发者中心:https://doc.rentsoft.cn/#/
## 免费授权
| 项目 | 开源协议 | 费用 |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------ |
| [Open-IM-Server](https://github.com/OpenIMSDK/Open-IM-Server) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-Flutter](https://github.com/OpenIMSDK/Open-IM-SDK-Flutter) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-Uniapp](https://github.com/OpenIMSDK/Open-IM-SDK-Uniapp) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-iOS](https://github.com/OpenIMSDK/Open-IM-SDK-iOS) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-ReactNative](https://github.com/OpenIMSDK/Open-IM-SDK-ReactNative) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-Android](https://github.com/OpenIMSDK/Open-IM-SDK-Android) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
| [Open-IM-SDK-Web](https://github.com/OpenIMSDK/Open-IM-SDK-Web) | [Apache-2.0 License](https://github.com/OpenIMSDK/Open-IM-Server/blob/main/LICENSE) | 100%开源,免费商用 |
## 商业版授权
| 项目 | 开源协议 | 商业化授权费用 |
| ------------------------------------------- | ------------------------------------------------------------ | ------------------------------------ |
| 业务服务端 | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 购买本表格任何一项服务,赠送 |
| iOS原生 | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 2万/套,100%开源,可以基于此二次开发 |
| Android原生 | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 2万/套,100%开源,可以基于此二次开发 |
| Flutter跨端(含iOS、Android) | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 2万/套,100%开源,可以基于此二次开发 |
| electron版pc(含windwos、mac,以及pc版web) | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 2万/套,100%开源,可以基于此二次开发 |
| h5(含h5、小程序) | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 1万/套,100%开源,可以基于此二次开发 |
| 后台管理 | [GPL-3.0 License](https://github.com/OpenIMSDK/OpenMetaOffice-Flutter/blob/main/LICENSE) | 1万/套,100%开源,可以基于此二次开发 |
| 音视频通话sdk、基于SFU的服务端 | 服务端闭源 | 3万/套,100%开源,可以基于此二次开发 |
## 本周版本 客户端SDK v2.0.4 &&服务端 v2.0.5
| 特性 | 类别 |
| -------------------------------------------------- | ------- |
| 解散群,只有管理员可以解散群 | 新特性 |
| 提供搜索消息接口,包括根据关键字搜索和消息类型搜索 | 新特性 |
| 增加了管理员撤回消息接口 | 新特性 |
| 修复会话同步bug | bug修复 |
docker镜像v2.0.5 已更新,请拉取最新镜像, 见文档:https://doc.rentsoft.cn/#/demo/server_deploy/docker_singe
github tag已经发布,请自行build。
## 开发中的特性
| 特性 | 预计完成时间 |
| ------------------------------------ | ------------ |
| 私聊消息可选择阅后即焚 | 4月1日 |
| 第三方通知类型:比如oa通知,hr通知等 | 4月8日 |
| 朋友圈 | 4月22日 |
| | |
## 阅后即焚
## 推送通知
## 我们的团队
创始团队来自IM技术团队,我们致力于用开源技术创造服务价值,打造轻量级、高可用的IM架构,开发者只需简单调用 SDK,即可在应用内构建多种即时通讯及实时音视频互动场景。无论是电子政务办公,企业协同办公,在线客服,或者去中心化的web3应用,OpenIM都是最优选择。从数据安全性角度讲,OpenIM给企业提供了“一切皆可控”的IM解决方案。从成本角度讲,只需支付云服务商5%的费用就能达到同样的效果,并且,让之前不可能的商业场景变为可能。对于IM最核心的服务端和客户端SDK,大家可以免费商用。对于带有UI版本的客户端,需要商业授权,对于某些高级功能,也需要商业授权。
未来规划
(1)OpenIM开发IM+RTC, 并集成其他开源组件(适用于企业办公场景的,比如共享文档等)
(2)打造轻应用容器,让业务能轻松接入工作台;
(3)从产品形态来看,呈现出3大模块,业务重点关注工作台,并结合业务自身特性开发轻应用,集成到工作台;