论文部分内容阅读
即时消息继Email和Web之后已经成为互联网的重要应用之一,它以交流实时性、在线性服务与文本交互性等特征,成为了人们在日常生活与办公环境中,进行交流沟通与协同工作的必备工具。随着手机和移动设备应用的不断进步,即时消息与移动和无线的融合更是成为当前的研究热点。移动即时通信业务基于已经产生收入的文本消息,例如短消息服务。移动即时通信还是一个新的领域,技术尚不成熟,提供的功能也比较简单。互联互通、在线性服务以及安全问题等是当前移动即时通信急需解决的几个关键问题。针对上述分析与需求,本文深入研究了一种全新的、开放的Jabber即时通信技术,概述了移动即时通信系统的设计与实现,通过开源的、面向对象的脚本语言—Python设计和实现了移动即时通信系统的PC客户端。首先,本文分析了Jabber技术的原理,对当前比较流行的两种协议SIMPLE与XMPP在功能、扩展能力和成熟度等特征方面作了对比分析,并详细分析了XMPP协议与Jabber技术的原理与应用,包括Jabber技术优势、Jabber系统实现、Jabber消息格式以及Jabber运行原理等几个方面。然后,简单介绍了移动即时通信系统的总体设计,重点研究了移动即时通信PC客户端,采用简单客户端的思想,设计和实现了客户端的主要功能模块,在客户端中独立出用户代理机来进行所有与服务器相关的通信以及协议的逻辑处理,针对该机制详细设计了客户端主要功能的数据流程。接着,分析了客户端的实现环境,通过比较当前几种常用技术VC++、Delphi等的优缺点,针对本系统是简单客户端并需要快速开发等特点,选定了Python脚本语言和Eclipse开发环境实现PC客户端,分析了基于Python的客户端实现流程,通过代码示例具体分析了程序实现的几个细节问题,并研究与实现了客户端的界面换肤功能。最后,分析了系统实现过程中的几个关键问题:实时语音流、穿越防火墙以及数据的安全传输等问题,给出了详细的解决方案。