应用于服务提供设备的数据处理方法和设备与流程

文档序号:12375718阅读:228来源:国知局
应用于服务提供设备的数据处理方法和设备与流程

本申请涉及通信技术领域,特别是涉及一种服务提供设备、一种应用于服务提供设备的数据处理方法和一种智能电视系统。



背景技术:

随着互联网技术的发展,智能电视、数字视频变换盒的出现,使得电视节目系统也越来越智能化,除了传统的电视节目的播出之外,还可以进行互联网活动。

STB(数字视频变换盒,Set Top Box)又称机顶盒,是一个连接电视机与外部信号源的设备。机顶盒可以将压缩的数字信号转成电视内容,并在电视机上显示出来。所述数字信号可以来自有线电缆、卫星天线、宽带网络以及地面广播等等。机顶盒除了可以接收上述可以转换为电视内容的数字信号之外,还可以接收数字内容,例如,电视节目指南、因特网网页、电子邮件等等。使用户能在现有电视机上观看数字电视节目,并可以通过网络进行交互式数字化娱乐、教育和网络购物等活动。

由上可见,上述数字电视节目的播出、交互式数字化娱乐、教育和网络购物等活动都需要通过所述机顶盒(或智能电视)实现。而互联网技术的发展是日新月异的、是不断地在更新变化的,机顶盒要满足这一发展和变化,则需要不断地进行更新。然而,所述机顶盒的更新需要丢弃旧的机顶盒,这造成了资源的浪费。



技术实现要素:

本申请实施例所要解决的技术问题是提供一种服务提供设备、一种应用于服务提供设备的数据处理方法和一种智能电视系统,能够降低智能电视服务对硬件资源的要求,且能够节约用户购买或更新机顶盒所花费的成本。

为了解决上述问题,本申请公开了一种服务提供设备,包括:

界面编码模块,用于对用户界面进行编码;

流处理模块,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;及

消息处理模块,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理包括:对所述用户界面进行更新。

另一方面,本申请公开了一种应用于服务提供设备的数据处理方法,包括:

对用户界面进行编码;

依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理包括:对所述用户界面进行更新。

再一方面,本申请公开了一种智能电视系统,包括:前述的服务提供设备。

与现有技术相比,本申请实施例包括以下优点:

本申请实施例中,服务提供设备可以向所连接的客户端推送用户界面对应的传输流,这使得客户端可以对依据所述传输流解析得到的用户界面进行显示;并且,服务提供设备还可以接收来自所述客户端的、用户通过遥控器、鼠标等输入装置产生的输入消息,并依据所述输入消息对服务提供设备的用户界面进行更新;由于服务提供设备负责当前输入信息对应用户界面的获取,而客户端仅仅负责传输流的解析和用户界面的显示,因此,本实施例可以通过服务提供设备直接为客户端提供智能电视服务,这降低了对于机顶盒的性能要求,因此减少了对于机顶盒的维护操作,降低了智能电视服务对硬件资源的要求,同时节约了用户购买或更新机顶盒所花费的成本。

附图说明

图1是本申请的一种智能电视系统的结构示意图;

图2是本申请的一种服务提供设备实施例一的结构框图;

图3是本申请的一种服务提供设备实施例三的结构框图;

图4是本申请的一种服务提供设备实施例四的结构框图;

图5是本申请的一种服务提供设备实施例五的结构框图;

图6是本申请的一种服务提供设备实施例六的结构框图;

图7是本申请的一种服务提供设备实施例七的结构框图;

图8本申请的一种客户端和服务提供设备间通信方法的流程图;

图9是本申请的另一种客户端和服务提供设备间通信方法的流程图;

图10是本申请的一种应用于服务提供设备的数据处理方法实施例一的步骤流程图;

图11是本申请的一种应用于服务提供设备的数据处理方法实施例二的步骤流程图;

图12本申请的一种应用于服务提供设备的数据处理方法实施例三的步骤流程图;以及

图13本申请的一种应用于服务提供设备的数据处理方法实施例四的步骤流程图。

具体实施方式

为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。

本申请提供了一种智能电视系统,该智能电视系统可以包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器用于向所述客户端分配服务提供设备;所述客户端可以设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务。服务器在接收到客户端的登录请求之后,可以根据设定分配策略从云端的多个服务提供设备中选择一个服务提供设备分配给所述客户端。

在本申请的一种优选实施例中,所述智能电视系统,还可以包括至少一个用户数据信息存储设备;所述至少一个用户数据信息存储设备具体可以包括:至少一个用户分区;其中,所述至少一个用户分区分别用于存储不同客户端对应的用户数据。

在本申请的另一种优选实施例中,所述服务提供设备具体可以包括:网络机顶盒;所述互联网服务,具体可以包括如下中的至少一个:电视直播、音视频服务、网页服务、游戏服务。

传统方案中,普通机顶盒往往较为陈旧,性能也比较弱,不足以运行大型游戏和应用,用户往往需要升级或者替换更新的机顶盒以满足大型游戏和应用等娱乐需求。

而本申请实施例可以将性能较强的OTT(过顶传球,OverTheTop)网络机顶盒集成至云端的设备服务器上,并通过视频流化技术,将OTT机顶盒的性能通过网络传输到性能较弱的上述客户端对应的普通机顶盒上,使普通机顶盒可以在不升级硬件的情况下使用高端功能。在具体实现中,可以将性能较强的OTT机顶盒(如天猫魔盒)中的所有功能数据流化后提供给普通机顶盒,上述功能包括但不限于:游戏、应用、电影、电视剧、教育、视频聊天、K歌等。

在具体实现中,设备服务器中的每一片网络机顶盒具备的性能包括但不限于:处理性能、图形计算性能、大内存、低功耗等等,本领域技术人员可以根据实际需要量化这些性能的指标,以实现在网络机顶盒上运行目前市面上的大型游戏和应用,播放1080P以及2K等规格的电影。

对于普通机顶盒而言,其可以具备播放视频流的性能,以及具备访问IP(网络之间互联的协议,Internet Protocol)网络的性能即可,其中,上述视频流的格式可以为RTSP(实时流传输协议,Real Time Streaming Protocol)720P等等。对于具备上述性能的普通机顶盒而言,其在安装了网络机顶盒对应的客户端后,就可以通过该客户端上传键值指令,接收并播放来自网络机顶盒的传输流,

综上,大型的游戏和应用的功能数据可以在云端的设备服务器中运行,这些数据可以RTSP视频流的形式传输到普通机顶盒上进行播放,因此能够实现使用普通机顶盒进行高端娱乐的目的。并且,本申请实施例可以适用于电信/广电运营商,以增强这些运营商的已有的普通机顶盒的性能。

这里需要说明的是,在本申请的方案中,服务提供设备可以作为硬件 设备设置在云端,软件(应用程序)可以安装在服务提供设备中,服务提供设备可以在云端将各类应用程序的UI(用户界面,User Interface)进行编码,客户端可以具有基本解码性能以向用户展现应用程序的用户界面,实现对各类应用程序的操作。换而言之,在本申请的方案中,可以将软件(应用程序)安装在服务提供设备中,通过服务提供设备为用户提供服务,其可以适用于已有的普通机顶盒、或者适用于与普通机顶盒具有等同的播放视频流的性能和访问IP网络的性能的智能终端。例如,可以直接通过所述客户端将智能终端与所述服务提供设备进行连接,用户不需要单独购买/更新机顶盒,节约了用户成本;同时,智能终端与所述服务提供设备可以直接进行交互,提高了交互效率,减少了对机顶盒的维护步骤,降低了对资源的占用。进一步地,所述服务器可以是指一个服务器,也可以是指等同于所述调度服务器功能的多个服务器组成的服务器群组。

