YiChat 是一款包含 IM 服务端,Api 服务端,Android客户端,iOS客户端的即时通讯系统。
该系统的 IM 服务器端基于 Tigase 二次开发,做了很多的优化设置,如:
增加消息回执确认消息送达和接收
所有消息加入时间戳
消息分类存库和不存库
离线推送
状态监听等等
客户端的开发工作更为巨大,IMServer 给我们提供消息传输的接口,但是更多的功能点:如果断线重连,单点登陆,回执交互,消息分类,自定义协议,数据存储,消息通知等等。总之一坑未填一坑又起。这也是为何 Tigase 或者 openfire 开源这么久,并没有普及到小公司和众多开发者的原因之一。
本项目包含的开源工程:
IM 服务器(负责即时通讯消息):直接部署,无需修改参数
API 服务器(非 IM 模块相关的其他业务逻辑)需修改一处参数,详见工程下文档
Android 客户端:需配置参数,连接自己的服务器 IP,详见工程文档
iOS 客户端:需配置参数,连接自己的服务器 IP。详见工程文档
拥有自己的IM服务器,不再受制于第三方通讯云的限制.
提供了一个完善优化的客户端源码,具体参见体验包:
Android
iOS