CN103118069A - 基于xmpp协议的实现机顶盒之间即时通信的方法 - Google Patents
基于xmpp协议的实现机顶盒之间即时通信的方法 Download PDFInfo
- Publication number
- CN103118069A CN103118069A CN2012105761315A CN201210576131A CN103118069A CN 103118069 A CN103118069 A CN 103118069A CN 2012105761315 A CN2012105761315 A CN 2012105761315A CN 201210576131 A CN201210576131 A CN 201210576131A CN 103118069 A CN103118069 A CN 103118069A
- Authority
- CN
- China
- Prior art keywords
- server
- client
- customer end
- sends
- response
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
一种基于XMPP协议的实现机顶盒之间即时通信的方法,包括:当客户端A和客户端B在同一个服务器A网络中,客户端A和客户端B之间的通信:①客户端A将她的信息传送到服务器A;②服务器A再将信息寄送给客户端B,如果客户端B不在线,那么存储信息以待稍后寄送;当客户端A和客户端B分别在服务器A和服务器B的网络中,客户端A和客户端B的通信包括下列步骤:①客户端A将信息传送到服务器A;②服务器A打开与服务器B的链接;③服务器B再将信息寄送给客户端B,如果B不在线,那么存储信息以待稍后寄送。本发明实现头端和终端机顶盒之间以及机顶盒之间的即时通信,建立了一个真正的互联互通的数字电视***。
Description
技术领域
本发明涉及数字电视技术领域,特别是一种基于XMPP协议的实现机顶盒之间即时通信的方法。
背景技术
现有的数字机顶盒通讯模式有两种:
信息以广播形式从头端发布到终端数字机顶盒。
终端数字机顶盒以http形式发送请求到头端,头端对请求进行响应,再以点对点形式发送内容到终端机顶盒。
可扩展消息处理现场协议(以下简称为XMPP)是基于可扩展标记语言(以下简称为XML)的协议,它用于即时消息(以下简称为IM)以及在线现场探测。它促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作***和浏览器不同。
现有的数字机顶盒通信模式主要存在以下弊端:
1、客户端定时发起询问。在较多客户端的环境下,鉴于服务器端的性能,不得不将询问周期拉长,造成服务器端无法及时实现对对客户端的行为进行控制。
2、下载方式一般为HTTP或FTP等直接下载方式。受限于服务器端同时支持的下载连接数限制,该方法无法支撑较多客户端同时在线,且对服务器端的网络出口带宽依赖性很强,造成响应效率的不足。
3、终端机顶盒之间没有任何联系,都是孤立的。
发明内容
本发明的目的在于提出了一种基于XMPP协议的实现机顶盒之间即时通信的方法,该方法适用于大量用户数字电视机顶盒之间、数字电视机顶盒与服务器之间的即时通信。
本发明的技术解决方案如下:
一种基于XMPP协议的实现机顶盒之间即时通信的方法,服务器为XMPP服务器,采用开源的openfire技术,客户端(终端机顶盒)采用开源的gloox技术,传输格式采用jason序列化格式。
网络结构描述:
如果客户端A和客户端B在同一个服务器A网络中,网络结构图如图1所示。假设客户端A想和客户端B通话,他们两人的账号都在服务器A的服务器上,当客户端A输入信息按下传送钮之后,一连串的事件就发生了:
1.客户端A将她的信息传送到服务器A;
2.服务器A再将信息寄送给客户端B,如果客户端B不在线,那么存储信息以待稍后寄送。
如果客户端A和客户端B不在同一个服务器网络中,网络结构图如图2所示。假设客户端A想和客户端B通话,客户端A的账号在服务器A的服务器上,客户端B的账号在服务器B的服务器上,当客户端A输入信息按下传送钮之后,一连串的事件就发生了:
1.客户端A将她的信息传送到服务器A XMPP服务器;
2.服务器A XMPP服务器打开与服务器B XMPP服务器的链接;
3.服务器B XMPP服务器再将信息寄送给客户端B,如果B不在线,那么存储信息以待稍后寄送。
原理:
1.Openfire是基于XMPP协议的IM即时通信服务器端的一个实现,Openfire提供了一些基本功能,但都是非常的基本的功能,同时它提供了插件的扩展,我们通过插件扩展这种方式来增加新的功能,完成我们***的要求。我们***中使用的Openfire的版本是3.7.0。
2.Gloox是一个开源的跨平台的C++实现XMPP协议的开发包客户端,我们***中使用的版本是1.0。终端机顶盒安装gloox***,以mac地址为客户号。
3.JSON是一种轻量级的数据交换格式,比XML格式具有更高的编码效率。
有益效果:
现有数字电视***头端没有办法主动对指定机顶盒进行访问,请求一般由客户端主动发起,定时向服务器端轮询是否有任务,然后发起任务下载。在较多客户端的环境下,受限于服务器端的性能,这种方式使得服务器端无法及时实现对客户端的行为的控制,下载无法兼顾快速和可控,且服务器端可支撑的客户端数量有限。终端机顶盒之间没有任何联系,都是一个个孤立的终端。
本发明提出的在数字机顶盒***中引入XMPP协议组建***,头端为XMPP服务器,终端机顶盒为客户端,使整个***都可以进行即时通信,包括头端和终端机顶盒之间以及机顶盒之间的即时通信。建立一个真正的互联互通的数字电视***。
附图说明
图1是客户端A和客户端B在同一个服务器的网络结构示意图。
图2是客户端A和客户端B在两个服务器的网络结构示意图。
图3是机顶盒客户端gloox到服务器openfire消息流程图。
具体实施方式
下面结合附图和实施例对本发明做进一步的详细说明,以求更为清楚地阐述本发明的内容,但不能因此限制本发明的保护范围。
本发明中服务器端采用开源的openfire技术,客户端(终端机顶盒)用开源的gloox技术,传输格式用jason序列化格式。
请先参阅图1,图1是客户端A和客户端B在同一个服务器的网络结构示意图,如图所示,假设client A想和client B通话,他们两人的账号都在server A的服务器上,当client A输入信息按下传送钮之后,一连串的事件就发生了:
1.Client A客户端将她的信息传送到server A XMPP服务器;
2.Server A XMPP服务器再将信息寄送给client B,如果B不在线,那么存储信息以待稍后寄送。
具体步骤如下,见图3:
步骤S1:客户端都需要在服务器中注册;
步骤S2:客户端发送初始流给服务器;
步骤S3:服务器使用一个流标记作为响应发送给客户端;
步骤S4:服务器发送纯文本通信协议的扩展协议扩展给客户端,并带有多种认证机制与流特征说明(包括流的认证机制、压缩方式、流的出处、注册信息等);
步骤S5:客户端发送纯文本通信协议的扩展协议命令给服务器;
步骤S6:服务器通知客户端是否允许处理,如允许,则执行步骤S7,否则执行步骤S19;
步骤S7:客户端与服务器端进行安全传输层协议协商,如果协商成功,则客户端初始化一个新流到服务器,否则,客户端请求连接失败,关闭连接;
步骤S8:服务器发送带有流特征的流头作为响应;
步骤S9:客户端选择其中一种认证机制;
步骤S10:服务器对客户端进行认证,认证成功则进入步骤S11,否则进入步骤S19。
步骤S11:认证成功,客户端初始化一个新流给服务器;
步骤S12:服务器发送流头来响应客户端,并带有流的特征说明(包括压缩方式,绑定、会话等信息,但是不包括认证机制说明);
步骤S13:客户端发送一个请求/响应机制到服务器;
步骤S14:服务器判断是否接收客户端提供的请求/响应机制,不接受则进入步骤S19,接受则进入步骤S15;
步骤S15:服务器返回一个类型为请求/响应机制的节点给客户端;
步骤S16:客户端向服务器请求会话;
步骤S17:服务器告知客户端会话已建立;
步骤S18:不同客户端之间进行正常消息通信;
步骤S19:通信结束服务器关闭流。
图2是客户端A和客户端B在两个服务器的网络结构示意,如图所示,假设client A想和client B通话,client A的账号都在server A的服务器上,client B的账号在server B的服务器上,当client A输入信息按下传送钮之后,一连串的事件就发生了:
1.client A客户端将她的信息传送到server A XMPP服务器;
2.server A XMPP服务器打开与server B XMPP服务器的链接;
3.server B XMPP服务器再将信息寄送给client B,如果B不在线,那么存储信息以待稍后寄送。
具体步骤如下:
步骤S101:客户端都需要在服务器中注册;
步骤S102:客户端发送初始流给服务器;
步骤S103:服务器使用一个流标记作为响应发送给客户端;
步骤S104:服务器发送纯文本通信协议的扩展协议扩展给客户端,并带有多种认证机制与流特征说明(包括流的认证机制、压缩方式、流的出处、注册信息等);服务器发送纯文本通信协议的扩展协议扩展给客户端,并带有多种认证机制与流特征说明(比如包括流的压缩方式、流的类型等);
步骤S105:客户端发送纯文本通信协议的扩展协议命令给服务器;
步骤S106:服务器通知客户端是否允许处理,如允许执行步骤S107,否则,客户端请求连接失败,关闭连接;
步骤S107:客户端与服务器端进行安全传输层协议协商,如果协商成功,则客户端初始化一个新流到服务器,否则,客户端请求连接失败,关闭连接;
步骤S108:服务器发送带有任何可利用流特征的流头作为响应;
步骤S109:客户端选择其中一种认证机制;
步骤S110:服务器对客户端进行认证,认证成功则执行步骤S110,否则关闭连接;
步骤S111:客户端初始化一个新流给服务器;
步骤S112:服务器发送流头来响应客户端,并带有流的特征说明(包括压缩方式,绑定、会话等信息,但是不包括认证机制说明);
步骤S113:客户端发送一个请求/响应机制到服务器;
步骤S114:服务器判断是否接收客户端提供的请求/响应机制,不接受则关闭连接,接受则执行步骤S115;
步骤S115:服务器返回一个类型为请求/响应机制的节点给客户端;
步骤S116:客户端向服务器请求会话;
步骤S117:服务器告知客户端会话已建立;
步骤S118:客户端A发送消息给客户端A;
步骤S119:服务器A接收到客户端A消息;
步骤S120:服务器A通过域名***服务器发送消息给服务器B;
步骤S121:服务器B发送接收到的服务器A的消息给客户端B;
步骤S122:客户端B接收到客户端A的消息;
步骤S123:客户端之间进行正常消息通信。
经试用表明,本发明采用头端为XMPP服务器,终端机顶盒为客户端,实现头端和终端机顶盒,机顶盒之间的即时通信,建立了一个真正的互联互通的数字电视***。
Claims (3)
1.一种基于XMPP协议的实现机顶盒之间即时通信的方法,特征在于:
所有的服务器为XMPP服务器,采用开源的openfire,使用的客户端的终端机顶盒安装安装gloox***,以mac地址为客户号;传输格式采用jason序列化格式,该方法包括:
当客户端A和客户端B在同一个服务器A网络中,客户端A和客户端B之间的通信:
①客户端A将她的信息传送到服务器A;
②服务器A再将信息寄送给客户端B,如果客户端B不在线,那么存储信息以待稍后寄送;
当客户端A和客户端B分别在服务器A和服务器B的网络中,客户端A和客户端B的通信包括下列步骤:
①客户端A将信息传送到服务器A;
②服务器A打开与服务器B的链接;
③服务器B再将信息寄送给客户端B,如果B不在线,那么存储信息以待稍后寄送。
2.根据权利要求1所述的机顶盒之间即时通信的方法,其特征在于,当客户端A和客户端B在同一个服务器网络中,具体包括下列步骤:
步骤S1:客户端都需要在服务器中注册;
步骤S2:客户端发送初始流给服务器;
步骤S3:服务器使用一个流标记作为响应发送给客户端;
步骤S4:服务器发送纯文本通信协议的扩展协议扩展给客户端,并带有认证机制与任何其它流特征说明;
步骤S5:客户端发送纯文本通信协议的扩展协议命令给服务器;
步骤S6:服务器通知客户端是否允许处理,如允许,则执行步骤S7,否则执行步骤S19;
步骤S7:客户端与服务器端进行安全传输层协议协商,如果协商成功,则客户端初始化一个新流到服务器,否则,客户端请求连接失败,关闭连接;
步骤S8:服务器发送带有任何可利用流特征的流头作为响应;
步骤S9:客户端选择一种认证机制;
步骤S10:服务器对客户端进行认证,认证成功则进入步骤S11,否则进入步骤S19。
步骤S11:认证成功,客户端初始化一个新流给服务器;
步骤S12:服务器发送流头来响应客户端,并带有流的其它特征,但是不包括认证机制;
步骤S13:客户端发送一个请求/响应机制到服务器;
步骤S14:服务器判断是否接收客户端提供的请求/响应机制,不接受则进入步骤S19,接受则进入步骤S15;
步骤S15:服务器返回一个类型为请求/响应机制的节点给客户端;
步骤S16:客户端向服务器请求会话;
步骤S17:服务器告知客户端会话已建立;
步骤S18:不同客户端之间进行正常消息通信;
步骤S19:通信结束服务器关闭流。
3.根据权利要求1所述的机顶盒之间即时通信的方法,其特征在于,当客户端A和客户端B分别在服务器A和服务器B的网络中,具体包括下列步骤:
步骤S101:客户端都需要在服务器中注册;
步骤S102:客户端发送初始流给服务器;
步骤S103:服务器使用一个流标记作为响应发送给客户端;
步骤S104:服务器发送纯文本通信协议的扩展协议扩展给客户端,并带有认证机制与任何其它流特征说明;
步骤S105:客户端发送纯文本通信协议的扩展协议命令给服务器;
步骤S106:服务器通知客户端是否允许处理,如允许执行步骤S107,否则,客户端请求连接失败,关闭连接;
步骤S107:客户端与服务器端进行安全传输层协议协商,如果协商成功,则客户端初始化一个新流到服务器,否则,客户端请求连接失败,关闭连接;
步骤S108:服务器发送带有任何可利用流特征的流头作为响应;
步骤S109:客户端选择一种认证机制;
步骤S110:服务器对客户端进行认证,认证成功则执行步骤S110,否则关闭连接。
步骤S111:认证成功,客户端初始化一个新流给服务器;
步骤S112:服务器发送流头来响应客户端,并带有流的其它特征,但是不包括认证机制;
步骤S113:客户端发送一个请求/响应机制到服务器;
步骤S114:服务器判断是否接收客户端提供的请求/响应机制,不接受则关闭连接,接受则执行步骤S115;
步骤S115:服务器返回一个类型为请求/响应机制的节点给客户端;
步骤S116:客户端向服务器请求会话;
步骤S117:服务器告知客户端会话已建立;
步骤S118:客户端A发送消息给客户端A;
步骤S119:服务器A接收到客户端A消息;
步骤S120:服务器A通过域名***服务器发送消息给服务器B;
步骤S121:服务器B发送接收到的服务器A的消息给客户端B;
步骤S122:客户端B接收到客户端A的消息;
步骤S123:客户端之间进行正常消息通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012105761315A CN103118069A (zh) | 2012-12-26 | 2012-12-26 | 基于xmpp协议的实现机顶盒之间即时通信的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012105761315A CN103118069A (zh) | 2012-12-26 | 2012-12-26 | 基于xmpp协议的实现机顶盒之间即时通信的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103118069A true CN103118069A (zh) | 2013-05-22 |
Family
ID=48416339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012105761315A Pending CN103118069A (zh) | 2012-12-26 | 2012-12-26 | 基于xmpp协议的实现机顶盒之间即时通信的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103118069A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103986639A (zh) * | 2014-03-07 | 2014-08-13 | 杭州易和互联软件技术有限公司 | 一种多个独立部署的即时消息***之间实现消息互联互通算法 |
CN105141661A (zh) * | 2015-07-24 | 2015-12-09 | 易视腾科技有限公司 | 基于xmpp技术的ott终端远程控制方法 |
CN105207878A (zh) * | 2014-05-30 | 2015-12-30 | 北大方正集团有限公司 | 一种即时通讯的方法及*** |
CN106572382A (zh) * | 2015-10-12 | 2017-04-19 | 中兴通讯股份有限公司 | 多屏互动方法及***、可扩展通讯和表示协议*** |
CN107645567A (zh) * | 2017-11-14 | 2018-01-30 | 中国科学院声学研究所 | 一种远程控制智能终端设备的方法 |
CN111092805A (zh) * | 2019-12-17 | 2020-05-01 | 北京众享比特科技有限公司 | 基于dht网络的即时通信方法、装置、设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877681A (zh) * | 2010-06-02 | 2010-11-03 | 中兴通讯股份有限公司 | 一种机顶盒终端实现即时通信的***及方法 |
CN102088422A (zh) * | 2011-01-25 | 2011-06-08 | 四川长虹电器股份有限公司 | 一种基于机顶盒的即时通讯实现方法 |
CN102594845A (zh) * | 2012-03-29 | 2012-07-18 | 东南大学 | 一种基于xmpp协议的即时消息传输方法 |
-
2012
- 2012-12-26 CN CN2012105761315A patent/CN103118069A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877681A (zh) * | 2010-06-02 | 2010-11-03 | 中兴通讯股份有限公司 | 一种机顶盒终端实现即时通信的***及方法 |
CN102088422A (zh) * | 2011-01-25 | 2011-06-08 | 四川长虹电器股份有限公司 | 一种基于机顶盒的即时通讯实现方法 |
CN102594845A (zh) * | 2012-03-29 | 2012-07-18 | 东南大学 | 一种基于xmpp协议的即时消息传输方法 |
Non-Patent Citations (2)
Title |
---|
唐莉莉: ""基于XMPP的企业版IM***及其在手机端实现的研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
王光辉: ""基于XMPP协议的即时通信***研究与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103986639A (zh) * | 2014-03-07 | 2014-08-13 | 杭州易和互联软件技术有限公司 | 一种多个独立部署的即时消息***之间实现消息互联互通算法 |
CN105207878A (zh) * | 2014-05-30 | 2015-12-30 | 北大方正集团有限公司 | 一种即时通讯的方法及*** |
CN105141661A (zh) * | 2015-07-24 | 2015-12-09 | 易视腾科技有限公司 | 基于xmpp技术的ott终端远程控制方法 |
CN105141661B (zh) * | 2015-07-24 | 2018-05-15 | 易视腾科技股份有限公司 | 基于xmpp技术的ott终端远程控制方法 |
CN106572382A (zh) * | 2015-10-12 | 2017-04-19 | 中兴通讯股份有限公司 | 多屏互动方法及***、可扩展通讯和表示协议*** |
CN107645567A (zh) * | 2017-11-14 | 2018-01-30 | 中国科学院声学研究所 | 一种远程控制智能终端设备的方法 |
CN111092805A (zh) * | 2019-12-17 | 2020-05-01 | 北京众享比特科技有限公司 | 基于dht网络的即时通信方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11082421B2 (en) | Bootstrap mechanism for endpoint devices | |
CN105122931B (zh) | 电子设备及在其用户门户服务器中注册个人云装置的方法 | |
CN103118069A (zh) | 基于xmpp协议的实现机顶盒之间即时通信的方法 | |
US9762643B2 (en) | Providing hosted virtual desktop infrastructure services | |
KR100906109B1 (ko) | 3a 기반의 다양한 어플리케이션 상태를 제공하는유비쿼터스 프리젠스 서비스 방법 및 시스템 | |
KR101165746B1 (ko) | 푸시 메시지 서비스 시스템 및 방법 | |
Gupta | A survey of application layer protocols for internet of things | |
CN101277277A (zh) | 一种即时通讯中设置聊天窗口主题的方法与*** | |
US20180176157A1 (en) | Conveying instant messages via http | |
CN104871481B (zh) | 用于本地网络设备的基于云的功率管理的方法和装置 | |
EP2605460A1 (en) | Method, apparatus, and system for transferring file to user of instant message system | |
CN107154972A (zh) | 一种基于设备快照的物联网智能设备状态同步方法及*** | |
CN102404616B (zh) | 基于数字电视网络进行数据云推送的方法及*** | |
CN103108037A (zh) | 一种通信方法,Web服务器及Web通信*** | |
US8650313B2 (en) | Endpoint discriminator in network transport protocol startup packets | |
WO2017101409A1 (zh) | 不同客户端间的视频推送方法、***及服务器 | |
KR100676052B1 (ko) | 싱크 서버를 이용한 컨텐츠 공유 시스템 및 방법 | |
Kanakaris et al. | Internet of things protocols-a survey | |
US9455986B2 (en) | Method of authenticating a device to access a service | |
US20140297763A1 (en) | Method of Managing Networked Devices | |
CN116308671A (zh) | 基于mqtt协议的在线竞价方法、电子设备及存储介质 | |
Guo et al. | The analysis of push technology based on iphone operating system | |
US8156547B2 (en) | Methods and systems for device-independent portable session synchronization | |
CN104683419B (zh) | 一种基于android***和m2m的通信方法和*** | |
CN103326933B (zh) | 一种实现群组安全即时通信的***和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130522 |