参照图1,示出了本申请的一种智能电视系统的结构示意图,具体可以包括:至少一个客户端(如图1所示的客户端101)、至少一个设备服务器(如图1所示的设备服务器102)和至少一个调度服务器(如图1所示的调度服务器103)。其中,每个设备服务器101中包括至少一个服务提供设备(如图1所示的设备服务器102中的服务提供设备121)。

此外,优选地,所述智能电视系统还可以包括:至少一个管理服务器(如图1所示的管理服务器104)和至少一个用户数据信息存储设备(如图1所示的用户数据信息存储设备105)。需要说明的是,所述用户数据信息存储设备用于存储用户数据信息,一个用户可以对应一个专用的用户数据信息存储设备,多个用户也可以共有同一个用户数据信息存储设备,本实施例对此不作限制。其中,所述用户数据信息存储设备可以是物理设备,也可以是逻辑设备,还可以是物理和逻辑相结合的设备。例如,所述用户数据信息存储设备中可以包括至少一个用户分区(如图1所示的用户分区151),每个用户分区对应存储一个用户的用户数据信息。

其中,客户端101位于智能终端侧,其可以呈现为智能终端中装载的APP的形式;一方面,客户端101可用于播放服务提供设备121发送的TS (传输流,Transport Stream)所解析出的UI,以及播放从其他网络服务器中获取的多媒体数据(如视频信号、音频信号等);另一方面,客户端101可用于监听用户通过遥控器等输入装置产生的输入消息,并将该输入消息发送给服务提供设备121或者调度服务器103;从而客户端101可以接收服务提供设备121推送的用户界面(如游戏类应用、视频类应用等各种应用的用户界面)相关数据,对所接收的用户界面相关数据进行解析并显示即可;并且,客户端101还可以将所接收的用户对用户界面控制的输入消息,转发给服务提供设备121以使其据此更新用户界面;

服务提供设备121位于网络侧,其数量可以依据系统需求设定,其中,每个服务提供设备121具体可以包括:硬件板卡和硬件板卡所承载的软件模块;其软件模块可以基于安卓等操作系统,这样,每个服务提供设备121中可以通过该操作系统安装众多应用(如游戏类应用、视频类应用等),并通过TS流向客户端101传输已安装应用的信息,以供客户端101从众多已安装应用中选择所需的应用;需要说明的是,安卓只是作为服务提供设备121所使用操作系统的一种示例,本申请实施例对服务提供设备121所使用的具体操作系统不加以限制;

用户分区151位于网络侧,其数量可以依据注册用户的信息确定,数据分区105与注册用户可以具有一对一的对应关系,通常可以在完成一个新用户的注册后,可以为对应的新用户建立相应的一个或多个用户分区151;对于每个用户分区151而言,在其对应用户登录后可以被挂载到服务提供设备121之上,而在其对应用户未登录时其可以与服务提供设备121不具备挂载关系;

调度服务器103位于网络侧,主要用于依据客户端101发送的输入消息,完成客户端101对应用户的登录,并分配一个空闲的、状态良好的服务提供设备121与客户端102对接;同时,还可以依据登录用户的ID(标识,Identity)确定登录用户对应的用户分区151,并将所述用户分区151的地址信息发送给服务提供设备121,以使所述服务提供设备121将所述用户分区151挂载到所分配的服务提供设备121上;可见,每个用户分区151可以与 唯一的用户相对应,如用户分区A对应用户A等等,这样,用户A在客户端101与上次分配的、编号为001的服务提供设备121断开连接后,即使下次连接的是编号为002的服务提供设备121,用户A仍然可以使用用户分区A存储产生的用户数据,因此可以通过访问用户分区A查看所有的历史数据;

管理服务器104位于网络侧,可用于对所有的服务提供设备121进行管理,所述管理具体可以包括:状态上报、心跳管理、设置属性、获取属性、网络唤醒、软重启、硬重启等。

实施例一

参照图2,示出了本申请的一种服务提供设备实施例一的结构框图,具体可以包括如下模块:

界面编码模块201,用于对用户界面进行编码;

流处理模块202,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;及

消息处理模块203,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新。

本申请的服务提供设备可用于类似图1的智能电视系统,本申请实施例对服务提供设备所对应的智能电视系统不加以限制。

在实际应用中,服务提供设备可以采用安卓、Linux、Windows等操作系统,本实施例的上述界面编码模块201、流处理模块202和消息处理模块203则可以在上述操作系统的支持下运行,本申请实施例主要以安卓为例进行说明,其它操作系统相互参照即可。

在具体实现中,界面编码模块201可以在服务提供设备与客户端建立连接后,对服务提供设备的用户界面进行编码。在此提供一种服务提供设备与客户端建立连接的过程:在用户通过客户端输入用户名和密码后,客户端发送用户名和密码给调度服务器,调度服务器会分配一个服务提供设备与该 客户端对接,并发送该服务提供设备的IP地址给该客户端,客户端收到该服务提供设备的IP地址后对该服务提供设备发起连接请求;服务提供设备收到该连接请求后可以与该客户端建立连接。

在本申请的一种应用示例中,服务提供设备初始的用户界面可以为用于展示所有已安装应用的用户界面A,或者,服务提供设备初始的用户界面还可以为用于展示所有已安装应用的一级用户界面B等等;而服务提供设备后续的用户界面可以为依据来自客户端的输入消息更新得到的用户界面(如一级用户界面B对应的二级用户界面和三级用户界面等等)。例如,客户端在对用户界面A进行显示后,若接收到用户通过遥控器、鼠标等输入装置发出的、对用户界面A中的某一应用C的安装指令,则可以将该安装指令发送给服务提供设备,由服务提供设备依据该安装指令获取该应用C的安装过程以及安装完毕对应的界面,并将获取的界面作为服务提供设备当前的用户界面。从而对于上述输入消息的响应处理(如应用C的安装)实质上是在服务提供设备中完成的,而客户端仅显示了服务提供设备推送的流化方式的用户界面。

在本申请的一种优选实施例中,为了提高对用户界面进行更新的速度,可以预先将全部或部分已安装应用的用户界面数据放至帧缓冲设备(Frame Buffer)中,这样,当消息处理模块203在接收到来自所述客户端的输入消息后,可以依据该输入消息在上述帧缓冲设备中查找得到相匹配的用户界面数据,假设该输入消息中携带有应用A和安装指令的信息,则可以在上述帧缓冲设备中查找得到应用A的安装指令对应的用户界面信息。

在具体实现中,界面编码模块201可以按照预置的编码格式对服务提供设备的用户界面进行编码,所述预置的编码格式具体可以包括:H.264等等,本申请实施例对具体的编码格式不加以限制。

在本申请的一种应用示例中,流处理模块202可以采用流化方式通过RTSP(实时流传输协议,Real Time Streaming Protocol)生成用户界面的编码结果对应的TS流,并将TS流推送给客户端以在所述客户端显示相应的用户界面;可以理解,上述通过RTSP生成TS流的方式只是作为示例,而 不理解为本申请实施例的应用限制,本申请实施例对TS流的具体生成方式不加以限制。

