首页> 中国专利> 为不同终端提供IPTV业务的方法及IPTV业务系统

为不同终端提供IPTV业务的方法及IPTV业务系统

摘要

本发明适用于IPTV技术领域,提供了一种为不同终端提供IPTV业务的方法,包括步骤有:预存若干终端的终端信息及所述终端信息对应的模板;收到第一终端的访问请求时,获取所述第一终端的第一终端信息;分析出所述第一终端信息对应的第一模板;将所述第一模板发送给所述第一终端。相应地,本发明还提供一种IPTV业务系统。借此,本发明能够支持各种类型的终端实现IPTV业务,并且实现和维护成本更低。

著录项

  • 公开/公告号CN102740142A

    专利类型发明专利

  • 公开/公告日2012-10-17

    原文格式PDF

  • 申请/专利号CN201210193743.6

  • 发明设计人 庞为浩;吴云鹏;鲁晓;

    申请日2012-06-13

  • 分类号H04N21/258(20110101);H04N21/262(20110101);

  • 代理机构上海百一领御专利代理事务所(普通合伙);

  • 代理人陈贞健

  • 地址 200050 上海市长宁区长宁路1027号1008E座

  • 入库时间 2023-12-18 06:57:20

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-12-16

    授权

    授权

  • 2012-12-12

    实质审查的生效 IPC(主分类):H04N21/258 申请日:20120613

    实质审查的生效

  • 2012-10-17

    公开

    公开

说明书

技术领域

本发明涉及IPTV(Internet Protocol Television,因特网协议电视)技术领域,尤其涉及一种为不同终端提供IPTV业务的方法及IPTV业务系统。

背景技术

与传统的通过无线或者同轴电缆播出电视节目不同,IPTV业务系统除了通过宽带网络直接向用户提供电视节目和视频内容外,还向用户提供了各种丰富的基于HTTP(HyperText Transfer Protocol, 超文件传输协议)协议的互动Web内容,如专题、投票、看吧、星星国儿童社区等,使得用户除了观看视频节目以外,能够享受到更多更丰富的互动内容。但随着用户需求的增长和三屏融合的推进,使得越来越多的传统IPTV业务内容需要在更多类型的终端上进行展现,使用户无论使用何种终端,都能享受到IPTV业务所带来的服务。按照传统做法,可针对不同类型的终端开发新的业务代码进行兼容,但这种做法无疑会耗费巨大的开发成本。

在卢克·罗博乌斯基(Luke Wroblewski)的《多设备布局模式(Multi-Device Layout Patterns)》一文中,提供了一种使Web页面支持各种不同尺寸屏幕和分辨率设备的布局方案,使得Web页面可支持各种终端。但所述多设备布局模式技术基于流式布局。为了兼容不支持全部JS(JavaScript)和CSS(Cascading Style Sheet,级联样式表)特性的IPTV机顶盒,IPTV业务系统中基本采用绝对定位布局,因此所述多设备布局模式技术无法在IPTV业务系统中直接使用,同时该技术也无法满足在各终端上的个性化展示需求。

综上可知,现有IPTV技术在实际使用上显然存在不便与缺陷,所以有必要加以改进。

发明内容

针对上述的缺陷,本发明的目的在于提供一种为不同终端提供IPTV业务的方法及IPTV业务系统,其能够支持各种类型的终端实现IPTV业务,并且实现和维护成本更低。

为了实现上述目的,本发明提供一种为不同终端提供IPTV业务的方法,包括步骤有:

预存若干终端的终端信息及所述终端信息对应的模板;

收到第一终端的访问请求时,获取所述第一终端的第一终端信息;

分析出所述第一终端信息对应的第一模板;

将所述第一模板发送给所述第一终端。

根据本发明所述的方法,所述预存若干终端的终端信息及所述终端信息对应的模板的步骤包括:

预存若干终端的终端信息及所述终端信息对应的模板路径;

