[IM开源项目分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[IM开源项目分析

IM开源项目分析 软件名称 应用 开发语言 许可 标准协议 插件机制 详细说明/安装下载/源代码下载 IPMsg P2P C 自定协议 无 / /index.html.en /index.html.en jabberd1.4 服务端 C GPL XMPP 无 /1.4/ /1.4/dist/JabberD-1.4.2.exe /jabberd14/ Ejabberd 服务端 Erlang GPL XMPP 无 http://ejabberd.jabber.ru/ /en/projects/download.html /en/projects/ejabberd/download.html OpenIM 服务端 Java BSD XMPP 无 /en/ /servlets/ProjectDocumentList /servlets/ProjectDocumentList Exodus 客户端 Delphi XMPP 有 /projects/exodus/project/view.php /projects/exodus/releases/ /exodus-src.zip Miranda IM 客户端 C XMPP 有 / /release/ /cvs/?group_id=94142 Pandio 客户端 XMPP 有 http://www.pandion.be/ http://www.pandion.be/download/ Gaim 客户端 C XMPP 有 / /downloads.php /projects/gaim/ AnyQ 客户端/服务端 Delphi/C XMPP * /cpxx.htm /rjxz.htm /rjxz.htm LinQ 客户端/服务端 C XMPP ** /projects/myicq/ /projects/myicq/ Skype 客户端 ? SIP *** 基于XMPP的即时通讯网关系统的设计与实现 日期:2010-11-2 0 引言 即时通讯(Instant Messaging,IM)是通过网络即时和其他用户交换消息,查看其他用户在线状态的一种通讯方式。 目前比较流行的即时通讯应用包括国外的Yahoo Messenger、MSN、AIM,以及国内用户使用较多的QQ等。但是,基于早期的即时通讯技术和商业运营的原因,这类应用都是在专有协议和专有通讯机制的基础上设计完成的。每种即时通讯应用本身形成一个“信息孤岛”,异构的即时通讯应用之间无法互相通讯和交流。假设你想同时与在MSN和QQ上的好友交流,就必须分别安装MSN和QQ的客户端程序,分别登录不同的系统。 笔者结合实际项目,设计和开发了基于XMPP协议的即时通讯网关系统。此系统克服了异构即时通讯应用之间协议和通讯机制不统一的缺点,实现了异构系统之间的用户可以互相发送消息、查看在线状态等功能。 1 Jabber/XMPP概述 XMPP是在XML基础上开发的用于即时通讯的协议,并已经被IETF认可为Internet标准协议(RFC 3920和RFC 3921)。 XMPP是一种公开的、标准的、安全的、适应性好而且易于扩展的即时通讯协议。XMPP的最终目标是要实现发送即时消息的人不必考虑接受对方使用的是何种即时通信软件,也就是实现异构系统间的互通。 图1 系统原理图 2 XMPP网关系统结构 根据现有即时应用种类多,变化快的特点,XMPP网关系统采用中间件集成的方式。即用户通过运行XMPP应用程序登录XMPP网关系统提供的服务,即可实现与Yahoo、MSN等系统上好友的实时沟通。 基于XMPP协议的即时通讯网关系统由三层结构组成,完成XMPP应用与传统应用之间的双向协议转换。XMPP用户和传统用户均不需要知道网关系统的存在,就可以完成消息交换过程。网关系统总体结构如图2所示。 图2 系统总体结构图 2.1 XMPP应用转换层 XMPP应用转换层(XMPP Service Translate Layer)的主要作用是与XMPP应用进行通信,在XMPP协议与核心数据层之间提供转换服务。 XMPP用户与网关系统建立连接后,网关系统的XMPP应用转换层可以为XMPP 用户提供下列功能:用户注册(与传统应用的帐号绑定);修改注册信息;用户注销;用户登录、退出;添加、删除好友;发送文本消息。 XMPP用户“登录”传统应用的UML顺序图,如图3所示。 图3 XMPP用户登录顺序图 XMPP用户发起登录的前提条件是必须在网关系统中成功注册传统应用的一个帐号。用户登录实际上先向网关系统提交身份验证信息,然后网关系统再向传统即时通讯应用服务提供用户的信息,最终完成登录验证过程。 2.2核心数据层 核心数据层

文档评论(0)

1983xuesheng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档