综上,本实施例中,服务提供设备可以向所连接的客户端推送用户界面对应的传输流,这使得客户端可以对依据所述传输流解析得到的用户界面进行显示;并且,服务提供设备还可以接收来自所述客户端的、用户通过遥控器、鼠标等输入装置产生的输入消息,并依据所述输入消息对服务提供设备的用户界面进行更新;由于服务提供设备负责当前输入信息对应用户界面的获取,而客户端仅仅负责传输流的解析和用户界面的显示,因此,本实施例可以通过服务提供设备直接为客户端提供智能电视服务,这降低了对于机顶盒的性能要求,因此减少了对于机顶盒的维护操作,降低了智能电视服务对硬件资源的要求,同时节约了用户购买或更新机顶盒所花费的成本。

实施例二

本实施例的服务提供设备在上述实施例一的基础上,进一步还可以包括如下可选技术方案。

本实施例中,所述流处理模块202,还可用于依据所述客户端的多媒体播放请求获取相应的多媒体播放信息,并将所述多媒体播放信息反馈给所述客户端。

客户端当前显示的用户界面可以提供视频、音频等多媒体资源的多媒体播放接口,用户可以通过该多媒体播放接口触发相应的多媒体播放请求,也即,上述多媒体播放请求为通过触发上述用户界面产生的请求。然而,由于多媒体资源特别是清晰度、质量等要求较高的多媒体资源的数据量往往比较大,故采用TS流传输多媒体资源的方式对带宽要求较高,若客户端对应智能终端的带宽较低则有可能出现多媒体资源的播放质量下降等问题。

本实施例中,服务提供设备可以不采用传输流的形式传输多媒体资源,而是依据所述客户端的多媒体播放请求获取相应的多媒体播放信息,并将所述多媒体播放信息反馈给所述客户端,由所述客户端依据所述多媒体播放信息请求并播放对应的多媒体资源,因此,能够避免带宽较低导致的多媒体资 源的播放质量下降等问题。

在具体实现中,服务提供设备可以从网络查询该多媒体播放请求对应的多媒体播放信息,例如,服务提供设备可以从CDN(内容分发网络,Content Delivery Network)服务器获取该多媒体播放请求对应多媒体资源的播放地址,如URL(统一资源定位符,Uniform Resource Locator),将该URL作为多媒体播放信息反馈给客户端。当然,上述URL只是作为多媒体播放信息的应用示例,而不理解为多媒体播放信息的应用限制,实际上,多媒体资源的名称等其它多媒体播放信息也是可行的。

在本申请的一种优选实施例中,所述流处理模块202,还可用于在接收到所述客户端发送的传送停止指令后,暂停为所述客户端推送传送流。当客户端确定要播放多媒体资源时,由于客户端侧显示的用户界面是由服务提供设备推送的TS流解析显示的,因此,为了避免用户界面与多媒体资源的冲突,客户端可以向服务提供设备发送传送停止指令,该传送停止指令可用于告知服务提供设备暂停对TS流的推送。而服务提供设备在接收到该传送停止指令后,可以暂停向该客户端推送TS流。

在本申请的另一种优选实施例中,所述流处理模块202,还可用于在接收到所述客户端发送的重新开始指令后,重新向所述客户端推送所述传输流。在具体实现中,服务提供设备可以断点记录等形式保留该客户端在播放前的用户界面,这样,在接收到重新开始指令后,可以从该断点记录开始继续向该客户端推送用户界面对应的TS流。

综上,本实施例中,服务提供设备采用TS流的形式向客户端推送用户界面,而向客户端发送多媒体播放信息使得客户端依据该多媒体播放信息获取对应的多媒体资源,对于客户端而言,由于采用不同的方式获取用户界面和多媒体资源,因此能够避免用户界面和多媒体资源的冲突,从而能够保证用户界面的显示质量和多媒体资源的播放质量。

实施例三

参照图3,示出了本申请的一种服务提供设备实施例三的结构框图,具 体可以包括如下模块:

界面编码模块301,用于对用户界面进行编码;

流处理模块302,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

消息处理模块303,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;及

分区操作模块304,用于将所述客户端的登录用户对应的用户分区挂载到本地,并将所述登录用户产生的用户数据写入挂载后的用户分区。

相对于实施例一,本实施例还可以采用与用户对应的用户分区来专门存储用户产生的用户数据,这些用户分区独立于服务提供设备的存储空间,对于每个用户分区而言,在其对应用户登录后可以被挂载到服务提供设备之上,而在其对应用户未登录时其可以与服务提供设备不具备挂载关系;由于每个用户分区可以与用户对应,这样,无论用户通过客户端连接了哪个服务提供设备,连接的该个服务提供设备均可采用该用户对应的用户分区来存储该用户采用的用户数据,也即该用户分区可以存储该用户产生的所有历史数据,从而能够满足该用户对于所有历史数据的访问需求;假设用户分区A对应用户A,则用户A在客户端与上次分配的、服务提供设备001断开连接后,即使下次连接的是服务提供设备002,用户A一直使用用户分区A存储产生的用户数据,因此可以通过访问用户分区A查看所有历史数据。

挂载可用于表示将存储设备或者磁盘分区挂接到一个已存在的目录上的操作,具体到本申请实施例,挂载可用于表示将用户分区挂接到服务提供设备中一个已存在的本地目录上。则挂载后的用户分区可用于表示已经与服务提供设备的本地目录挂接的用户分区,在服务提供设备本地打开该本地目录时,就可以直接访问其挂接的用户分区下的数据文件。

在具体实现中,可以采用存储网络(Storage Network)技术来实现所述用户分区,该存储网络技术将存储器从应用服务器中分离出来进行集中管 理,因此具有统一性、容易扩充等优点。该存储网络技术具体可以包括:NAS(网络附属存储,Network-Attached Storage)和SAN(存储区域网络,Storage Area Network)等技术;其中,NAS技术的用户可以通过TCP/IP(传输控制协议/网际协议,Transmission Control Protocol/Internet Protocol)访问数据,采用NFS(网络文件系统,Network File System)、HTTP(超文本传送协议,Hypertext transfer protocol)、CIFS(网络文件共享系统,Common Internet File System)等标准文件共享协议实现共享;而SAN技术的用户可以通过专用光纤通道交换机访问数据,可以采用SCSI(small computer system interface,小型计算机系统接口)、FC-AL(光纤通道仲裁环路,FIBRE CHANNEL ARBITRATED LOOP)等接口。本申请实施例主要以NAS技术为例对用户分区及其挂载过程进行说明,其它存储网络技术的用户分区及其挂载过程相互参照即可。

在本申请的一种应用示例中,NAS存储器件具体可以包括:磁盘阵列、CD/DVD驱动器、磁带驱动器或可移动的存储介质等;可以在一个磁盘上划分多个目录,其中的每个目录可以对应一个用户分区,也即,用户分区与网络附属存储NAS存储器件中的目录一一对应。

在本申请的一种优选实施例中,所述分区操作模块304将所述客户端的登录用户对应的用户分区挂载到本地的过程,具体可以包括:接收服务器发送的登录用户对应的用户分区的地址信息;依据所述登录用户对应的用户分区的地址信息,将所述客户端的登录用户对应的用户分区挂载到本地。