预存若干模板,所述模板的存储地址与所述模板路径对应;

所述分析出第一终端信息对应的第一模板的步骤包括:

分析出所述第一终端信息对应的第一模板路径,并查找出所述第一模板路径对应的第一模板。

根据本发明所述的方法,所述分析出第一终端信息对应的第一模板路径,并查找出第一模板路径对应的第一模板的步骤包括:

分析出所述第一终端信息对应的第一模板路径列表,所述第一模板路径列表中包含多个第一模板路径;

按照所述第一模板路径列表中所述第一模板路径的排列顺序,查找是否有与某所述第一模板路径对应的某模板,若有则将所述某模板判定为第一模板。

根据本发明所述的方法,所述模板根据所述终端信息选择关闭或开启若干应用功能。

根据本发明所述的方法,所述收到第一终端的访问请求时,获取所述第一终端的第一终端信息的步骤之后包括:

判断所述第一终端是否为机顶盒;

若所述第一终端是机顶盒,则将默认模板发送给所述第一终端;

若若所述第一终端不是机顶盒,则执行所述分析出所述第一终端信息对应的第一模板的步骤。

根据本发明所述的方法,还包括步骤有:

若未能分析出所述第一终端信息对应的第一模板,则将默认模板发送给所述第一终端。

根据本发明所述的方法,所述终端信息包括终端硬件信息和/或终端软件信息。

根据本发明所述的方法,具有相同所述终端硬件信息和/或终端软件信息的所述终端共用同一所述模板。

根据本发明所述的方法,所述收到第一终端的访问请求时,获取所述第一终端的第一终端信息的步骤包括:

收到第一终端的访问请求时,从所述访问请求的用户代理字段中获取所述第一终端的第一终端硬件信息和/或第一终端软件信息。

根据本发明所述的方法,所述从访问请求的用户代理字段中获取所述第一终端的第一终端软件信息的步骤包括:

从所述访问请求的用户代理字段中获取所述第一终端的操作系统、浏览器和/或浏览器核心;

所述分析出第一终端信息对应的第一模板的步骤包括:

根据所述第一终端的所述浏览器核心进行模糊匹配,以分析出所述浏览器核心对应的第一模板;或者

根据所述第一终端的所述操作系统和/或所述浏览器进行精确匹配,以分析出所述操作系统和/或所述浏览器对应的第一模板。

本发明还提供一种IPTV业务系统,包括有:

存储模块,用于预存若干终端的终端信息及所述终端信息对应的模板;

获取模块,用于收到第一终端的访问请求时,获取所述第一终端的第一终端信息;

模板分析模块,用于分析出所述第一终端信息对应的第一模板;

模板发送模块,用于将所述第一模板发送给所述第一终端。

根据本发明所述的IPTV业务系统,所述存储模块还包括: 

终端信息库,用于预存若干终端的终端信息及所述终端信息对应的模板路径;

模板信息库,用于预存若干模板,所述模板的存储地址与所述模板路径对应;

所述模板分析模块,用于从所述终端信息库中分析出所述第一终端信息对应的第一模板路径,并从所述模板信息库中查找出所述第一模板路径对应的第一模板。

根据本发明所述的IPTV业务系统,所述模板分析模块还用于分析出所述第一终端信息对应的第一模板路径列表,所述第一模板路径列表中包含多个第一模板路径;并按照所述第一模板路径列表中所述第一模板路径的排列顺序,查找是否有与某所述第一模板路径对应的某模板,若有则将所述某模板判定为第一模板。

根据本发明所述的IPTV业务系统,所述模板根据所述终端信息选择关闭或开启若干应用功能。

根据本发明所述的IPTV业务系统,所述获取模块还包括: 

获取子模块,用于收到第一终端的访问请求时,获取所述第一终端的第一终端信息;

判断子模块,判断所述第一终端是否为机顶盒;

