论文部分内容阅读
即时通信系统是当今比较流行的一种实时在线交互工具,是继Email和Web后的第三大互联网应用。如今即时通信系统不再局限于个人之间的信息交换,许多企业、机构和学校也开始利用即时通信系统实时交流的便利来协同办公等。但大多都是使用针对个人用户的即时通信系统,如QQ、微信等。机构或者企业使用这些即时通信系统会带来很多弊端:针对个人用户的即时通信系统不能保证机构或企业的内部的信息、的安全性和私密性;不能与机构或企业内部其他系统应用相集成;很难满足机构或企业对一些特有的功能的需求;由于缺少专门的管理机制,机构或企业很难对内部员工的各种操作行为进行有效的管理。本文针对目前企业、机构和学校使用现有即时通信系统遇到的诸多弊端问题,通过分析XMPP协议、Openfire框架,主要解决通过现有框架Openfire来实现基于XMPP协议的即时通信系统服务端的问题。通过研究此问题,在云大即时通信系统中实现基于XMPP协议与Openfire框架的轻量级即时通信系统服务端。本文通过对这一系列问题的分析,主要研究内容如下:(1)对适合于企业、机构和学校使用的轻量级即时通信系统进行分析,通过比较选择了基于C/S架构通信模式和基于XMPP协议的通信协议,并对比了当前基于XMPP协议的开源服务端框架,最后选择了Openfire框架。(2)对XMPP协议进行深入分析,对XMPP协议原理、XMPP协议架构、XMPP协议地址空间、XMPP协议通信机制、XMPP协议元素等进行分析,并针对XMPP协议在实际开发中的扩展需求,提出了在XMPP协议的XML流中加入Json格式数据的扩展方式。(3)对Openfire的源代码进行分析,研究分析了Openfire的框架原理、命名规则、后台管理机制等。同时对Openfire的二次开发扩展进行研究,分析了多种二次开发方式。并针对Openfire现有架构的复杂性,集成了目前比较流行的快速开发框架,为基于Openfire的即时通信系统服务端的快速开发提供了解决方案。(4)为了实现基于XMPP协议的即时通信系统服务端,本文提出了基于Openfire的二次开发来实现基于XMPP协议的即时通信系统服务端。对基于Openfire的即时通信系统服务端的进行开发实现,通过对基于Openfire二次开发扩展实现了基于XMPP协议的即时通信系统服务端,满足轻量级即时通信系统对服务端的需求,提供了一种基于Openfire来实现即时通信系统服务端的解决方案。