在具体实现中,所述分区操作模块304接收服务器发送的登录用户对应的用户分区的地址信息的过程,具体可以包括:接收服务器推送的登录用户对应的用户分区的地址信息;或者,向服务器发送挂载请求,其中,所述挂载请求中携带所述登录用户的信息,并接收所述服务器依据所述挂载请求返回的所述登录用户对应的用户分区的地址信息。

一方面,由于服务器在为客户端调度并分配服务提供设备之前,客户端已经通过用户ID等方式登录到服务器,因此,服务器在客户端连接服务 提供设备前已经获知了客户端的登录用户的信息(如用户ID),从而,服务器可以依据登录用户的ID(标识,Identity)确定登录用户对应的用户分区的地址信息;另一方面,由于客户端连接的服务提供设备是由服务器调度得到的,因此服务器在客户端连接服务提供设备前已经获知了服务提供设备的地址信息(如IP地址信息);因此,服务器可以依据服务提供设备的地址信息将所述登录用户对应的用户分区的地址信息推送给对应服务提供设备。

在实际应用中,服务器可以预先建立并维护用户与用户分区之间映射关系,如用户ID为用户分区的地址信息之间的映射关系,这样,可以依据登录用户的ID,在该映射关系中查找与登录用户的ID相匹配的用户分区的地址信息。

在本申请的一种应用示例中,可以利用NFS技术实现用户分区的挂载。具体地,服务提供设备可以实现一个NFS客户端,服务器可以实现一个NFS服务端,这样,服务提供设备可以通过NFS客户端接收服务器的NFS服务端发送的登录用户对应的用户分区的地址信息。

在本申请的应用实例中,所述登录用户对应的用户分区的地址信息具体可以包括:服务器的网络地址和所述用户分区的目录地址,例如,接收到的登录用户对应的用户分区的地址信息为http://10.10.88.69/nfs/001,其中,10.10.88.69表示服务器的IP地址,nfs/001表示登录用户对应的用户分区在服务器上的磁盘目录。

在具体实现中,可以将所述客户端的登录用户对应的用户分区挂载到本地的用户分区目录,这里的用户分区目录可以是预先设置的,也可以是服务提供设备在接收到所述登录用户对应的用户分区的地址信息后临时创建的。由于将所述客户端的登录用户对应的用户分区挂载到本地的用户分区目录,如服务提供设备/data,从而在服务提供设备打开用户分区目录时,可以直接访问远程的、所述登录用户对应的用户分区,而无需将所述登录用户对应的用户分区下载到本地,这使得服务提供设备将不再受到存储容量的限制。

假设接收到的登录用户对应的用户分区的地址信息为http://10.10.88.69/nfs/001,本地的用户分区目录为服务提供设备/data,服务提供设备采用安卓系统,则可以通过mount命令将所收登录用户对应的用户分区nfs/001挂载到本地的用户分区目录—服务提供设备/data,从而,在本地打开目录服务提供设备/data时,就可以直接访问nfs/001下的数据文件。

本申请实施例通过将所述登录用户产生的用户数据写入挂载后的用户分区、而非写入服务提供设备的其它目录的方式,实现用户分区用于专门存储用户产生的用户数据的功能。需要说明的是,除了写入访问外,所述挂载后的用户分区还可以支持读取访问和删除访问等其它访问方式,例如,可以依据客户端的查询请求从所述挂载后的用户分区中读取用户数据并返回给用户端等等,本申请实施例对所述挂载后的用户分区的具体访问不加以限制。

综上,本实施例通过将所述登录用户产生的用户数据写入挂载后的用户分区、而非写入服务提供设备的其它目录的方式,实现用户分区用于专门存储用户产生的用户数据的功能;这样,无论登录用户通过客户端连接了哪个服务提供设备,连接的该个服务提供设备均挂载并采用该登录用户对应的用户分区来存储该登录用户采用的用户数据,使得该用户分区可以存储该用户产生的所有历史数据,从而使得该用户分区能够满足该用户对于所有历史数据的访问需求。并且,本实施例无需将所述登录用户产生的用户数据写入服务提供设备,因此还能够节省服务提供设备的存储空间。

实施例四

参照图4,示出了本申请的一种服务提供设备实施例四的结构框图,具体可以包括如下模块:

界面编码模块401,用于对用户界面进行编码;

流处理模块402,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

消息处理模块403,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;及

分区操作模块404,用于将所述客户端的登录用户对应的用户分区挂载到本地,并将所述登录用户产生的用户数据写入挂载后的用户分区;

其中,所述分区操作模块404具体可以包括:

第一检测子模块441,用于检测挂载后的用户分区中是否存在已安装应用的数据文件;及

文件写入子模块442,用于在所述挂载后的用户分区中不存在所述已安装应用的数据文件时,将所述已安装应用的数据文件写入所述挂载后的用户分区。

由于服务提供设备的用户界面可以为关于所有或部分已安装应用的用户界面,并且每个用户都有可能使用每个已安装应用并在使用过程中产生对应的用户数据,因此,需要实现将每个已安装应用复用于每个用户分区,以满足采用用户分区存储用户在使用每个应用程序过程中产生的用户数据的需求。

为了实现将每个已安装应用复用于每个用户分区,本实施例可以在每次挂载用户分区后,检测挂载后的用户分区中是否存在已安装应用的数据文件,并在所述挂载后的用户分区中不存在所述已安装应用的数据文件时,将所述已安装应用的数据文件写入所述挂载后的用户分区;上述检测挂载后的用户分区和将所述已安装应用的数据文件写入所述挂载后的用户分区的操作,能够实现用户分区中应用的数据文件与服务提供设备中应用的一致性,能够确保挂载后的用户分区中存在服务提供设备中所有已安装应用的数据文件,而某已安装应用的数据文件可用于存储用户在使用该已安装应用过程中产生的用户数据,因此可以满足采用用户分区存储用户在使用每个应用程序过程中产生的用户数据的需求。

在实际应用中,可以在每个已安装应用安装完成后,可以将这个已安装应用的数据文件放至第一临时存储区,这样,在所述挂载后的用户分区 中不存在所述已安装应用的数据文件时,可以从所述第一临时存储区读取所述已安装应用的数据文件,并将读取内容写入到所述挂载后的用户分区。

在具体实现中,可以在挂载后的用户分区中查找与已安装应用的信息相匹配的数据文件,若查找到,则所述挂载后的用户分区中存在所述已安装应用的数据文件,若未查找到,则所述挂载后的用户分区中不存在所述已安装应用的数据文件。

进一步,所述已安装应用具体可以包括:已安装的所有应用、或者在第一预置时间内被安装的应用;其中,在所述已安装应用表示已安装的所有应用时,需要在挂载后的用户分区中查找与已安装的所有应用的信息相匹配的数据文件,需要花费较多的时间成本;而在所述被安装应用表示在第一预置时间内被安装的应用时,需要在挂载后的用户分区中查找与已安装的部分应用的信息相匹配的数据文件,因此,花费的时间成本较少。

在本申请的一种实施例中,可以监控安装应用的行为,并在监控到安装应用的行为时,将所安装应用作为已安装应用,并记录所述已安装应用的信息;其中,所述已安装应用的信息具体可以包括如下信息中的一种或多种:所述已安装应用的文件夹信息和所述已安装应用的数据文件信息。