所述模板分析模块,还用于在所述判断子模块判断出所述第一终端不是机顶盒时,分析出所述第一终端信息对应的第一模板;

所述模板发送模块,还用于在所述判断子模块判断出所述第一终端是机顶盒时,将默认模板发送给所述第一终端。

根据本发明所述的IPTV业务系统,所述模板发送模块还用于在所述模板分析模块未能分析出所述第一终端信息对应的第一模板时,将默认模板发送给所述第一终端。

根据本发明所述的IPTV业务系统,所述终端信息包括终端硬件信息和/或终端软件信息。

根据本发明所述的IPTV业务系统,具有相同所述终端硬件信息和/或终端软件信息的所述终端共用同一所述模板。

根据本发明所述的IPTV业务系统,所述获取模块还用于收到第一终端的访问请求时,从所述访问请求的用户代理字段中获取所述第一终端的第一终端硬件信息和/或第一终端软件信息。

根据本发明所述的IPTV业务系统,所述获取模块还用于从所述访问请求的用户代理字段中获取所述第一终端的操作系统、浏览器和/或浏览器核心;

所述模板分析模块还用于根据所述第一终端的所述浏览器核心进行模糊匹配,以分析出所述浏览器核心对应的第一模板;或者用于根据所述第一终端的所述操作系统和/或所述浏览器进行精确匹配,以分析出所述操作系统和/或所述浏览器对应的第一模板。

本发明通过预先存储已有各种终端的终端信息及其对应的模板,所述终端信息包括终端硬件信息和/或终端软件信息;当有用户通过第一终端请求访问IPTV业务系统时,匹配出与第一终端的第一终端信息对应的第一模板并返回给第一终端,这样用户最后得到的即是已经匹配其第一终端的界面结果。借此,本发明能够在不改变原有IPTV业务架构和业务代码基础上,增加对不同类型终端的IPTV业务支持,使得用户不管使用何种终端,都能享受到IPTV业务所带来的服务,本发明实现起来简单易行,且实现成本和维护成本更低。其次,本发明模板可根据不同终端选择关闭或开启部分应用功能,以实现IPTV业务的界面及功能的个性化定制,从而提升了业务灵活性。另外,具有相同终端信息的终端可共用同一模板,而并非针对每一类型的终端采用不同的模板,从而简化了模板的开发过程,并降低了模板的开发成本。

附图说明

图1是本发明IPTV业务系统的结构示意图;

图2是本发明优选IPTV业务系统的结构示意图;

图3是本发明为不同终端提供IPTV业务的方法流程图;

图4是本发明第一实施例中为不同终端提供IPTV业务的方法流程图;

图5是本发明第二实施例中为不同终端提供IPTV业务的方法流程图;以及

图6是本发明第三实施例中为不同终端提供IPTV业务的方法流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1是本发明IPTV业务系统的结构示意图,所述IPTV业务系统100与若干终端200通信连接,并且所述IPTV业务系统100包括存储模块10、获取模块20、模板分析模块30以及模板发送模块40,其中:

存储模块10,用于预存若干终端200的终端信息及所述终端信息对应的模板。优选的是,终端信息包括终端硬件信息和/或终端软件信息,所述终端硬件信息可以包括CPU(Central Processing Unit,中央处理器)类型、内存容量、屏幕尺寸和分辨率等,所述终端软件信息可以包括操作系统及版本、浏览器及版本、浏览器核心(Core)等。

获取模块20,用于收到第一终端200的访问请求时,获取第一终端200的第一终端信息。用户通过第一终端200向IPTV系统100发送访问请求时,获取模块20可自动从所述访问请求中获取第一终端200的第一终端信息。

模板分析模块30,用于分析出第一终端信息对应的第一模板。即模板分析模块30根据第一终端信息,从存储模块10分析并查找出第一终端信息对应的第一模板。若模板分析模块30未能查找与第一终端信息对应的第一模板,可以向第一终端200返回默认模板或者报错信息。

