CN101212474A - 一种基于即时通信技术的文件发布方法 - Google Patents
一种基于即时通信技术的文件发布方法 Download PDFInfo
- Publication number
- CN101212474A CN101212474A CNA2006101716457A CN200610171645A CN101212474A CN 101212474 A CN101212474 A CN 101212474A CN A2006101716457 A CNA2006101716457 A CN A2006101716457A CN 200610171645 A CN200610171645 A CN 200610171645A CN 101212474 A CN101212474 A CN 101212474A
- Authority
- CN
- China
- Prior art keywords
- file
- server
- document
- publishing
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种基于即时通信技术的文件发布方法,包括初始化过程和文件发布机制,其初始化过程是由XMPP网络中的IM服务器定义合法文件服务器的IP地址和JID标识,并建立一个在线文件服务器列表的过程;文件发布机制包括:文件发布者通过客户端向发布服务器发送发布消息;发布服务器从在线文件服务器列表中选择一个在线文件服务器,将该在线文件服务器的JID标识返回给信息发布者;文件发布者将发布文件以及该文件的属性信息传送给所述文件服务器;所述文件服务器向发布服务器发送发布消息;发布服务器在发布文件列表中添加一条新记录。本发明优点在于:发布者不必保持在线;减少发布者的网络流量;提高了用户下载文件时的服务质量。
Description
技术领域
本发明涉及多业务融合的网络服务***,特别涉及到一种基于即时通信技术的文件发布方法。
背景技术
IM(Instant Messaging,即时通信)是一种实时的互联网交流方式,是继电子邮件和万维网之后的第三大互联网应用。IM主要用于私人之间的日常交流和保持联系,除此之外,它还被广泛地应用于办公领域,如讨论问题、协商工作进程等。IM的实时性,使它能够有效地用于服务器之间传递数据,进行远程服务调用。很多公司都开始将IM作为一条主线,围绕其展开多项特色服务,有效融合其各项业务。如基于IM技术的文件传输、语音视频服务、新闻订阅服务、网络游戏服务等。
XMPP(Extensible Messaging and Presence Protocol,可扩展消息处理及在线协议)是一套先进的即时通信协议。它采用XML(Extensible Makeup Language,可扩展标记语言)语言定义协议中的命令和数据,利用XML通用性强、易扩展,以及机器可读的优点,方便了协议在功能上的扩展及其在应用上的互通。XMPP核心协议由RFC(Request for Comments)3920和RFC 3921组成,包含了一系列扩展协议(XEPs,XMPP Extension Protocols)。扩展协议XEP-0060定义了一种发布订阅机制,而XEP-0137在此基础上提供了一种发布流式(stream)信息的办法。其典型步骤为:1、信息消费者到发布服务器上订阅某种类型的信息;2、信息发布者往发布服务器上发布某个类型的信息;3、发布服务器通知所有订阅了该类型信息的消费者;4、信息消费者到信息发布者处获取实际的信息。上述机制存在诸多不足之处,如只有信息发布者在线时,消费者才能获取它发布的信息;所有信息消费者都需要到发布者处获取信息,增加了发布者的网络流量;当信息发布者网速较慢或发布信息很大时,消费者的服务质量难以保证。
发明内容
本发明的目的在于克服XMPP扩展协议的缺陷,提高基于即时通信技术文件发布的服务质量,从而提供一种基于即时通信技术的文件发布方法。
为达到上述发明目的,本发明提供的基于即时通信技术的文件发布方法,包括初始化过程和文件发布机制。
所述服务器初始化过程包括以下步骤:
11)由XMPP网络中的IM服务器定义合法文件服务器的IP(InternetProtocol,因特网协议)地址和JID(Jabber Identifier,Jabber标识符)标识,并建立一个在线文件服务器列表;其中,IM服务器实现了XMPP扩展协议XEP-0060中所述发布订阅功能;
12)文件服务器根据XMPP协议将服务支持信息发送到IM服务器;
13)IM服务器根据消息发布者的IP地址和JID标识,判断该实体是否为合法的文件服务器,如合法,向所述文件服务器反馈成功信息,并将该文件服务器加入到在线文件服务器列表中;否则,向所述文件服务器反馈失败消息。
所述文件发布机制包括如下步骤:
21)文件发布者通过客户端向发布服务器发送发布消息;所述发布消息含有发布文件的属性信息;所述发布文件的属性信息包括该文件的唯一标识、描述与类型;
22)发布服务器根据发布文件的唯一标识判断该文件是否已经存在于发布服务器的发布文件列表中,如果已经存在,根据所述发布消息更改发布服务器中该发布文件的属性信息,向文件发布者返回成功消息,发布过程完成;否则,继续执行步骤23);
23)发布服务器根据消息发布者的IP地址和JID标识,判断该发布者是否为合法文件服务器之一,如果是,继续执行步骤27);否则继续执行步骤24);
24)发布服务器从在线文件服务器列表中选择一个在线文件服务器,将该在线文件服务器的JID标识返回给文件发布者;
25)文件发布者将发布文件以及该文件的属性信息传送给步骤23)中选择的文件服务器;
26)所述文件服务器向发布服务器发送发布消息,所述发布消息含有步骤24)中接收到的发布文件的属性信息;所述发布文件的属性信息包括该文件的唯一标识、描述与类型;
27)发布服务器在发布文件列表中添加一条新记录,所述新记录中包含所述发布文件的属性信息。
所述步骤11)中,所述IM服务器定义合法的文件服务器是将具有一系列IP地址或一系列JID标识的服务器作为的合法的文件服务器。IM服务器用这种办法来防止任意客户端伪装成文件服务器来盗取用户信息。
所述发布文件的属性信息还包括文件名称、文件大小,文件格式,文件创建时间,文件版权信息等。
所述发布文件的唯一标识由两部分组成,第一部分是文件内容摘要,第二部分为文件发布者的JID标识;所述内容摘要根据文件的内容通过哈希算法(如MD5、SHA1等)生成。内容摘要只与文件的内容本身相关,而与文件的其它属性如描述、类型等无关。***中,具有同样内容摘要的文件可以看作是同一个文件。
所述步骤24)中,从在线文件服务器列表中选择一个在线文件服务器时采用随机选择算法,Round-Robin算法或其它能够在多个文件服务器之间实现负载均衡的选择算法。
本发明提供的文件发布方法,作为XMPP扩展协议所述信息发布订阅方法的一个补充。使用此方法发布文件后,发布者不必保持在线,其他用户可以从文件服务器下载到该发布文件;发布者发布文件后,无论该文件被下载多少次,对发布者都只产生一次流量,减少了发布者的网络流量;文件服务器网速和带宽更有保证,提高了用户下载文件时的服务质量。
附图说明
图1是本发明的文件发布的总体框架图;
图2是本发明服务器初始化的流程图;
图3是本发明文件发布的流程图;
图4是本发明文件发布的时序图;
图5是本发明所涉及的三类实体的示意图。
具体实施方式
本发明提供的文件发布解决方案,涉及到三类实体:IM服务器、文件服务器和客户端(如图5所示)。
其中,IM服务器是实现了XMPP基本协议和相关扩展协议的即时通信服务器,它包含负责管理信息发布订阅的模块,本发明中称为发布服务器。发布服务器拥有独立的JID,能够与其它客户端通信。IM服务器主要负责用户管理、消息路由、订阅关系管理等基础功能。
客户端指实现了XMPP协议即时通信客户端,它通常是硬件设备上的软件实体。
文件服务器负责存储用户发布的文件,作为一个特殊的客户端来实现,拥有独立的JID,能够通过IM服务器与其它客户端通信。
客户端可以通过各种无线或有线方式连接到IM服务器,包括xDSL(使用电话线方式进行数据通信的传输机制)、WLAN(802.11a、802.11b、802.11g等)、WWAN(802.16)以及各种以太网接入方式(10Mbps、100Mbps、1000Mbps以及10Gbps)。
IM服务器和文件服务器则通过以太网局域网直接连接。
下面结合附图和具体实施例,对本发明提供的基于即时通信技术文件发布方法作进一步阐述。
本发明提供的基于即时通信技术文件发布方法包括初始化过程和文件发布机制。
实施例1
如图1所示,本发明提供的基于即时通信技术的文件发布包括:
步骤100:初始化过程。
步骤200:文件发布方法。
本实施案例中,步骤100的初始化过程如图2所示,包括如下子步骤:
步骤110:通过配置文件或者数据库,定义合法文件服务器的IP地址和JID标识,并初始化一个空的在线文件服务器列表;
步骤111:文件服务器将其所提供的功能和实现的服务细节发送给IM服务器。本实施案例中通过xmlns=http://jabber.org/protocol/disco#infopub来表明该实体实现了本发明中所述的扩展协议;
步骤112:IM服务器根据消息发送者的IP地址和JID标识,判断该实体是否合法的文件服务器。IP地址和JID标识都可以直接从会话属性中直接获取,不需要消息中额外附带;
步骤113:如果该实体是合法的文件服务器,IM服务器将它加入在线文件服务器列表中;否则,IM服务器反馈错误信息。
如图3和图4所示,步骤200的文件发布方法包括如下子步骤:
步骤210:提供界面,供用户输入待共享文件的类型和描述等属性;
步骤211:客户端向发布服务器发送发布命令,命令中包含了该发布文件的唯一标识、类型和描述等属性。本实施案例中,文件的唯一标识由两部分组成,第一部分为文件内容的SHA1摘要,第二部分为文件发布者的JID。
步骤212:发布服务器收到消息后,通过文件的唯一标识检查该文件是否已经存在于发布文件列表中,如果已经存在,根据所述发布消息更改发布服务器中该发布文件的属性信息(发布文件的属性信息还可以包括文件名称、文件大小,文件格式,文件创建时间,文件版权信息等),向文件发布者返回成功消息;否则,继续执行步骤213。
步骤213:发布服务器根据文件发布者的IP地址和JID标识判断该发布者是否为合法的文件服务器之一,如果是,继续执行步骤217;否则,继续执行步骤214;
步骤214:发布服务器从在线文件服务器列表中选择一个在线文件服务器,将该在线文件服务器的JID标识返回给文件发布者。从在线文件服务器列表中选择一个在线文件服务器时采用随机选择算法,Round-Robin算法或其它能够在多个文件服务器之间实现负载均衡的选择算法。
步骤215:文件发布者将发布文件以及该发布文件的属性信息传送给步骤214)中选择的文件服务器,并指定该发布文件的创建者为该文件发布者的JID;
步骤216:所述文件服务器向发布服务器发送发布消息,所述发布消息含有步骤215)中接收到的发布文件的属性信息;所述发布文件的属性信息包括该文件的唯一标识、描述与类型。
步骤217:发布服务器在发布文件列表中添加一条新记录,所述新记录中包含所述发布文件的属性信息。
Claims (4)
1.一种基于即时通信技术的文件发布方法,包括初始化过程和文件发布机制,其特征在于,
所述服务器初始化过程包括以下步骤:
11)由XMPP网络中的IM服务器定义合法文件服务器的IP地址和JID标识,并建立一个在线文件服务器列表;其中,IM服务器是实现了XMPP扩展协议XEP-0060中发布订阅功能的IM服务器;
12)文件服务器根据XMPP协议将服务支持信息发送到IM服务器;
13)IM服务器根据文件服务器的IP地址和JID标识,判断该文件服务器是否为合法的文件服务器,如合法,向所述文件服务器反馈成功信息,并将该文件服务器加入到在线文件服务器列表中;否则,向所述文件服务器反馈失败消息。
所述文件发布机制包括如下步骤:
21)文件发布者通过客户端向发布服务器发送发布消息;所述发布消息含有发布文件的属性信息;所述发布文件的属性信息包括该文件的唯一标识、描述与类型;
22)发布服务器根据发布文件的唯一标识判断该文件是否已经存在于发布服务器的发布文件列表中,如果已经存在,根据所述发布消息更改发布服务器中该发布文件的属性信息,向文件发布者返回成功消息,发布过程完成;否则,继续执行步骤23);
23)发布服务器根据文件发布者的IP地址和JID标识判断该发布者是否为合法文件服务器之一,如果是,继续执行步骤27);否则,继续执行步骤24);
24)发布服务器从在线文件服务器列表中选择一个在线文件服务器,将该在线文件服务器的JID标识返回给信息发布者;
25)文件发布者将发布文件以及该文件的属性信息传送给步骤24)中选择的文件服务器;
26)所述文件服务器向发布服务器发送发布消息,所述发布消息含有步骤25)中接收到的发布文件的属性信息;所述发布文件的属性信息包括该文件的唯一标识、描述与类型;
27)发布服务器在发布文件列表中添加一条新记录,所述新记录中包含所述发布文件的属性信息。
2.按权利要求1所述的基于即时通信技术的文件发布方法,其特征在于,所述发布文件的属性信息还包括文件名称、文件大小,文件格式,文件创建时间,文件版权信息。
3.按权利要求1所述的基于即时通信技术的文件发布方法,其特征在于,所述发布文件的唯一标识由两部分组成,第一部分是文件内容摘要,第二部分为信息发布者的JID标识;所述内容摘要根据文件的内容通过哈希算法生成。
4.按权利要求1所述的基于即时通信技术的文件发布方法,其特征在于,所述步骤24)中,从在线文件服务器列表中选择一个在线文件服务器时采用随机选择算法,Round-Robin算法或其它能够在多个文件服务器之间实现负载均衡的选择算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101716457A CN101212474B (zh) | 2006-12-31 | 2006-12-31 | 一种基于即时通信技术的文件发布方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101716457A CN101212474B (zh) | 2006-12-31 | 2006-12-31 | 一种基于即时通信技术的文件发布方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101212474A true CN101212474A (zh) | 2008-07-02 |
CN101212474B CN101212474B (zh) | 2010-08-11 |
Family
ID=39612141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101716457A Expired - Fee Related CN101212474B (zh) | 2006-12-31 | 2006-12-31 | 一种基于即时通信技术的文件发布方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101212474B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010031310A1 (zh) * | 2008-09-19 | 2010-03-25 | 华为技术有限公司 | 一种基于xmpp协议访问业务的方法、装置及*** |
CN102546646A (zh) * | 2012-01-17 | 2012-07-04 | 深圳市乐唯科技开发有限公司 | 一种实现语音对讲功能的***及方法 |
CN102571799A (zh) * | 2012-01-17 | 2012-07-11 | 深圳市乐唯科技开发有限公司 | 一种实现服务器扩展的***及方法 |
CN104426895A (zh) * | 2013-09-09 | 2015-03-18 | 联想(北京)有限公司 | 信息处理方法以及终端设备 |
CN105787379A (zh) * | 2014-12-24 | 2016-07-20 | 北京奇虎科技有限公司 | 信息管理方法和***、及电子设备 |
CN106888240A (zh) * | 2015-12-16 | 2017-06-23 | 天脉聚源(北京)科技有限公司 | 一种页面数据发布方法及*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060179153A1 (en) * | 2004-03-22 | 2006-08-10 | Nam-Yul Lee | Streaming based contents distribution network system and methods for splitting, merging and retrieving files |
CN100407686C (zh) * | 2004-08-31 | 2008-07-30 | 腾讯科技(深圳)有限公司 | 基于即时通讯工具的网络存储服务中对象共享的实现方法 |
-
2006
- 2006-12-31 CN CN2006101716457A patent/CN101212474B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010031310A1 (zh) * | 2008-09-19 | 2010-03-25 | 华为技术有限公司 | 一种基于xmpp协议访问业务的方法、装置及*** |
CN102546646A (zh) * | 2012-01-17 | 2012-07-04 | 深圳市乐唯科技开发有限公司 | 一种实现语音对讲功能的***及方法 |
CN102571799A (zh) * | 2012-01-17 | 2012-07-11 | 深圳市乐唯科技开发有限公司 | 一种实现服务器扩展的***及方法 |
CN102546646B (zh) * | 2012-01-17 | 2015-06-24 | 深圳市乐唯科技开发有限公司 | 一种实现语音对讲功能的***及方法 |
CN104426895A (zh) * | 2013-09-09 | 2015-03-18 | 联想(北京)有限公司 | 信息处理方法以及终端设备 |
CN104426895B (zh) * | 2013-09-09 | 2018-07-03 | 联想(北京)有限公司 | 信息处理方法以及终端设备 |
CN105787379A (zh) * | 2014-12-24 | 2016-07-20 | 北京奇虎科技有限公司 | 信息管理方法和***、及电子设备 |
CN105787379B (zh) * | 2014-12-24 | 2018-10-16 | 北京奇虎科技有限公司 | 信息管理方法和***、及电子设备 |
CN106888240A (zh) * | 2015-12-16 | 2017-06-23 | 天脉聚源(北京)科技有限公司 | 一种页面数据发布方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN101212474B (zh) | 2010-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101212474B (zh) | 一种基于即时通信技术的文件发布方法 | |
CN1855910B (zh) | 基于Web的统一通信***和方法以及Web通信管理器 | |
EP1981219A1 (en) | An apparatus for providing the end-to-end qos guarantee and a method thereof | |
CN101102211A (zh) | 一种数据会议中共享文档的方法及其*** | |
KR101859235B1 (ko) | 범용 플러그 앤 플레이 가능 텔레포니 장치들과 무선 영역 네트워크 장치들 사이의 멀티미디어 회의 시스템 및 방법 | |
US8379544B2 (en) | Communications | |
CN101056320B (zh) | 一种数据会议中的文件传输方法及其*** | |
US20070253407A1 (en) | Enhanced VoIP services | |
US20130132547A1 (en) | Apparatus and Method for Address Book Automation Over a Trust Network | |
MXPA06014817A (es) | Metodo, sistema y programa de computadora para permitir el descubrimiento basado en evento de protocolo de inicio de sesion de servicios y contenido dentro de una comunidad construida sobre informacion de contexto. | |
US8228824B2 (en) | VoIP contextual information processing | |
WO2007140721A1 (fr) | procédé et système pour une transmission de données d'homologue à homologue | |
CN1976322A (zh) | 一种实现多媒体即时通讯的方法、***和控制流程 | |
CN101984430A (zh) | 一种移动终端多用户协同图形编辑的方法及*** | |
CN102209120A (zh) | 一种基于p2p技术的游戏画面共享***及方法 | |
WO2023000936A1 (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
US7983247B2 (en) | Metadata collection | |
WO2013189338A2 (zh) | 实现会话发起协议多业务服务器分发的方法、装置及*** | |
JP6254530B2 (ja) | 連絡先情報の購読を招待する装置及び方法 | |
JP2009539313A (ja) | 向上したネットワーク通信 | |
CN101399781B (zh) | 一种消息发送方法、***、消息发送装置及消息服务器 | |
CN116708391A (zh) | 信令协商方法、信息传输方法及内容分发*** | |
CN106487890A (zh) | 一种基于xmpp协议的跨节点通讯网络请求方法 | |
CN101026813B (zh) | 在通信***中进行信息处理的方法 | |
Timmerer et al. | Guest editorial adaptive media streaming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100811 Termination date: 20121231 |