在本申请的一种优选实施例中,为了避免应用管理影响到客户端的访问效率,可以在服务提供设备未连接客户端的情况下进行应用的管理,如安装和/或卸载和/或升级应用等等,具体地,服务器可以在所有服务提供设备上触发应用的管理以保证不同服务提供设备向客户端提供相同的服务,以安装应用为例,服务器可以向服务提供设备发送安装包,服务提供设备依据该安装包进行对应应用的安装。

在实际应用中,除了所述已安装应用的文件夹信息和所述已安装应用的数据文件信息外,所述已安装应用的信息还可以包括:已安装应用的安装时间信息,这样,可以依据已安装应用的安装时间信息确定所述在第一预置时间内被安装的应用。例如,所述预置时间可以为最近一个维护周期(服务器对于应用的管理周期,如1小时或者24小时);或者,所述第一 预置时间还可以为从当前用户分区上次被挂载的时间到当前时间之间的时间段等等,由于每次挂载用户分区后都会实现用户分区中应用的数据文件与服务提供设备中应用的一致性,故可以忽略当前用户分区上次被挂载的时间之前的已安装应用;可以理解,本领域技术人员可以根据实际需求确定具体的维护周期或者第一预置时间,本申请实施例对具体的维护周期或第一预置时间不加以限制。

实施例五

参照图5,示出了本申请的一种服务提供设备实施例五的结构框图,具体可以包括如下模块:

界面编码模块501,用于对用户界面进行编码;

流处理模块502,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

消息处理模块503,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;及

分区操作模块504,用于将所述客户端的登录用户对应的用户分区挂载到本地,并将所述登录用户产生的用户数据写入挂载后的用户分区;

其中,所述分区操作模块504具体可以包括:

其中,所述分区操作模块504具体可以包括:

第二检测子模块541,用于检测挂载后的用户分区中是否存在已卸载应用的数据文件;

删除子模块542,用于在所述挂载后的用户分区中存在所述已卸载应用的数据文件时,删除所述挂载后的用户分区中所述已卸载应用的数据文件。

为了实现用户分区中应用的数据文件与服务提供设备中应用的一致性,本实施例可以在每次挂载用户分区后,检测挂载后的用户分区中是否存在已卸载应用的数据文件,并在所述挂载后的用户分区中存在所述已卸 载应用的数据文件时,删除所述挂载后的用户分区中所述已卸载应用的数据文件;上述检测挂载后的用户分区和删除所述挂载后的用户分区中所述已卸载应用的数据文件的操作,能够实现用户分区中应用的数据文件与服务提供设备中应用的一致性,能够确保挂载后的用户分区中不存在服务提供设备中已卸载应用的数据文件,因此可以在节省用户分区的存储空间的前提下,满足采用用户分区存储用户在使用每个应用程序过程中产生的用户数据的需求。

在具体实现中,可以在挂载后的用户分区中查找与已卸载应用的信息相匹配的数据文件,若查找到,则所述挂载后的用户分区中存在所述已卸载应用的数据文件,若未查找到,则所述挂载后的用户分区中不存在所述已卸载应用的数据文件。

进一步,所述已卸载应用具体可以包括:已卸载的所有应用、或者在第二预置时间内被卸载的应用;其中,在所述已卸载应用表示已卸载的所有应用时,需要在挂载后的用户分区中查找与已卸载的所有应用的信息相匹配的数据文件,需要花费较多的时间成本;而在所述被卸载应用表示在第二预置时间内被卸载的应用时,需要在挂载后的用户分区中查找与已卸载的部分应用的信息相匹配的数据文件,因此,花费的时间成本较少。

所述第二预置时间可以为最近一个维护周期(服务器对于应用的管理周期,如1小时或者24小时);或者,所述第二预置时间还可以为从当前用户分区上次被挂载的时间到当前时间之间的时间段等等,由于每次挂载用户分区后都会实现用户分区中应用的数据文件与服务提供设备中应用的一致性,故可以忽略当前用户分区上次被挂载的时间之前的已卸载应用;可以理解,本领域技术人员可以根据实际需求确定具体的维护周期或者第二预置时间,本申请实施例对具体的维护周期或第二预置时间不加以限制。

实施例六

参照图6,示出了本申请的一种服务提供设备实施例六的结构框图,具体可以包括如下模块:

界面编码模块601,用于对用户界面进行编码;

流处理模块602,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

消息处理模块603,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;及

远程管理模块604,用于配合服务器完成所述服务器对于服务提供设备的远程管理。

相对于实施例一,本实施例的服务提供设备还可以包括:远程管理模块604,远程管理模块604可以与服务器远程通信,以配合该服务器完成该服务器对于服务提供设备的远程管理,从而可以使得服务提供设备向客户端提供一致、正常和及时的智能电视服务。为了避免远程管理影响到客户端的访问效率,可以在服务提供设备未连接客户端的情况下进行上述远程管理。

在具体实现中,所述服务器对服务提供设备的远程管理具体可以包括:所述服务器对服务提供设备的应用管理、所述服务器对服务提供设备的进程清理和所述服务器对服务提供设备的心跳管理中的至少一种。

其中,所述服务器对服务提供设备的应用管理可以进一步包括安装应用、卸载应用等,实施例四和实施例五已经有所介绍,在此不作赘述,相互参照即可;

所述服务器对服务提供设备的进程清理具体可以包括:杀进程等,假设服务提供设备中存在后台运行的恶意应用,则服务器可以向该服务提供设备发送杀进程指令,以使该服务提供设备杀死该恶意应用;

所述服务器对服务提供设备的心跳管理可用于确定服务提供设备的工作状态,例如,服务提供设备可以按照周期向服务器发送心跳信息,而服务器可以对服务提供设备进行心跳检测,当服务提供设备的心跳检测结果符合预置的异常条件时,可认为该服务提供设备处于异常状态,并向该服务提供设备发送软重启指令;又如,当软重启指令被连续发送给服务提供设备的次数超出次数阈值、且服务提供设备的心跳检测结果符合预置的异常条件 时,可以认为该服务提供设备出现死机故障,因此可以向该服务提供设备对应的管理设备发送硬重启指令,以实现该服务提供设备的硬重启;其中,上述预置的异常条件具体可以包括:在预置时间内未收到服务提供设备的心跳信息,假设预置时间为5分钟,如果在5分钟内未收到服务提供设备的心跳信息,则可判定所述服务提供设备处于异常状态,本申请实施例对具体的预置时间不加以限制。所述预置的异常条件具体可以包括:心跳信息中携带的服务提供设备的硬件资源信息超出对应的预设阈值,和/或,心跳信息中携带的服务提供设备状态信息为异常;其中,所述预设阈值表示服务提供设备的硬件资源出现故障的极限值。服务提供设备和服务器可以基于TR069协议进行心跳通信,当然,本申请实施例对服务提供设备和服务器之间的具体通信方式及具体的心跳管理方式不加以限制。