模板发送模块40,用于将第一模板发送给第一终端200。优选的是,将第一模板进行渲染(Render)后发送给第一终端200为用户展示。

所述第一终端200优选为非机顶盒的终端,可以是个人电脑、手机、PDA(Personal Digital Assistant,个人数字助理)、平板电脑等。因为对于机顶盒而言,IPVT业务系统100直接返回默认模板即可。本发明可在不改变IPTV业务系统100原有业务架构和业务代码的基础上,实现对其它非IPTV机顶盒的终端200进行业务支持,而且各种终端内容也可使用同一套管理系统进行数据内容管理,无需重复开发逻辑层和重复运维数据。

图2是本发明优选IPTV业务系统的结构示意图,所述IPTV业务系统100包括存储模块10、获取模块20、模板分析模块30以及模板发送模块40,其中:

所述存储模块10还包括: 

终端信息库11,用于预存若干终端200的终端信息及所述终端信息对应的模板路径;优选的是,所述终端信息包括终端硬件信息和/或终端软件信息。

模板信息库12,用于预存若干模板,所述模板的存储地址与终端信息库11中的所述模板路径对应。

所述获取模块20,用于收到第一终端200的访问请求时,获取第一终端200的第一终端信息。优选的是,获取模块20用于收到第一终端200的访问请求时,从所述访问请求的UA(User Agent,用户代理)字段中获取第一终端200的第一终端硬件信息和/或第一终端软件信息。所述UA字段是一种特殊字符串,可使得IPTV业务系统100能够识别第一终端200使用的操作系统及版本、CPU类型、浏览器及版本、浏览器核心、浏览器语言、浏览器插件等终端信息。优选的是,获取模块20还用于从所述访问请求的UA字段中获取第一终端200的操作系统、浏览器和/或浏览器核心。

所述模板分析模块30,用于从终端信息库11中分析出第一终端信息对应的第一模板路径,并从模板信息库12中查找出第一模板路径对应的第一模板。优选的是,模板分析模块30还用于根据第一终端200的浏览器核心进行模糊匹配,以分析出所述浏览器核心对应的第一模板;或者用于根据第一终端200的操作系统和/或浏览器进行精确匹配,以分析出所述操作系统和/或浏览器对应的第一模板。

更好的是,模板分析模块30还用于分析出第一终端信息对应的第一模板路径列表,该第一模板路径列表中包含多个第一模板路径;并按照第一模板路径列表中第一模板路径的排列顺序,查找是否有与某第一模板路径对应的某模板,若有则将某模板判定为第一模板,按照第一模板路径列表的预定排列顺序逐一超找各第一模板路径是否在模板信息库12中有对应的第一模板,只要有一个第一模板则立即停止查找。

模板发送模块40,用于将第一模板发送给第一终端200。更好的是,模板发送模块40还用于在模板分析模块30未能分析出第一终端信息对应的第一模板时,将默认模板发送给第一终端200。

更好的是,所述获取模块20还包括: 

获取子模块21,用于收到第一终端200的访问请求时,获取所述第一终端200的第一终端信息。

判断子模块22,判断所述第一终端200是否为机顶盒;若是则激活模板发送模块40工作,否则激活模板分析模块30工作。

所述模板分析模块30,还用于在判断子模块22判断出第一终端200不是机顶盒时,分析出第一终端200信息对应的第一模板。

所述模板发送模块40,还用于在判断子模块22判断出第一终端200是机顶盒时,直接将默认模板发送给第一终端200。

更好的是,所述模板可根据终端信息选择关闭或开启若干应用功能。因为终端信息库11的存在,可针对不同类型的终端200开启或关闭部分应用功能,例如同一业务,可在Andriod/IOS上增加微博转发按钮,而在机顶盒设备中关闭微博转发按钮,从而提升了业务灵活性。

