CN103475904B - 一种电子节目单数据的发布方法、系统及Websocket服务器 - Google Patents
一种电子节目单数据的发布方法、系统及Websocket服务器 Download PDFInfo
- Publication number
- CN103475904B CN103475904B CN201310207428.9A CN201310207428A CN103475904B CN 103475904 B CN103475904 B CN 103475904B CN 201310207428 A CN201310207428 A CN 201310207428A CN 103475904 B CN103475904 B CN 103475904B
- Authority
- CN
- China
- Prior art keywords
- epg data
- websocket
- server
- data
- websocket server
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明适用于通信技术领域,提供了一种电子节目单数据的发布方法:Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,消息携带有新的EPG数据;Websocket服务器接收到消息后,缓存新的EPG数据;Websocket服务器根据预先缓存的EPG数据标识,计算连接总数;Websocket服务器将连接分组,并创建分组线程;Websocket服务器通过分组线程并行向机顶盒浏览器下发新的EPG数据。本发明提高了系统性能,减少了用户等待时间。另外,当EPG数据有更新时,服务器才主动下发数据,减少了服务器的负担。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种电子节目单数据的发布方法、系统及Websocket服务器。
背景技术
IPTV运营商为了方便用户观看节目,会通过IP网络提供详尽的电子节目单(Electronic Program Guide,EPG)数据,这样用户便可以快速的知道喜欢观看的节目播放时间。目前IPTV系统的电子节目单数据是通过HTTP协议进行传输,目前一般采用基于HTTP协议有两种技术进行通信,如:轮询技术(Polling)或服务器推送技术(Comet)等,其中,Polling技术只能支持半双工通信,而Comet采用分别用于上行数据流和下行数据流的两个连接来模拟双工通信,需要耗费双倍的Web应用服务器资源,效率低下。简而言之,基于HTTP协议的技术并非为了实现实时全双工通信而设计。
在现有技术中,为了能获取IPTV服务器的EPG更新信息,STB(Set Top Box,机顶盒)浏览器需要定时发出EPG数据更新请求,服务器需要对每一次的请求做出组织EPG数据的响应,然后将组织好的EPG数据发送给STB浏览器。然而,该方案存在如下缺点:1、STB不能及时获取EPG数据,2、当没有更新EPG数据时,STB浏览器也会向服务器发送获取EPG数据的请求,因此,增加了服务器的负担,导致性能下降,另外,还导致用户需要更多等待Portal响应时间,降低了用户的满意度。
发明内容
本发明的目的在于提供一种电子节目单数据的发布方法、系统及Websocket服务器,旨在解决现有技术中存在的STB不能及时获取EPG数据,再者,当没有更新EPG数据时,STB浏览器也会向服务器发送获取EPG数据的请求,因此,增加了服务器的负担,导致性能下降,另外,还导致用户需要更多等待Portal响应时间,降低了用户的满意度的问题。
本发明是这样实现的,一种电子节目单数据的发布方法,所述方法包括以下步骤:
Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;
Websocket服务器接收到所述消息后,缓存所述新的EPG数据;
Websocket服务器根据预先缓存的EPG数据标识,计算连接总数;
Websocket服务器将所述连接分组,并创建分组线程;
Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
本发明的另一目的在于提供一种电子节目单数据的发布系统,所述系统包括:机顶盒浏览器、Portal服务器、以及Websocket服务器;
当用户进入电子节目菜单时,机顶盒浏览器向Portal服务器发送下载初始EPG数据请求;Portal服务器接收到请求后,组织EPG数据和UI,将初始EPG数据和UI下发给机顶盒浏览器,机顶盒浏览器将接收到的EPG数据和UI呈现;机顶盒浏览器与Websocket服务器建立连接,当Portal服务器上的EPG数据改变之后,Portal服务器向Websocket服务器发起EPG数据更新通知,并携带有新的EPG数据;Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;Websocket服务器接收到所述消息后,缓存所述新的EPG数据;Websocket服务器根据预先缓存的EPG数据标识,计算连接总数;Websocket服务器将所述连接分组,并创建分组线程;Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据,机顶盒浏览器接收完成EPG数据后,将数据更新,展示到界面上。
本发明的另一目的在于提供一种Websocket服务器,所述服务器包括:
接收模块,用于接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;
缓存模块,用于接收到所述消息后,缓存所述新的EPG数据;
计算模块,用于根据预先缓存的EPG数据标识,计算连接总数;
创建模块,用于将所述连接分组,并创建分组线程;
下发模块,用于通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
在本发明中,通过当电子节目信息改变时,由服务器主动推送EPG数据给机顶盒,机顶盒能够实时获取EPG数据。机顶盒不再需要定时循环去Portal服务器中取EPG数据,而是当Portal服务器上EPG数据发生改变时,由Websocket服务器主动推送EPG数据到机顶盒浏览器。从而提高了系统性能,减少了用户等待时间。另外,当EPG数据有更新时,服务器才主动下发数据,减少了服务器的负担。
附图说明
图1是本发明实施例提供的电子节目单数据的发布方法的实现流程示意图。
图2是本发明实施例提供的电子节目单数据的发布系统的结构示意图。
图3是本发明实施例提供的Websocket服务器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,通过当电子节目信息改变时,由服务器主动推送EPG数据给机顶盒,机顶盒能够实时获取EPG数据。从而解决了现有技术中存在的STB不能及时获取EPG数据,再者,当没有更新EPG数据时,STB浏览器也会向服务器发送获取EPG数据的请求,因此,增加了服务器的负担,导致性能下降,另外,还导致用户需要更多等待Portal响应时间,降低了用户的满意度的问题。
请参阅图1,为本发明实施例提供的电子节目单数据的发布方法的实现流程,其包括以下步骤:
在步骤S101中,Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;
在步骤S102中,Websocket服务器接收到所述消息后,缓存所述新的EPG数据;
在步骤S103中,Websocket服务器根据预先缓存的EPG数据标识,计算连接总数;
在步骤S104中,Websocket服务器将所述连接分组,并创建分组线程;
在步骤S105中,Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
作为本发明一优选实施例,在步骤S101之前,还包括以下步骤:
Websocket服务器接收机顶盒浏览器使用Websocket协议发起的建立Websocket握手请求消息,所述消息携带有机顶盒ID数据和EPG数据标识;其中,机顶盒ID数据可以是MAC地址,其用于标识该机顶盒,EPG数据标识则用于标识机顶盒需要EPG数据;
Websocket服务器判断所述Websocket握手请求是否符合协议,如果符合协议,则建立连接通道;如果不符合协议,则关闭该连接;
Websocket服务器将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存。
作为本发明另一优选实施例,在步骤S105之后,还包括以下步骤:
Websocket服务器下发完成EPG数据后,退出下发数据线程。
作为本发明另一优选实施例,所述方法还包括:
Websocket服务器监听Websocket连接是否关闭,当关闭时,则将连接从Websocket连接缓存中清除。
请参阅图2,为本发明实施例提供的电子节目单数据的发布系统的结构。为了便于说明,仅示出了与本发明实施例相关的部分。
所述电子节目单数据的发布系统包括:机顶盒浏览器100、Portal服务器200、以及Websocket服务器300。
所述电子节目单数据的发布系统的工作原理如下:
当用户进入电子节目菜单时,机顶盒浏览器使用HTTP协议向Portal服务器发送下载初始EPG数据请求;Portal服务器接收到请求后,组织EPG数据和UI,通过HTTP协议将初始EPG数据和UI下发给机顶盒浏览器,机顶盒浏览器将接收到的EPG数据和UI呈现;机顶盒浏览器与Websocket服务器建立连接,当Portal服务器上的EPG数据改变之后,Portal服务器向Websocket服务器发起EPG数据更新通知,并携带有新的EPG数据;Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;Websocket服务器接收到所述消息后,缓存所述新的EPG数据;Websocket服务器根据预先缓存的EPG数据标识,计算连接总数;Websocket服务器将所述连接分组,并创建分组线程;Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据,机顶盒浏览器接收完成EPG数据后,将数据更新,展示到界面上。
在本发明实施例中,
所述Websocket服务器还用于接收机顶盒浏览器使用Websocket协议发起的建立Websocket握手请求消息,所述消息携带有机顶盒ID数据和EPG数据标识;其中,机顶盒ID数据可以是MAC地址,其用于标识该机顶盒,EPG数据标识则用于标识机顶盒需要EPG数据;Websocket服务器判断所述Websocket握手请求是否符合协议,如果符合协议,则建立连接通道;如果不符合协议,则关闭该连接;Websocket服务器将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存。
作为本发明另一优选实施例,Websocket服务器下发完成EPG数据后,退出下发数据线程。
作为本发明另一优选实施例,Websocket服务器监听Websocket连接是否关闭,当关闭时,则将连接从Websocket连接缓存中清除。
然而,可以理解的是,在IPTV电视系统中,对于实时数据,也可以采用本发明实施例提供的技术方案,如发起电视节目投票,收视率调查,股票信息,灾害告警信息等数据,都可以采取本发明实施例提供的技术方案。
请参阅图3,为本发明实施例提供的Websocket服务器的结构。为了便于说明,仅示出了与本发明实施例相关的部分。
所述Websocket服务器包括:接收模块10、缓存模块20、计算模块30、创建模块40、以及下发模块50。
接收模块10,用于接收Portal服务器发送的EPG数据更新通知消息,所述消息携带有新的EPG数据;
缓存模块20,用于接收到所述消息后,缓存所述新的EPG数据;
计算模块30,用于根据预先缓存的EPG数据标识,计算连接总数;
创建模块40,用于将所述连接分组,并创建分组线程;
下发模块50,用于通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
作为本发明一优选实施例,所述Websocket服务器还包括:消息接收模块、判断模块、连接建立模块、关闭模块、关系建立模块。
消息接收模块,用于接收机顶盒浏览器使用Websocket协议发起的建立Websocket握手请求消息,所述消息携带有机顶盒ID数据和EPG数据标识;其中,机顶盒ID数据可以是MAC地址,其用于标识该机顶盒,EPG数据标识则用于标识机顶盒需要EPG数据;
判断模块,用于判断所述Websocket握手请求是否符合协议;
连接建立模块,用于如果符合协议,则建立连接通道;
关闭模块,用于如果不符合协议,则关闭该连接;
关系建立模块,用于将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存。
作为本发明另一优选实施例,所述Websocket服务器还包括:退出模块。
退出模块,用于下发完成EPG数据后,退出下发数据线程。
作为本发明另一优选实施例,所述Websocket服务器还包括:监听模块、清除模块。
监听模块,用于监听Websocket连接是否关闭;
清除模块,用于当监听到Websocket连接关闭时,则将连接从Websocket连接缓存中清除。
综上所述,本发明实施例通过当电子节目信息改变时,由服务器主动推送EPG数据给机顶盒,机顶盒能够实时获取EPG数据。机顶盒不再需要定时循环去Portal服务器中取EPG数据,而是当Portal服务器上EPG数据发生改变时,由Websocket服务器主动推送EPG数据到机顶盒浏览器。从而提高了系统性能,减少了用户等待时间。另外,当EPG数据有更新时,服务器才主动下发数据,减少了服务器的负担。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种电子节目单数据的发布方法,其特征在于,所述方法包括以下步骤:
Websocket服务器接收机顶盒浏览器发起的建立Websocket握手请求消息,所述Websocket握手请求消息携带有机顶盒ID数据和EPG数据标识;
Websocket服务器判断所述Websocket握手请求是否符合协议,如果符合协议,则建立连接通道;如果不符合协议,则关闭该连接通道;
Websocket服务器将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存;
Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述EPG数据更新通知消息携带有新的EPG数据;
Websocket服务器接收到所述EPG数据更新通知消息后,缓存所述新的EPG数据;
Websocket服务器根据预先缓存的EPG数据标识,计算所述连接的总数;
Websocket服务器对所述连接进行分组,并创建分组线程;
Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
2.如权利要求1所述的方法,其特征在于,在所述Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据的步骤之后,还包括以下步骤:
Websocket服务器下发完成EPG数据后,退出下发数据线程。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
Websocket服务器监听Websocket连接是否关闭,当关闭时,则将连接从Websocket连接缓存中清除。
4.一种电子节目单数据的发布系统,其特征在于,所述系统包括:机顶盒浏览器、Portal服务器、以及Websocket服务器;
当用户进入电子节目菜单时,机顶盒浏览器向Portal服务器发送下载初始EPG数据请求;Portal服务器接收到请求后,组织EPG数据和UI,将初始EPG数据和UI下发给机顶盒浏览器,机顶盒浏览器将接收到的EPG数据和UI呈现;机顶盒浏览器与Websocket服务器建立连接,当Portal服务器上的EPG数据改变之后,Portal服务器向Websocket服务器发起EPG数据更新通知,并携带有新的EPG数据;Websocket服务器接收Portal服务器发送的EPG数据更新通知消息,所述EPG数据更新通知消息携带有新的EPG数据;Websocket服务器接收到所述EPG数据更新通知消息后,缓存所述新的EPG数据;Websocket服务器根据预先缓存的EPG数据标识,计算所述连接的总数;Websocket服务器对所述连接进行分组,并创建分组线程;Websocket服务器通过该分组线程并行向机顶盒浏览器下发新的EPG数据,机顶盒浏览器接收完成EPG数据后,将数据更新,展示到界面上。
5.如权利要求4所述的系统,其特征在于,
所述Websocket服务器还用于接收机顶盒浏览器发起的建立Websocket握手请求消息,所述消息携带有机顶盒ID数据和EPG数据标识;Websocket服务器判断所述Websocket握手请求是否符合协议,如果符合协议,则建立连接通道;如果不符合协议,则关闭该连接;Websocket服务器将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存。
6.一种Websocket服务器,其特征在于,所述服务器包括:
消息接收模块,用于接收机顶盒浏览器发起的建立Websocket握手请求消息,所述Websocket握手请求消息携带有机顶盒ID数据和EPG数据标识;
判断模块,用于判断所述Websocket握手请求是否符合协议;
连接建立模块,用于如果符合协议,则建立连接通道;
关闭模块,用于如果不符合协议,则关闭该连接通道;
关系建立模块,用于将与机顶盒成功建立的连接、机顶盒ID数据、以及EPG数据标识建立一一对应关系,并缓存;
接收模块,用于接收Portal服务器发送的EPG数据更新通知消息,所述EPG数据更新通知消息携带有新的EPG数据;
缓存模块,用于接收到所述EPG数据更新通知消息后,缓存所述新的EPG数据;
计算模块,用于根据预先缓存的EPG数据标识,计算所述连接的总数;
创建模块,用于对所述连接进行分组,并创建分组线程;
下发模块,用于通过该分组线程并行向机顶盒浏览器下发新的EPG数据。
7.如权利要求6所述的服务器,其特征在于,所述Websocket服务器还包括:
退出模块,用于下发完成EPG数据后,退出下发数据线程。
8.如权利要求7所述的服务器,其特征在于,所述Websocket服务器还包括:
监听模块,用于监听Websocket连接是否关闭;
清除模块,用于当监听到Websocket连接关闭时,则将连接从Websocket连接缓存中清除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310207428.9A CN103475904B (zh) | 2013-05-29 | 2013-05-29 | 一种电子节目单数据的发布方法、系统及Websocket服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310207428.9A CN103475904B (zh) | 2013-05-29 | 2013-05-29 | 一种电子节目单数据的发布方法、系统及Websocket服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103475904A CN103475904A (zh) | 2013-12-25 |
CN103475904B true CN103475904B (zh) | 2017-02-22 |
Family
ID=49800581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310207428.9A Expired - Fee Related CN103475904B (zh) | 2013-05-29 | 2013-05-29 | 一种电子节目单数据的发布方法、系统及Websocket服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103475904B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980898A (zh) * | 2014-04-04 | 2015-10-14 | 中兴通讯股份有限公司 | 一种信息推送方法、系统及设备 |
CN105592327A (zh) * | 2014-10-22 | 2016-05-18 | 中兴通讯股份有限公司 | 一种基于iptv系统的股票信息的处理方法及装置 |
CN104486675A (zh) * | 2014-12-31 | 2015-04-01 | 浙江创佳数字技术有限公司 | 一种机顶盒电子节目菜单的更新方法和更新系统 |
CN109660603A (zh) * | 2018-11-27 | 2019-04-19 | 浙江万朋教育科技股份有限公司 | 一种实现即时或定时控制远程设备数据展示的方法 |
CN109672924A (zh) * | 2018-12-27 | 2019-04-23 | 深圳创维-Rgb电子有限公司 | 电子节目指南的生成方法、装置及计算机可读存储介质 |
CN111479142B (zh) * | 2020-04-14 | 2022-10-21 | 深圳市鸿合创新信息技术有限责任公司 | 一种基于信息发布的节目内容更新方法和系统 |
CN111639088B (zh) * | 2020-05-29 | 2023-03-21 | 携程计算机技术(上海)有限公司 | 本地缓存的更新系统、方法、电子设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819726B2 (en) * | 2010-10-14 | 2014-08-26 | Cyandia, Inc. | Methods, apparatus, and systems for presenting television programming and related information |
JP5297510B2 (ja) * | 2011-09-15 | 2013-09-25 | 株式会社東芝 | 情報処理装置および情報提供方法 |
-
2013
- 2013-05-29 CN CN201310207428.9A patent/CN103475904B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN103475904A (zh) | 2013-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103475904B (zh) | 一种电子节目单数据的发布方法、系统及Websocket服务器 | |
CN106803974B (zh) | 直播视频流实时转发方法 | |
US20180205976A1 (en) | Method and apparatus of obtaining video fragment | |
CN101383959B (zh) | 流媒体业务中获取关键帧的方法、系统及用户设备 | |
US10003830B1 (en) | Controller to manage streaming video of playback devices | |
US9319474B2 (en) | Method and apparatus for content delivery over a broadcast network | |
CN108494454A (zh) | 链路感知流传输自适应 | |
CN102118438A (zh) | IPTV系统中直播apple媒体流的方法和装置 | |
US9819702B2 (en) | Processing signaling changes | |
CN104363509B (zh) | 一种视频转换方法、装置、播放系统及终端 | |
WO2015154549A1 (zh) | 数据的处理方法及装置 | |
EP3024225B1 (en) | System and method of video streaming | |
CN106412701A (zh) | 视频传输方法、接入设备和网络设备 | |
CN107318052A (zh) | 电视机视频的播放方法、电视机及存储介质 | |
EP3451609B1 (en) | A method and a system to deliver multimedia content in a downstream network | |
CN106686576A (zh) | 终端用户状态获取方法、装置和系统 | |
CN106792030B (zh) | 一种音频数据处理方法及电视 | |
CN105721953A (zh) | 流媒体视频起播异常分析方法和系统 | |
WO2011072462A1 (zh) | 节目内容获取方法及机顶盒 | |
CN108810564A (zh) | 直播方法及装置 | |
WO2018122100A1 (en) | Identifying user devices for interactive media broadcast participation | |
EP3089459B1 (en) | Apparatus and method for implementing video-on-demand quick switching among multiple screens | |
CN100508523C (zh) | 一种增值业务中的同步方法、系统及装置 | |
CN103888487A (zh) | 媒体流控制方法和系统 | |
CA2845987C (en) | Management of delivery of multimedia components |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170222 Termination date: 20200529 |
|
CF01 | Termination of patent right due to non-payment of annual fee |