在本申请的一种优选实施例中,所述远程管理模块604,可具体用于利用守护进程,配合所述服务器完成所述服务器对于服务提供设备的远程管理。例如,安卓系统的结构具体可以包括:Natvie(驱动)层、Framework(框架)层和应用层等,其中,通常的软件模块(如上述界面编码模块601-远程管理模块604)通常运行于应用层,然而应用层获取系统权限的难度较大;而常驻在Natvie层的Daemon(守护进程)带有Root权限,可以执行应用层没有权限执行的操作,如杀进程操作等等,故可以利用守护进程配合所述服务器完成所述服务器对于服务提供设备的远程管理。

在本申请的另一种优选实施例中,所述服务器对服务提供设备的远程管理可以为所述服务器对服务提供设备的应用管理,则所述远程管理模块604具体可以包括:

应用更新子模块,用于在接收到来自所述服务器的更新指令后,依据所述更新指令中携带的待更新应用信息更新服务提供设备中的应用;其中,所述待更新应用信息是由所述服务器依据所述服务提供设备中已安装的应用确定的。

本优选实施例中,服务器可以根据服务提供设备中已安装的应用确定待更新应用信息,然后通知服务提供设备根据待更新应用信息进行应用的更 新,并在确定所述服务提供设备中的应用成功更新之后,为所述成功更新之后的服务提供设备重新分配服务提供设备版本号;这样,服务器可以根据更新后的服务提供设备版本号为客户端分配服务提供设备。例如,服务器可以选择服务提供设备版本号最高的服务提供设备,并将选择的服务提供设备版本号最高的服务提供设备分配给客户端;由于服务提供设备版本号最高的服务提供设备中成功更新安装所有应用,故可以满足客户端的各类需求。

其中,服务器根据服务提供设备中已安装的应用确定待更新应用信息的过程具体可以包括:接收服务提供设备上报的所述已安装应用列表;从由所述服务器维护的多个应用列表中,获取所述设定应用列表;其中,所述设定应用列表对应的应用列表版本号不小于由所述服务器维护的其他应用列表的应用列表版本号;根据所述已安装应用列表与设定应用列表的比较结果,确定所述待更新应用信息;其中,所述已安装应用列表中具体可以包括服务提供设备中已安装的全部应用的应用信息;所述设定应用列表中具体可以包括:当前时刻已更新的所有应用的应用信息。

本领域技术人员应当明了的是,上述设定应用列表是不断更新的,每次更新之后,设定应用列表的应用列表版本号也随之更新,常用的应用列表版本号的更新方式是,当前应用列表版本号在前一应用列表版本号的基础上计数加一,当然不仅限于此。服务器可以将维护前的设定应用列表删除,仅保留维护后的设定应用列表;当然,为了适用于实际应用中可能存在的多种情况,服务器中也可以对多个版本的设定应用列表均进行保存,以根据不同的调用请求进行调用,例如,用户若请求安装旧版本的应用A(相对于应用的当前最新版本而言),则所述服务器可以调用保存的对应所述旧版本的应用A的旧版本的应用列表进行所述旧版本的应用A的安装。

这里需要说明的是,本实施例所述的版本号(包括:应用列表版本号、服务提供设备版本号等)的高低是相对于应用列表或服务提供设备的更新时间而言,并不仅限于版本号文字意义上的大小。例如,2015.2.1日第二次更新后的服务提供设备的服务提供设备版本号,可以认为是高于2015.2.1日第一次更新后的服务提供设备的服务提供设备版本号。

在本申请的一种优选实施例中,所述远程管理模块604,还可用于向所述服务器上报自身的状态,其中,上述状态具体可以包括:空闲状态和忙碌状态等,其中,在连接客户端的情况下,服务提供设备的状态可以为忙碌状态,在与客户端断开连接后,服务提供设备的状态可以更新为空闲状态,上报的上述空闲状态和忙碌状态可以作为上述服务器为客户端分配服务提供设备的有效依据。

在本申请的另一种优选实施例中,上述状态还可以包括休眠状态,这样,在为客户端分配服务提供设备时,上述服务器可以首先将处于休眠状态的服务提供设备唤醒,然后将其分配给对应的客户端。

实施例七

参照图7,示出了本申请的一种服务提供设备实施例七的结构框图,具体可以包括如下模块:

连接模块701,用于在与客户端建立加密连接后生成虚拟输入设备;

界面编码模块702,用于对用户界面进行编码;

流处理模块703,用于依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;及

消息处理模块704,用于接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;

其中,所述消息处理模块704,具体可以包括:

解密子模块741,用于接收所述客户端发送的加密的输入消息,对所述加密的输入消息进行解密;及

虚拟响应子模块742,用于将解密的输入消息写入所述虚拟输入设备,由所述虚拟输入设备对所述输入消息对应输入事件进行分发,得到所述输入消息的响应信息。

相对于实施例一,本实施例中,服务提供设备可以与客户端建立加密连接以保证数据传输的安全性,而后生成虚拟输入设备以模拟各种硬件的输 入消息,并且服务提供设备在接收客户端发送的加密的输入消息后,对所述加密的输入消息进行解密,然后将解密的输入消息写入所述虚拟输入设备,由所述虚拟输入设备对所述输入消息对应输入事件进行分发以响应所述输入消息并将响应信息反馈给客户端,可扩展性较高,处理过程比较简单,且能够通过服务提供设备实现快速、安全的对于输入消息的响应。

连接模块701

在具体实现中,服务提供设备可以通过SSL(安全套接层,Secure Sockets Layer)等方式与客户端建立加密连接,从而通过两者之间的加密通道传输数据,保证数据传输的安全性。

本实施例中服务提供设备在与客户端建立加密连接后,可以预先在用户空间虚拟一输入设备,通过该虚拟输入设备模拟硬件的输入消息,在系统注入用户的输入消息对应输入事件并进行分发,从而实现服务提供设备对输入消息的响应。

在本申请的一种应用示例中,连接模块701可以在启动后对端口进行监听,从所述端口接收信号与所述客户端建立加密的长连接,并在所述加密的长连接建立成功后,在用户空间内生成虚拟输入设备。

服务提供设备在启动后会启动SSL Socket Server监听指定端口,从该端口接收连接信号与该客户端建立长连接。在长连接建立成功后,服务提供设备在用户空间内生成虚拟输入设备。例如,采用Uinput虚拟一个输入设备/dev/input/Ali-vinput。其中,SSL Socket Server为服务提供设备用来接收加密输入信号的服务器应用。Uinput是linux用来实现用户空间输入设备的内核接口,利用它可以在用户空间虚拟输入设备,向系统中注入输入事件。

例如,可以采用如下方法创建虚拟输入设备:以Android系统为例,使用open("/dev/uinput",O_WRONLY|O_NONBLOCK)打开/dev/uinput设备获取fd;再使用ioctl(fd,UI_SET_EVBIT,EV_XXX)添加事件类型,包括同步事件、键盘事件、鼠标事件、触摸事件等;注册可接受的事件的值,包括键盘的键值、鼠标和触摸事件的x和y坐标等;初始化uinput_user_dev类型 的变量uidev,该变量中保存待虚拟的设备的基本信息,包括设备名和总线类型等;使用write(fd,&uidev,sizeof(uidev))将待虚拟的设备信息写入/dev/uinput设备;使用ioctl(fd,UI_DEV_CREATE)生成虚拟设备。其中,fd是指文件描述符,在获取设备的文件描述符的情况下可以操作设备,本实施例中fd指向/dev/uinput设备。ioctl是设备驱动程序中对设备的输入输出通道进行管理的函数,参数&uidev为命令名,sizeof(uidev)为命令所需参数,实际处理中可以sizeof(uidev)设置该参数,也可以不设置该参数,通过该ioctl函数对fd所指向的设备执行UI_SET_EVBIT命令,EV_XXX是命令的参数,以此来添加事件类型。Write函数用来向fd所指向的设备写入数据,uidev为数据的首地址,sizeof(uidev)为数据大小。