另外,因为终端信息库11可识别终端硬件信息和/或终端软件信息,因此可以对具有相同终端硬件信息和/或终端软件信息的终端200共用同一模板。例如,在使用相同浏览器核心的不同终端200中(即使屏幕尺寸和分辨率不同)共用同一套模板,而并非针对每一类型的终端200采用不同的模板,从而节约了模板的开发过程和开发成本。

图3为本发明为不同终端提供IPTV业务的方法流程图,其可以通过如图1或图2所示的IPTV业务系统100实现,所述方法包括步骤有:

步骤S301,预存若干终端200的终端信息及所述终端信息对应的模板。优选的是,所述终端信息包括终端硬件信息和/或终端软件信息,具有相同终端硬件信息和/或终端软件信息的终端200优选共用同一模板。

步骤S302,收到第一终端200的访问请求时,获取第一终端200的第一终端信息。

步骤S303,分析出第一终端信息对应的第一模板。

步骤S304,将第一模板发送给第一终端200,优选的是,将第一模板进行渲染后发送给第一终端200以便为用户展示。

图4为本发明第一实施例中为不同终端提供IPTV业务的方法流程图,其可以通过如图2所示的IPTV业务系统100实现,所述方法包括步骤有:

步骤S401,预存若干终端200的终端信息及所述终端信息对应的模板路径。优选的是,所述终端信息包括终端硬件信息和/或终端软件信息。

步骤S402,预存若干模板,所述模板的存储地址与步骤S401中的所述模板路径对应。更好的是,所述模板根据终端信息选择关闭或开启若干应用功能。

步骤S403,收到第一终端200的访问请求时,获取第一终端200的第一终端信息。

步骤S404,分析出第一终端信息对应的第一模板路径,并查找出第一模板路径对应的第一模板。优选的是,分析出第一终端信息对应的第一模板路径列表,该第一模板路径列表中包含多个第一模板路径;按照第一模板路径列表中第一模板路径的排列顺序,查找是否有与某第一模板路径对应的某模板,若有则将某模板判定为第一模板。

步骤S405,将第一模板发送给第一终端200。

图5为本发明第二实施例中为不同终端提供IPTV业务的方法流程图,其可以通过如图2所示的IPTV业务系统100实现,所述方法包括步骤有:

步骤S501,预存若干终端200的终端信息及所述终端信息对应的模板。优选的是,所述终端信息包括终端硬件信息和/或终端软件信息,具有相同终端硬件信息和/或终端软件信息的终端200共用同一模板。

步骤S502,收到第一终端200的访问请求,获取第一终端200的第一终端信息。

步骤S503,判断第一终端200是否为机顶盒,若第一终端200是机顶盒,则执行步骤S504,否则执行步骤S505。

步骤S504,若第一终端200是机顶盒,将默认模板发送给第一终端200。

步骤S505,判断是否能分析出第一终端信息对应的第一模板,若分析出第一模板则执行步骤S506,若未能分析出第一终端信息对应的第一模板,则执行步骤S504,即将默认模板发送给第一终端200。

步骤S506,将第一模板发送给第一终端200。

图6为本发明第三实施例中为不同终端提供IPTV业务的方法流程图,其可以通过如图2所示的IPTV业务系统100实现,所述方法包括步骤有:

步骤S601,预存若干终端200的终端信息及所述终端信息对应的模板。优选的是,所述终端信息包括终端硬件信息和/或终端软件信息,具有相同终端硬件信息和/或终端软件信息的终端200共用同一模板。

步骤S602,收到第一终端200的访问请求时,从访问请求的UA字段中获取第一终端200的第一终端硬件信息和/或第一终端软件信息。优选的是,从所述访问请求的UA字段中获取第一终端200的操作系统、浏览器和/或浏览器核心。

步骤S603,分析出第一终端硬件信息和/或第一终端软件信息对应的第一模板。优选的是,根据第一终端200的浏览器核心进行模糊匹配,以分析出所述浏览器核心对应的第一模板;或者根据第一终端200的操作系统和/或浏览器进行精确匹配,以分析出所述操作系统和/或浏览器对应的第一模板。

