System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数字电视,具体涉及一种按需采集卫星电视epg的系统及方法。
技术介绍
1、数字电视目前已经普及,数字电视提供了上百套的电视节目、点播节目、电视回看以及广播节目,为了让用户能方便快速的找到自己所需要的节目,并了解关于该节目的各种信息,这就需要数字电视中有一种导航机制。于是就有了电子节目指南,简称epg(elec-tronic program guide)。
2、epg信息需要从卫星电视的传输流中获得,但是一个机顶盒一般会锁定某个频点,通过解调该频点下传输流的信号获得对应节目的epg。部分网站也有某些频道的epg信息,但是都不齐全,需要一个系统对缺少的epg信息进行补充。
3、现有技术通过周期性地向一个指定的机顶盒发送指令,收集该机顶盒直播流中的epg信息。如上所述,一个机顶盒一般会锁定某个频点,向指定机顶盒进行采集,只会得到指定频点下的epg信息,而无法得到其他频点下的epg信息。
4、现有技术还通过预置卫星参数到数据库,通过程序周期性地逐个读取卫星参数,将epg采集器设置到对应的频点,采集相应的节目epg信息,保存到指定服务器的数据库供epg服务使用。但是,频繁切换频道会导致机顶盒运行速度变慢,且受限于地理位置、经纬度等因素,一个机顶盒通过切换无法获取全球所有频道的epg信息。另外,周期性的获取方式会导致大量的数据冗余。
技术实现思路
1、为了克服现有技术的不足,本专利技术提供一种按需采集卫星电视epg的系统及方法,用于解决现有技术
2、为解决上述问题,本专利技术所采用的技术方案如下:
3、一种按需采集卫星电视epg的系统,包括:
4、接入模块,用于所有机顶盒的长连接管理和信息传输,同时用于机顶盒连接状态和上传信息的存储,完成节目信息的预采集;
5、epg管理模块,用于负责持久化epg信息,查询缺少的epg信息,并对缺少的epg信息向所述接入模块主动发起epg采集请求;
6、机顶盒,用于响应指令,解析对应节目的epg,组织成数据回传到所述接入模块;
7、其中,所述机顶盒仅和所述接入模块通信,所述epg管理模块仅和所述接入模块通信,所述epg管理模块和所述机顶盒之间的通信由所述接入模块进行转发。
8、作为本专利技术优选的实施方式,所述机顶盒分布在全球各地,所述机顶盒启动即通过tcp连接到所述接入模块,保持长连接,并上传机顶盒信息和当前播放节目信息到所述接入模块;
9、其中,每次切换节目,所述机顶盒重新上传所述当前播放节目信息到所述接入模块,所述当前播放节目信息包括:节目id和信号强度;
10、所述接入模块保存各个所述机顶盒信息和所述当前播放节目信息,完成节目信息的预采集;
11、其中,所述接入模块以长连接连接符为key,所述机顶盒信息为value,把接收到的所述当前播放节目信息以key-value的方式存到内存里。
12、作为本专利技术优选的实施方式,所述epg管理模块通过数据库持久化epg信息;
13、其中,所述epg信息包括:epg节目id、epg日期、epg开始时间以及epg结束时间;
14、所述epg管理模块每天在预设的时间遍历所有节目的epg信息,找到缺少的epg信息;
15、其中,在找到缺少的epg信息时,包括:
16、所述epg管理模块将所述epg节目id、所述epg日期、所述epg开始时间以及所述epg结束时间作为索引,并通过指定节目id和日期,在所述数据库中找到对应日期内的所有epg条目并有序返回;
17、逐条判断开始时间和结束时间,不连续的判断为所述缺少的epg信息。
18、作为本专利技术优选的实施方式,所述epg管理模块通过http请求方式对所述缺少的epg信息向所述接入模块主动发起所述epg采集请求;
19、所述接入模块接收到所述epg采集请求后,根据所述缺少的epg信息的节目id,从预采集的数据中找到正在观看该节目的机顶盒,并从找到的所有机顶盒中选择一个,发送请求epg信息的指令。
20、作为本专利技术优选的实施方式,所述机顶盒响应所述请求epg信息的指令,从传输流中解析出epg信息,返回给所述接入模块;
21、其中,在从传输流中解析出epg信息时,包括:
22、获取所述pmt表的pid,并根据所述pmt表的pid找到所述传输流中对应的pmt表;
23、从所述pmt表中解析出epg对应的pid,根据所述epg的pid从eit表中解析出epg信息;
24、在返回给所述接入模块后,包括:
25、所述接入模块在解析出的epg信息中匹配各个所述缺少的epg信息,等待指定时间,若匹配成功,则返回epg信息到所述epg管理模块,所述epg管理模块把所述epg信息进行存储,并将所述epg信息标记为已获得;
26、在所述指定时间后,尚未返回匹配成功的epg信息,所述接入模块获取另一个正在观看该节目的机顶盒,发送所述请求epg信息的指令;
27、在匹配各个所述缺少的epg信息和返回epg信息时,包括:
28、所述接入模块在解析出的epg信息中,对各个所述缺少的epg信息的起始时间和结束时间进行匹配,对匹配上的所有epg信息以json的方式回传到所述epg管理模块。
29、一种按需采集卫星电视epg的方法,包括以下步骤:
30、将分布全球各地的机顶盒连接到接入模块,并通过所述机顶盒上报当前播放节目信息;
31、通过所述接入模块保存各个机顶盒的当前播放节目信息,完成节目信息的预采集,并上传至epg管理模块;
32、通过所述epg管理模块持久化epg信息,并每天在预设时间遍历所有节目的epg信息,找到缺少的epg信息,并对所述缺少的epg信息向所述接入模块主动发起epg采集请求;
33、通过所述接入模块根据所述epg采集请求发送请求epg信息的指令;
34、通过所述机顶盒响应所述请求epg信息的指令,从传输流中解析出epg信息,返回给所述接入模块进行匹配;
35、通过所述接入模块将匹配成功的epg信息返回到所述epg管理模块。
36、作为本专利技术优选的实施方式,在通过所述机顶盒上报当前播放节目信息时,包括:
37、启动所述机顶盒,通过tcp连接到所述接入模块,保持长连接,并上传机顶盒信息和当前播放节目信息到所述接入模块;
38、其中,每次切换节目,通过所述机顶盒重新上传所述当前播放节目信息到所述接入模块,所述当前播放节目信息包括:节目id和信号强度;
39、在通过所述接入模块保存各个机顶盒的当前播放节本文档来自技高网...
【技术保护点】
1.一种按需采集卫星电视EPG的系统,其特征在于,包括:
2.根据权利要求1所述的按需采集卫星电视EPG的系统,其特征在于,所述机顶盒分布在全球各地,所述机顶盒启动即通过TCP连接到所述接入模块,保持长连接,并上传机顶盒信息和当前播放节目信息到所述接入模块;
3.根据权利要求1所述的按需采集卫星电视EPG的系统,其特征在于,所述EPG管理模块通过数据库持久化EPG信息;
4.根据权利要求1所述的按需采集卫星电视EPG的系统,其特征在于,所述EPG管理模块通过http请求方式对所述缺少的EPG信息向所述接入模块主动发起所述EPG采集请求;
5.根据权利要求4所述的按需采集卫星电视EPG的系统,其特征在于,所述机顶盒响应所述请求EPG信息的指令,从传输流中解析出EPG信息,返回给所述接入模块;
6.一种按需采集卫星电视EPG的方法,其特征在于,包括以下步骤:
7.根据权利要求6所述的按需采集卫星电视EPG的方法,其特征在于,在通过所述机顶盒上报当前播放节目信息时,包括:
8.根据权利要求6所述的按需采
9.根据权利要求6所述的按需采集卫星电视EPG的方法,其特征在于,在发起EPG采集请求时,包括:
10.根据权利要求9所述的按需采集卫星电视EPG的系统,其特征在于,在从传输流中解析出EPG信息时,包括:
...【技术特征摘要】
1.一种按需采集卫星电视epg的系统,其特征在于,包括:
2.根据权利要求1所述的按需采集卫星电视epg的系统,其特征在于,所述机顶盒分布在全球各地,所述机顶盒启动即通过tcp连接到所述接入模块,保持长连接,并上传机顶盒信息和当前播放节目信息到所述接入模块;
3.根据权利要求1所述的按需采集卫星电视epg的系统,其特征在于,所述epg管理模块通过数据库持久化epg信息;
4.根据权利要求1所述的按需采集卫星电视epg的系统,其特征在于,所述epg管理模块通过http请求方式对所述缺少的epg信息向所述接入模块主动发起所述epg采集请求;
5.根据权利要求4所述的按需采集卫星电视epg的系统,其特征在...
【专利技术属性】
技术研发人员:谭龙根,李淼,周建新,
申请(专利权)人:珠海迈科智能科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。