首页 > 其他 > 详细

一个支持聊天机器人的开源IM

时间:2020-01-16 10:57:21      阅读:78      评论:0      收藏:0      [点我收藏+]

TinyIM

经过6个月的开发工作,TinyIM的第一个版本终于完成了。IM这么多,它有哪些不一样的地方呢?

1. 支持聊天机器人

目前的主流IM客户端的设计上,收发消息都需要通过界面完成。我们知道GUI的代码做自动化测试比较困难,TinyIM对客户端采用了将GUI和Core分离的架构设计,并在Core部分同时支持TCP协议和HTTP协议。

这样做的好处有两点:
1、可以通过同步的HTTP协议编写ImRobot;
2、可以通过同步的HTTP协议编写业务逻辑的测试代码。

光说不练假把式,还是有图有真相的好。
技术分享图片

2. 主模块跨平台

多样化的社会也是丰富多彩的社会,那么跨平台就是多样化的一个体现。TinyIM一共有4个主要的程序组成,除ClientGUI以外,其他的模块都实现了跨平台。

组件 Windows Linux MacOS
ClientCore 支持 支持 理论支持,暂未测试
ClientGUI 支持 可以通过Electron等技术支持 可以通过Electron等技术支持
ChatServer 支持 支持 理论支持,暂未测试
ImRobot 支持 支持 理论支持,暂未测试

实际测试:
在Windows平台和Ubunbu上我已经进行了测试,程序的编译和运行都没有问题。ClientGUI的部分,可以使用QT等跨平台技术开发,也可以使用Electron等技术。

3. 图示流程,注释丰富

对于每个主要的业务流程,TinyIM都力图使用流程图描述。从简单的逻辑到复杂的流程,都可以让您做到----“胸有成图,码到成功”。

发送图片流程图:

技术分享图片

看代码最郁闷的就是没有注释了,TinyIM没有这个问题。TinyIM为几乎每一个函数都添加了Doxygen风格的注释,让您轻轻松松读代码,明明白白改bug。

技术分享图片

4. 联系作者

QQ群: 106350930
邮箱: dennismi1024@gmail.com
blog: 浮生笔记

一个支持聊天机器人的开源IM

原文:https://www.cnblogs.com/Dennis-mi/p/12199980.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!