步骤S604,将第一模板发送给第一终端200。

为了更好的理解本发明,下面描述本发明一具体应用场景:

本实施例中首先构建一终端信息库11。在该终端信息库11中使用浏览器的UA字段来标识了已知终端200的浏览器核心。例如UA字段为:“Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+”,则表明此次访问请求由一部Iphone手机发起,且使用Webkit核心的浏览器。若收集足够多的终端200的UA字段,IPTV业务系统100便能识别出各个不同的终端200和浏览器。获取到终端200的识别信息后,根据终端类型和浏览器类型,加载模板信息库12中对应的模板,进行模板渲染后反馈给终端200以对用户展示。

终端信息库11中保存了IPTV业务已知的所有终端类型及其浏览器核心。保存格式类似于如下表一:

表一

DeviceCoreTemplateIPhone/SafariWebkitIOS_Webkit;WebKitWindows/MSIEGeckoIE_Gecko; Gecko

模板信息库12需要在原有业务系统模板信息库中增加对新终端支持的模板,将其路径(存储地址)设置为与终端信息库11中的Template字段对应,如:view_ios_webkit 和view_webkit,分别实现了IOS专用的webkit浏览器内核模板和通用型的webkit内核模板。在本例中,IPTV业务框架在进行匹配时,假设其最终匹配结果为android_webkit,在该业务的模板信息库12中没有找到,则采用webkit内核模板中的view_webkit进行渲染。采用此种方法,可使不需要针对每一类型的终端200采用不同模板,以简化模板的开发过程。

IPTV业务系统100接收到用户的访问请求后,通过访问请求的UA字段进行分析,将该UA字段拆分成三个内容:系统/浏览器/浏览器核心。系统可采取多种匹配方式在终端信息库11中进行匹配:如按照浏览器核心进行模糊匹配,或者按照系统和其采用的浏览器进行精确匹配,最终匹配的结果为对应该种浏览器核心或终端的模板名列表。

在IPTV业务的基础业务框架中,采用的是标准的MVC(Model模型/View视图/Controller控制器)架构,即由Model来控制数据结构,Controller负责业务逻辑,View负责页面展现。为了支持此种识别流程,本发明需要在IPTV的基础业务框架中修改Controller的具体实现,增加以下的处理流程:当用户请求所需数据已经载入完成,开始进行模板渲染的时候,捕获其模板渲染过程。此时根据用户访问请求的UA字段,判断是否由IPTV机顶盒发起。如为非IPTV机顶盒的终端200,则到终端信息库11中进行模板匹配查找过程。并将最后的匹配结果(模板名列表)按照其排序顺序到该模板信息库12进行查找。如果该模板信息库12中存在该模板路径,则使用该模板路径进行渲染。否则仍然按照默认模板路径进行渲染。

综上所述,本发明通过预先存储已有各种终端的终端信息及其对应的模板,所述终端信息包括终端硬件信息和/或终端软件信息;当有用户通过第一终端请求访问IPTV业务系统时,匹配出与第一终端的第一终端信息对应的第一模板并返回给第一终端,这样用户最后得到的即是已经匹配其第一终端的界面结果。借此,本发明能够在不改变原有IPTV业务架构和业务代码基础上,增加对不同类型终端的IPTV业务支持,使得用户不管使用何种终端,都能享受到IPTV业务所带来的服务,本发明实现起来简单易行,且实现成本和维护成本更低。其次,本发明模板可根据不同终端选择关闭或开启部分应用功能,以实现IPTV业务的界面及功能的个性化定制,从而提升了业务灵活性。另外,具有相同终端信息的终端可共用同一模板,而并非针对每一类型的终端采用不同的模板,从而简化了模板的开发过程,并降低了模板的开发成本。

当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号