发明内容
有鉴于此,本发明的主要目的之一在于提供一种IPTV系统中共用存储的方法,用以解决现有技术中录像、时移等业务孤立从而使同样的节目内容存储多份而导致运营商建设成本高及影响网络性能的问题。为了实现上述目的,本发明采用如下技术方案:
一种IPTV系统中共用存储的方法,包括:
A、服务控制功能实体根据用户设备发送的录像请求判断所请求录制的直播业务或直播节目是否是时移频道的内容,若是则服务控制功能实体保存用户设备发送的录像请求包含的信息并重用该时移频道已存储的内容;否则执行步骤B;
B、服务控制功能实体根据用户设备发送的录像请求判断所请求录制的直播业务或直播节目是否被其他用户录制的内容包含,若是则服务控制功能实体保存用户设备发送的录像请求包含的信息并重用其他用户已经录制的内容,否则执行步骤C;
C、服务控制功能实体保存用户设备发送的录像请求,开始录制过程。
基于上述方案,进一步地,步骤A中,重用时移频道已存储的内容的步骤包括:
A1、服务控制功能实体判断录像请求中所包含的录像保留时间是否大于时移频道的时移时间,若是则执行步骤A2;否则执行步骤A3;
A2、服务控制功能实体发送录像请求包含的信息给媒体控制功能实体,媒体控制功能实体保存所述录像请求包含的信息后向服务控制功能实体反馈执行结果信息;
A3、服务控制功能实体通过业务控制功能实体或业务选择功能实体向用户反馈录像响应消息。
进一步地,步骤B中,重用其他用户已经录制的内容的步骤包括:
B1、服务控制功能实体判断所述录像请求中所包含的录像保留时间是否大于其他用户已录制内容的保留时间,若是则执行步骤B2;否则执行步骤B3;
B2、服务控制功能实体发送录像请求包含的信息给媒体控制功能实体,媒体控制功能实体保存所述录像请求包含的信息后向服务控制功能实体反馈执行结果信息;
B3、服务控制功能实体通过业务控制功能实体或业务选择功能实体向用户反馈录像响应消息。
进一步地,服务控制功能实体将所述录像请求包含的信息保存于用户信息服务功能实体中;所述录像请求包含的信息包括:内容信息、录像保存时间;或内容信息、录像保存时间、录制开始时间及录制结束时间;所述内容信息为:直播业务标识;或直播频道标识附加直播节目标识;或直播频道标识。
进一步地,服务控制功能实体直接或通过业务控制功能实体或业务选择功能实体将所述录像请求包含的信息发送给媒体功能实体;媒体控制功能实体直接或通过业务控制功能实体或业务选择功能实体将执行结果信息反馈给服务控制功能实体。
本发明另一主要目的在于提供一种IPTV系统中共用存储的系统,为实现该目的,本发明采用如下技术方案:
一种IPTV系统中共用存储的系统,包括:
时移重用判断模块,用于判断用户请求录制的直播业务或直播节目是否是时移频道的内容,若是则通知重用模块执行,否则通知用户重用判断模块执行;
用户重用判断模块,用于判断所请求录制的直播业务或直播节目是否有其他用户录制过相同的内容,若是则通知重用模块执行,否则通知录制模块执行;
重用模块,用于在可重用时移频道已存储的内容或可重用其他用户已经录制内容的情况下保存录像请求包含的信息并将重用结果信息发送给响应模块;
录制模块,用于在不可重用的情况下保存录像请求包含的信息并根据用户设备发送的录像请求执行相应的录制操作;
响应模块,用于根据可重用或不可重用情况下执行结果信息向用户设备反馈录像响应消息。
基于上述方案,进一步地,时移重用判断模块包括:
时移判断模块,用于判断所请求录制的直播业务或直播节目是否是时移频道中保存的直播业务或直播节目,若是则通知时移时长判断模块执行,否则通知用户重用判断模块执行;
时移时长判断模块,用于判断录像请求中包含的录像保留时间是否大于时移频道的时移时间,若是则通知重用模块执行;否则通知响应模块执行;
用户重用判断模块包括:
已录制判断模块,用于判断所请求录制的直播业务或直播节目是否有其他用户录制过相同的内容,若是则通知用户时长判断模块执行,否则通知录制模块执行;
用户时长判断模块,用于判断录像请求中所包含的录像保留时间是否大于其他用户已录制的相同内容的保留时间,若是则通知重用模块执行;否则通知响应模块执行。
进一步地,录制模块在录制用户请求的直播业务或直播节目时,如果请求录制的直播业务或直播节目不是一个完整的节目,则录制一个完整的节目。
进一步地,所述重用模块包括:
请求信息存储模块,用于将录像请求中包含的信息存储于用户信息服务功能实体;
扩展模块,用于在录像请求中包含的录像保留时间大于时移频道的时移时间或录像请求中所包含的录像保留时间大于其他用户已录制的相同内容的保留时间时请求媒体控制功能实体保存所述录像请求包含的信息;
重用反馈模块,用于向响应模块发送重用的结果信息。
进一步地,所述录像请求中包括:内容信息、录像保留时间;或录制内容信息、录像保留时间、录制开始时间及录制结束时间;
所述内容信息为:直播业务标识;或直播频道标识附加直播节目标识;或直播频道标识。
本发明中,网络侧在收到用户的录像请求后,判断该频道是否是时移频道,如果是则重用该频道存储的内容;否则重用其他已经录制过该节目的网络录像业务内容,解决了在不同用户录制同样节目内容到网络中时存储空间浪费及造成网络性能低下的技术问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进一步详细说明。
为了便于理解,下面首先结合附图1对基于NGN的IPTV系统进行简要的介绍。
图1为基于NGN的IPTV系统的结构示意图,如图1所示,基于NGN的IPTV系统主要包括:用户设备(User Equipment,简称为UE)11、业务控制功能实体(如果在NGN中采用IMS,则为核心IMS-core IMS)12、服务控制功能实体(IPTV Service Control Functions,简称为IPTV SCF)13、媒体功能实体(IPTV Media Functions,简称为IPTV MF)14、业务选择功能实体(Service Selection Functions,简称为SSF)15、用户信息服务功能实体(User Profile Server Functions,简称为UPSF)16。以下分别描述上述各实体。
UE 11,具体可以为具有移动能力的手机、固定网络的机顶盒、实现机顶盒功能的基于软件实现的软终端,还包含家庭网关等功能实体。UE通过与用户交互,可以实现如点播、直播等IPTV业务。
业务控制功能实体12通过Gm接口连接UE 11,为NGN业务控制层面的主要功能实体的集合,主要用于会话控制、业务认证、鉴权、计费等,在IMS网络情况下,该实体为核心多媒体子系统(Core IMS)。如果业务控制功能实体12为Core IMS,则该实体主要包含P-CSCF/I-CSCF/S-CSCF核心呼叫会话控制等核心模块。Core IMS用于提供基于SIP的会话控制机制,对IPTV终端用户进行认证、鉴权,请求资源接纳控制子系统进行资源分配等。Core IMS通过与IPTV终端、IPTV应用功能实体及内容分发功能实体交互进行SIP会话,完成安全、QoS、计费、漫游等功能。
服务控制功能实体13通过ISC接口连接业务控制功能实体12,用于在会话启动或者修改的时候提供业务鉴权,包括:检查用户的信息、查看用户是否能够合法使用选择的内容;信用限制和信用控制;为系统选择提供服务的媒体控制功能实体等,该功能实体主要针对点播、直播、录像、时移等IPTV业务。
媒体功能实体14通过Xc和Xd接口连接UE,其中,通过Xc接口连接UE用于媒体流RTSP控制,Xd接口连接UE用于媒体流的传输和媒体下载。
业务选择功能实体15用于提供业务选择信息,如终端可以访问的业务的列表等。该实体和实体13之间存在可选的Xb接口,用于根据该实体选择的录制请求向实体13进行鉴权。
用户信息服务功能实体16包含提供IPTV业务的用户数据的信息和业务数据信息。该功能实体在开放IPTV论坛(Open IPTV Forum)标准中对应于User Database(负责用户相关的数据信息)和IPTV Service Profile(负责业务相关的数据信息)的功能之和。
图2为本发明基于IPTV的用户发起网络录像业务的程序执行流程图,具体步骤为:
步骤201:用户设备与业务控制功能实体、服务控制功能实体等进行交互发起直播业务的会话初始化过程;
步骤202:用户设备向业务控制功能实体或业务选择功能实体发起录像请求;
根据录像请求内容的不同,录像请求中包含的信息可以为录制起始时间、录制结束时间、录像保留时间(指用户期望所录制的录像在服务网络中保留的时间)及内容信息中的一种或几种的组合,其中内容信息和录像保留时间为必需的信息,录制开始时间和录制结束时间则根据请求的内容不同选择附加;内容信息根据用户录制内容的不同可以有如下三种组合:直播业务标识(BCService ID);直播频道标识(Channel ID)附加直播节目标识(Program ID);直播频道标识;
步骤203:业务控制功能实体或业务选择功能实体将录像请求转发给服务控制功能实体;
步骤204:服务控制功能实体检查用户是否有权限使用网络录像功能,如果有则执行步骤205;否则向用户设备反馈无权录制的响应消息,流程结束。
服务控制功能实体与用户信息服务功能实体进行交互,从用户信息服务功能实体中获取用户相应的业务权限信息,并根据业务权限信息判断该用户是否有使用网络录像的权限,如果有执行后续步骤,否则直接通过服务控制功能实体向用户设备反馈无权使用的失败信息,流程结束。
步骤205:服务控制功能实体向用户信息服务功能实体查询用户要录制的直播业务(包含多个连续的直播节目)/直播节目是否是时移频道中保存的直播业务或直播节目,若是则执行步骤206;否则执行步骤209;
步骤206:服务控制功能实体将录像请求包含的信息保存到用户信息服务功能实体中;
步骤207:服务控制功能实体判断录像请求中录像保留时间是否大于时移频道的时移时间,若是则执行步骤208;否则执行步骤214;
时移频道的时移时间指历史上播出的直播业务或直播节目在网络服务端保存的最长时间,如果不是时移频道,则时移时间为0或者为空。举例说明:CCTV1的直播节目时移时间为3天,意味着CCTV1在网络中保存了前3天之内的节目,用户最多可以回看前3天之内的直播节目。
服务控制功能实体从用户信息服务功能实体获取请求录制的直播业务或直播节目所属时移频道的时移时间,并判断录制请求中录像保留时间是否大于该时移时间,若大于则说明不能直接重用时移频道的内容,需要执行相应地保留时间的扩展操作;若小于则说明可以直接重用时移频道已存储的内容。
步骤208:服务控制功能实体向媒体功能实体发送录像请求包含的信息,媒体功能实体保存录像请求包含的信息,执行保留时间扩展操作,然后执行步骤213;
服务控制实体向媒体功能实体发送的录像请求内容至少包含:内容信息、录制开始时间、录制结束时间、录像保留时间中的一种或几种信息的组合。其中录像保留时间为必需的信息,用于指示媒体功能实体中正在保存或者即将保存的直播业务或直播节目在网络中的存储时间,在最新的录像保留时间确定后媒体功能实体在该时间到达后自动删除录像内容(可以采用定时器的方式进行)。
在当前录像请求中请求录制的直播业务或直播节目的保留时间大于时移频道的时移时间或其他用户对相同内容的录像保留时间时,由服务控制功能实体通知媒体功能实体,媒体功能实体将新的录像保留时间存储在数据库中。
步骤209:判断所请求录制的直播业务或直播节目是否已被其他用户录制过,若是则执行步骤210;否则执行步骤212;
步骤210:服务控制功能实体将录像请求包含的信息保存到用户信息服务功能实体中,然后执行211;
步骤211:服务控制功能实体判断录像请求中录像保留时间是否大于其他用户对相同录像内容的录像保留时间,若是则执行步骤208;否则执行步骤214;
服务控制功能实体向用户信息服务功能实体查询是否已经有其他用户发起该直播业务或直播节目的录制过程,用户信息服务功能实体向服务控制功能实体返回其他用户是否录制过该直播业务或直播节目的相关信息。
若所请求录制的直播业务或直播节目为其它用户已录制过的内容,则服务控制功能实体从用户信息服务功能实体查询其他用户对该直播业务或直播节目的最长录制时间,并判断录制请求中录像保留时间是否大于该最长的录制时间,若大于则说明不能直接复用其他用户已录制的相同内容,需通知媒体功能实体执行相应地录像保留时间的扩展操作;否则说明可以直接复用其他用户已录制的相同内容。
步骤212:服务控制功能实体将录像请求中包含的信息保存到用户信息服务功能实体中,执行步骤214;
步骤213:媒体功能实体向服务控制功能实体反馈录像请求消息的执行结果,然后执行214;
该步骤中,服务控制实体与媒体功能实体之间的交互在两个实体间直接进行,也可以通过业务控制功能实体或业务选择功能实体转发。
步骤214:服务控制功能实体向业务控制功能实体或业务选择功能实体发送录像响应消息,业务控制功能实体或业务选择功能实体将其转发给用户设备。
步骤215:如果用户请求录像的直播业务或直播节目为非时移频道的直播业务或直播节目并且请求录像的直播业务或直播节目也没有被其他用户录制过,则开始节目的录制过程;
该步骤中,如果请求录制的不是一个完整的节目(Program),则录制一个完整的节目,并加上录制的标签信息(录制节目的标识、录制起始时间、录制结束时间、节目保存时间)等,标签信息存储于媒体功能实体的数据库中。如果请求录制的直播业务包含多个节目,则建议录制相应的多个完整的节目。
给所录制的直播业务或直播节目加上标签信息的目的是对该录制的内容的描述,且标识该保存时间段的内容不能被删除,媒体功能实体中保存的内容往往是一个连续时长的多个节目,比如CCTV1连续的过去72小时的节目,而标签信息所指示的时间段可能只是其中的一个片段。
图3为本发明IPTV系统中共用存储的方法时序流程图,具体内容如下:
步骤301:用户设备与业务控制功能实体、服务控制功能实体等进行交互发起直播业务的会话初始化过程;
步骤302:用户设备向业务控制功能实体或业务选择功能实体发起录像请求,该请求可能包括但不限于录制起始时间(如果步骤1存在则该参数不需要)、录制结束时间、录像保留时间、直播业务ID信息、直播节目ID信息、频道ID等参数信息;
步骤303:业务控制功能实体或业务选择功能实体将录像请求转发给服务控制功能实体;
步骤304:服务控制功能实体检查用户是否有权限执行网络录像功能。该检查需要与用户信息服务功能实体进行交互获取用户相应的权限等数据进行判断。
步骤305:服务控制功能实体向用户信息服务功能实体查询用户要录制的直播业务或直播节目是否是时移频道中的保存的直播业务/直播节目,同时获取时移频道的时移时间。如果该频道不是时移频道,则执行步骤306。否则执行步骤307。
步骤306:服务控制功能实体向用户信息服务功能实体查询是否已经有其他用户发起该直播业务/直播节目的录制过程,用户信息服务功能实体向服务控制功能实体返回其他用户是否录制该直播业务/直播节目的相关信息。如果该频道的直播业务或直播节目没有被其他用户录制,则执行步骤310,否则执行步骤307。
步骤307:服务控制功能实体向用户信息服务功能实体中保存用户关联的录像信息。如果该用户的录像信息已经包含在时移频道的节目中并且录像需要保留的时间小于直播业务的时移时间或者该直播内容已经被其他用户先录制过且当前请求中录像需要保留的时间小于其他用户录制该内容的最长保留时间,则执行步骤310,否则执行步骤308。录像信息保存到用户信息服务功能实体,保存成功后用户信息服务功能实体返回保存成功的信息。
步骤308:服务控制功能实体向媒体功能实体发送录制内容信息(直播业务ID信息、直播频道ID信息、直播节目的ID)、录制起始时间、录制结束时间、录像保留时间等信息(其中录制内容信息及录像保留时间必需);其中录像保留时间用于指示媒体功能实体中正在保存或者即将保存的直播业务或直播节目在网络中的存储时间,在最新的录像保留时间确定后媒体功能实体在该时间到达后自动删除(可以采用定时器的方式进行);该请求可由服务控制功能实体向媒体功能实体直接发起或者经过业务控制功能实体或业务选择功能实体转发给媒体功能实体。
步骤309:媒体功能实体向服务控制功能实体返回成功录制的确认信息;确认信息可由媒体功能实体直接发送给服务控制功能实体或经过业务控制功能实体或业务选择功能实体转发给服务控制功能实体。
步骤310:服务控制功能实体向业务控制功能实体或业务选择功能实体发送录像的响应消息;
步骤311:业务控制功能实体或业务选择功能实体向用户设备发送录像响应消息;
步骤312:如果用户发起的网络录像的节目为非时移频道的节目或者该节目没有被其他用户发起录制过则开始节目的录制过程。如果该直播业务录制不是一个完整的节目,则录制一个完整的节目,并加上录制的标签信息(起始时间、结束时间),如果其包含多个节目,则录制相应的完整的节目。
图4为本发明IPTV系统中共用存储的系统的逻辑结构图,在逻辑上,本发明有时移重用判断模块、用户重用判断模块、重用模块、录制模块及响应模块组成。
时移重用判断模块的实现为:由服务控制功能实体根据用户发送的录像请求判断所请求录制的直播业务或直播节目是否是时移频道的内容,若是则通知重用模块执行,否则通知用户重用判断模块执行。
用户重用判断模块的实现为:由服务控制功能实体根据用户发送的录像请求判断所请求录制的直播业务或直播节目是否有其他用户录制过相同的内容,若是则通知重用模块执行,否则通知录制模块执行;
重用模块的实现为:由服务控制功能实体将录像请求包含的信息(内容信息、录制开始时间、录制结束时间、录像保留时间等)保存在用户信息服务功能实体中,然后将重用结果消息通知给响应模块;
录制模块的实现为:用于在不可重用的情况下保存录像请求包含的信息并根据用户设备发送的录像请求执行相应的录制操作;
响应模块的实现为:由服务控制功能实体将录像响应消息发送给业务控制功能实体或业务选择功能实体,业务控制功能实体或业务选择功能实体将其转发给用户设备。
如上所述,借助本发明实施例提供的技术方案,通过网络侧在收到用户的录像请求后,判断该频道是否时移频道,如果是则重用该频道存储的内容;不是时移频道则可重用其他已经录制该节目的其他网络录像业务的内容,解决了不同的需要录制同样节目到网络中的存储浪费及网络性能低下的问题。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。