解密子模块741

上述输入消息可以为通过遥控器、鼠标、键盘等输入装置输入的消息;解密子模块741所进行解密处理的主要目的是从加密的输入消息中恢复出原始的输入消息。

在本申请的一个优选实施例中,对所述加密的输入消息进行解密的过程具体可以包括:对所述加密的输入消息进行对称解密或非对称解密,获取解密的二进制输入消息或解密的键值信息。其中,服务提供设备解密后得到的输入消息可以存在多种类型,如为指定系统的标准输入消息,又如为映射后的键值信息等,可以依据具体需求设定,或者依据需求对解密后的输入消息进行转换,得到所需的输入信息。

虚拟响应子模块742

在本申请的一种应用示例中,虚拟响应子模块742可以将输入事件分发给系统或应用等进行处理,从而对输入消息进行响应,如依据所述输入事件对用户界面进行更新等等,以实现对输入消息的快速响应。

在本申请的另一个优选实施例中,在对所述加密的输入消息进行解密之后,还可以按照预置规则将所述解密的输入消息映射成相应的键值信息;所述虚拟输入设备确定所述解密的输入消息对应的输入事件,具体可以包括:所述虚拟输入设备查找所述键值信息对应的输入事件。

本实施例中,对于解密的输入消息可能是数字信息,此时可以将该数字信息预设的映射表将其映射成相应的键值信息,如按照预置协议将数字信息反Map成键值信息。当输入消息表现为键值信息的形式时,虚拟输入设备可以查找所述键值信息对应的输入事件,而后对输入事件进行分发。

以安卓系统为例,一种虚拟输入设备对输入消息的处理过程具体可以包括:

1、硬件抽象层(Hardware Abstraction Layer,HAL)的EventHub通过epoll机制监听/dev/input/目录下的所有设备文件描述符的变化,一旦有输入事件写入设备,EventHub就能读取到该事件;

2、Framework层的InputReader从EventHub读入原始输入事件后转化为android平台的输入事件,再将输入事件传递给InputDispatcher;

3、InputDispatcher根据输入事件以及场景的不同将事件分发给上层应用或系统,例如Home键和Power键会交由系统处理而不是上层应用,方向键等会交由应用处理。

本实施例中,由于客户端显示的用户界面是依据服务提供设备发送的TS流解析显示的,因而用户对用户界面的控制,如选择某一功能,或者在其中安装APP等控制操作,看似是在客户端侧执行的,实际上均是将输入信息发送给服务提供设备,由服务提供设备执行相应的消息处理并反馈响应的TS流。

在本申请的另一优选实施例中,将所述输入事件分发给上层应用或操作系统进行响应处理,生成对应的响应信息,具体可以包括:将所述输入事件分发给上层应用或操作系统;所述上层应用或操作系统获取响应于所述输入事件的用户界面;将所述用户界面编码生成对应的TS流作为响应信息,以在所述客户端显示响应于输入消息的用户界面。

针对输入消息对应输入事件,虚拟输入设备会将该输入事件分发给对应的上层应用或操作系统,而后上层应用或操作系统获取响应于所述输入事件的用户界面,例如输入事件为选择某一功能,则用户界面可以为该功能对应的用户界面;又如输入事件为安装一APP,则用户界面为该APP安 装过程及安装完成对应的用户界面等等。

为使本领域技术人员更好地理解本申请,下面结合服务提供设备和客户端的交互流程说明上述对输入消息进行响应的过程。

1、对指定操作系统的标准输入消息的传输。

本实施例中,客户端可以解析TS流和显示对应的用户界面,并且发送指定操作系统的标准控制消息到服务提供设备,由服务提供设备对该标准控制消息进行响应处理。

参照图8,示出了本申请的一种客户端和服务提供设备间通信方法的流程图,具体可以包括:

8.02、客户端在启动后与服务提供设备建立加密连接;

8.04、服务提供设备生成虚拟输入设备;

8.06、客户端接收原始消息;

8.08、客户端映射得到指定系统的标准输入消息;

8.10、客户端将所述指定系统的标准输入消息进行二进制化处理,得到二进制的输入消息;

8.12、客户端将所述二进制的输入消息进行加密处理,得到加密的输入消息;

8.14、客户端将加密的输入消息发送给所述服务提供设备;

8.16、服务提供设备对所述加密的输入消息进行解密,获取解密的二进制输入消息;

8.18、服务提供设备将解密的输入消息写入所述虚拟输入设备;

8.20、服务提供设备的虚拟输入设备确定所述解密的输入消息对应的输入事件;

8.22、服务提供设备的虚拟输入设备将所述输入事件分发给上层应用或操作系统进行响应处理,生成对应的响应信息,包括响应的TS流;

8.24、服务提供设备将响应的TS流反馈给客户端;

8.26、客户端对响应的TS流进行解析,显示响应于所述输入消息的用户界面。

2、键值信息作为输入消息的传输。

参照图9,示出了本申请的另一种客户端和服务提供设备间通信方法的流程图。

9.02、客户端在启动后与服务提供设备建立加密连接;

9.04、服务提供设备生成虚拟输入设备;

9.06、客户端接收原始消息;

9.08、客户端确定所述原始消息对应的键值信息;

9.10、客户端将所述键值信息映射成数字信息作为输入消息;

9.12、客户端将所述键值信息进行加密处理,得到加密的输入消息;

9.14、客户端将加密的输入消息发送给所述服务提供设备;

9.16、服务提供设备对所述加密的输入消息进行解密,获取解密的数字信息;

9.18、服务提供设备将解密的数字信息映射成键值信息;

9.20、服务提供设备将键值信息写入所述虚拟输入设备;

9.22、服务提供设备的虚拟输入设备确定所述键值信息对应的输入事件;

9.24、服务提供设备的虚拟输入设备将所述输入事件分发给上层应用或操作系统进行响应处理,生成对应的响应信息,包括响应的TS流;

9.26、服务提供设备将响应的TS流反馈给客户端;

9.28、客户端对响应的TS流进行解析,显示响应于所述输入消息的UI界面。

本实施例中,服务提供设备的用户界面可以为关于所有或部分已安装应用的用户界面。

以用户在客户端中安装APP为例,用户通过输入设备发出对客户端显示的用户界面中的某一APP的安装指令后,客户端会获取该安装指令对应原始消息通过映射、加密等生成加密的输入消息发送给服务提供设备,服务提供设备对输入消息界面、映射等处理后,响应于该输入消息获取该APP的数据在服务提供设备端安装并记录相应的APP信息,并将安装过程 以及安装完成对应UI界面的TS流作为响应信息反馈给客户端进行显示。

又如用户通过外置设备选择开启已安装的某一游戏APP后,将对应加密的输入消息发送给服务提供设备后,服务提供设备响应于该输入消息会获取启动进入APP相应的UI缓存生成TS流作为响应信息发送给客户端显示,后续对于客户端发送的各种控制数据,服务提供设备也会发送响应控制数据的UI缓存对应TS流,客户端显示响应于用户控制的UI界面。

