鸿蒙原生IM即时通讯RainbowTalk,纯ArkTS,基于开源MobileIMSDK框架

0 阅读1分钟

1、基本介绍

**RainbowTalk 是一套基于 MobileIMSDK 开源通信框架的产品级纯血鸿蒙NEXT端IM系统。**RainbowTalk与姊妹产品 RainbowChat技术同源 ,不同于市面上某些开源或售卖的demo级代码,RainbowChat已被成千上万真实的客户使用过,解决了大量的产品逻辑、代码逻辑、细节优化等问题。

RainbowTalk 由纯ArkTS编写、全新开发,没有套壳、也没走捷径,原生“纯血”(详见:《RainbowTalk详细介绍》)。

RainbowTalk 是 RainbowChatRainbowChat-Web 的姊妹产品。

2、关于MobileIMSDK开源框架

MobileIMSDK 是一套全平台开源IM即时通讯聊天框架,超轻量级、高度提炼,一套API优雅支持UDPTCPWebSocket 三种协议,客户端支持iOS、Android、H5、小程序、Uniapp、标准Java、纯血鸿蒙等,服务端基于Netty编写,性能卓越、易于扩展。

工程同步开源地址:

3、功能情况

1) 支持文本消息、语音留言消息、图片消息、大文件消息(支持断点上传)、短视频消息、个人名片、群名片、Emoji表情、消息撤回、消息转发、消息引用、“@”功能、“扫一扫”功能等;

**

2) 支持一对一陌生人聊天模式;


3) 支持一对一正式好友聊天模式;


4) 支持多对多群聊聊天模式;


5) 完善的群组信息管理:建群、退群、解散、转让、邀请、踢人、群公告等;


6) 完整的注册、登陆(同时支持手机验证码登录和密码登录)、密码找回等功能闭环;


7) 个人中心功能:改基本信息、改个性签名、改头像、改密码等;


8) 支持个人相册查看;


9) 完整的离线消息/指令拉取机制;


10) 完整的本地消息/指令缓存机制,节省网络流量;


11) 完整的富媒体文件(语音、大文件、图片、短视频)缓存机制,节省网络流量;


12) 完整的好友关系管理:查找好友、发出请求、处理请求、删除好友、好友备注等;

**

4、技术亮点

1) 与姊妹产品RainbowChat 技术同源(算法和功能逻辑历经时间考验和大量客户面辐射,可靠性一定优于短时间内堆砌功能的产品);

**

2) 从通信底层到上层功能,完全自主开发——版权清晰、技术资产可控;


3) 超轻量级——纯ArkTS编写且无任何重依赖;


4) 通讯核心层基于MobileIMSDK 工程,保证了业务代码与通信核心的高度分层(经验不足的IM产品是做不到这一点的);


5) 支持完整的消息送达保证(QoS)机制,保证送达率,理论丢包率约为0.0001%;


6) 基于 MobileIMSDK 工程的自有协议,未来的流量压缩对于APP端的节电控制和流量控制、服务端的网络吞吐等都有完全的控制能力;


7) 完善的网络状况自动检测、断网重连等服务自动治愈能力;


8) 核心通信算法和实现均为自主原创(历经10年,并非开源拼凑),保证了技术的持续改进、升级、扩展;


9) 聊天协议兼容和互通:实现了与姊妹产品RainbowChatRainbowChat-Web的完全兼容和消息互通;

**

5、技术原则

为了更易学习、研究、2次开发,RainbowTalk始终遵从:

1) 界面与通信解偶:UI界面与网络通信层和数据处理层代码解耦,UI界面的重构、维护、改版都非常容易和优雅;

3) 核心内聚和收敛:得益于长期的提炼和经验积累,网络通信核心层高度封装,开发者无需理解复杂网络算法。

4) 纯 ArkTS 实现:纯ArkTS编写,无重量级框架和库依赖(更无Native代码),可干净利落地对接各种既有系统;

5) 跨平台运行能力:受益于鸿蒙系统的跨端特性,理论上本应用的客户端可运行于任何支持鸿蒙Next的平台上;

6) 架构设计简洁:简单直接,易于学习,能少一个分层则绝不强行炫技;

7) 简单地就是最好的:始终贯彻简单直接的互联网产品技术理念。

6、主要功能运行截图

本文内容引用自:www.52im.net/thread-4822…