因而,本申请的智能电视系统可以预先购买游戏、视频等付费资源的应用,并安装在服务提供设备中,由服务提供设备向客户端提供这些付费资源的服务,从而用户可以通过客户端免费试用这些付费资源。

方法实施例

参照图10,示出了本申请的一种应用于服务提供设备的数据处理方法实施例一的步骤流程图,具体可以包括如下步骤:

步骤1001、对用户界面进行编码;

步骤1002、依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

步骤1003、接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新。

本实施例中,服务提供设备可以向所连接的客户端推送用户界面对应的传输流,这使得客户端可以对依据所述传输流解析得到的用户界面进行显示;并且,服务提供设备还可以接收来自所述客户端的、用户通过遥控器、鼠标等输入装置产生的输入消息,并依据所述输入消息对服务提供设备的用户界面进行更新;由于服务提供设备负责当前输入信息对应用户界面的获取,而客户端仅仅负责传输流的解析和用户界面的显示,因此,本实施例可以通过服务提供设备直接为客户端提供智能电视服务,这降低了对于机顶盒的性能要求,因此减少了对于机顶盒的维护操作,降低了智能电视服务对硬件资源的要求,同时节约了用户购买或更新机顶盒所花费的成本。

在本申请的一种优选实施例中,所述方法还可以包括:依据所述客户端的多媒体播放请求获取相应的多媒体播放信息,并将所述多媒体播放信息反馈给所述客户端。本优选实施例中,服务提供设备采用TS流的形式向客户端推送用户界面,而向客户端发送多媒体播放信息使得客户端依据该多媒体播放信息获取对应的多媒体资源,对于客户端而言,由于采用不同的方式获取用户界面和多媒体资源,因此能够避免用户界面和多媒体资源的冲突,从而能够保证用户界面的显示质量和多媒体资源的播放质量。

参照图11,示出了本申请的一种应用于服务提供设备的数据处理方法实施例二的步骤流程图,具体可以包括如下步骤:

步骤1101、对用户界面进行编码;

步骤1102、依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

步骤1103、接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;

步骤1104、将所述客户端的登录用户对应的用户分区挂载到本地,并将所述登录用户产生的用户数据写入挂载后的用户分区。

本实施例可以采用与用户对应的用户分区来专门存储用户产生的用户数据,这些用户分区独立于服务提供设备的存储空间,对于每个用户分区而言,在其对应用户登录后可以被挂载到服务提供设备之上,而在其对应用户未登录时其可以与服务提供设备不具备挂载关系;由于每个用户分区可以与用户对应,这样,无论用户通过客户端连接了哪个服务提供设备,连接的该个服务提供设备均可采用该用户对应的用户分区来存储该用户采用的用户数据,也即该用户分区可以存储该用户产生的所有历史数据,从而能够满足该用户对于所有历史数据的访问需求。

在本申请的一种优选实施例中,所述方法还可以包括:检测挂载后的用户分区中是否存在已安装应用的数据文件;在所述挂载后的用户分区中不 存在所述已安装应用的数据文件时,将所述已安装应用的数据文件写入所述挂载后的用户分区。上述检测挂载后的用户分区和将所述已安装应用的数据文件写入所述挂载后的用户分区的操作,能够实现用户分区中应用的数据文件与服务提供设备中应用的一致性,能够确保挂载后的用户分区中存在服务提供设备中所有已安装应用的数据文件,而某已安装应用的数据文件可用于存储用户在使用该已安装应用过程中产生的用户数据,因此,本优选实施例可以满足采用用户分区存储用户在使用每个应用程序过程中产生的用户数据的需求。

在本申请的另一种优选实施例中,所述方法还可以包括:所述方法还包括:检测挂载后的用户分区中是否存在已卸载应用的数据文件;在所述挂载后的用户分区中存在所述已卸载应用的数据文件时,删除所述挂载后的用户分区中所述已卸载应用的数据文件。上述检测挂载后的用户分区和删除所述挂载后的用户分区中所述已卸载应用的数据文件的操作,能够实现用户分区中应用的数据文件与服务提供设备中应用的一致性,能够确保挂载后的用户分区中不存在服务提供设备中已卸载应用的数据文件,因此,本优选实施例可以在节省用户分区的存储空间的前提下,满足采用用户分区存储用户在使用每个应用程序过程中产生的用户数据的需求。

参照图12,示出了本申请的一种应用于服务提供设备的数据处理方法实施例三的步骤流程图,具体可以包括如下步骤:

步骤1201、对用户界面进行编码;

步骤1202、依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

步骤1203、接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;

步骤1204、配合服务器完成所述服务器对于服务提供设备的远程管理。

在具体实现中,所述服务器对服务提供设备的远程管理具体可以包括: 所述服务器对服务提供设备的应用管理、所述服务器对服务提供设备的进程清理和所述服务器对服务提供设备的心跳管理中的至少一种。

在本申请的一种优选实施例中,所述配合服务器完成所述服务器对于服务提供设备的远程管理的步骤具体可以为,利用守护进程,配合所述服务器完成所述服务器对于服务提供设备的远程管理。

在本申请的另一种优选实施例中,所述服务器对服务提供设备的远程管理为所述服务器对服务提供设备的应用管理,则所述方法还可以包括:在接收到来自所述服务器的更新指令后,依据所述更新指令中携带的待更新应用信息更新服务提供设备中的应用;其中,所述待更新应用信息是由所述服务器依据所述服务提供设备中已安装的应用确定的。

参照图13,示出了本申请的一种应用于服务提供设备的数据处理方法实施例四的步骤流程图,具体可以包括如下步骤:

步骤1301、在与客户端建立加密连接后生成虚拟输入设备;

步骤1302、对用户界面进行编码;

步骤1303、依据所述用户界面的编码结果生成对应的传输流,并向所连接的客户端推送所述传输流;

步骤1304、接收来自所述客户端的输入消息,并依据所述输入消息进行相应的消息处理;其中,所述消息处理具体可以包括:对所述用户界面进行更新;

所述依据所述输入消息进行相应的消息处理的步骤1204具体可以包括:

步骤1341、接收所述客户端发送的加密的输入消息,对所述加密的输入消息进行解密;

步骤1342、将解密的输入消息写入所述虚拟输入设备,由所述虚拟输入设备对所述输入消息对应输入事件进行分发,得到所述输入消息的响应信息。

本实施例中,服务提供设备可以与客户端建立加密连接以保证数据传输的安全性,而后生成虚拟输入设备以模拟各种硬件的输入消息,并且服务 提供设备在接收客户端发送的加密的输入消息后,对所述加密的输入消息进行解密,然后将解密的输入消息写入所述虚拟输入设备,由所述虚拟输入设备对所述输入消息对应输入事件进行分发以响应所述输入消息并将响应信息反馈给客户端,可扩展性较高,处理过程比较简单,且能够通过服务提供设备实现快速、安全的对于输入消息的响应。

对于方法实施例而言,由于其与服务提供设备实施例基本相似,所以描述的比较简单,相关之处参见服务提供设备实施例的部分说明即可。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体 可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被服务提供设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。

本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦 得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本申请所提供的一种服务提供设备、一种应用于服务提供设备的数据处理方法和一种智能电视系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1