发明内容
本发明提供了一种统一业务终端系统的构建方法以及在所构建的统一业务终端系统中部署业务应用的方法,使得所构建的统一业务终端系统对于业务应用呈现一体化。
根据本发明的一个方面,提供了一种用于在网络中构建统一业务终端系统的方法,所述网络包括多个一类设备以及多个二类设备,所述将被构建的统一业务终端系统包括框架功能模块以及执行环境,
所述方法包括步骤:
(1)用户选择其中一个一类设备,并且运行所述一类设备上的框架功能模块以及执行环境模块,从而所述一类设备成为将被构建的统一业务终端系统的主控设备;
(2)所述统一业务终端系统的主控设备发送广播消息;
(3)周围的一类设备或二类设备接收到广播消息后,向所述主控设备的框架功能模块发送聚合请求消息;
(4)所述主控设备对请求聚合的这些设备进行鉴权,从这些设备中鉴权出能够与所述主控设备相聚合的设备作为统一业务终端系统的功能组件;
(5)被鉴权成功的设备将自身信息注册到所述主控设备的框架功能模块,从而构成所述统一业务终端系统。
根据本发明的另一个方面,提供了一种在统一业务终端系统中部署业务应用的方法,其中所述统一业务终端系统构建在包括多个一类设备以及多个二类设备的网络中,所述统一业务终端系统包括框架功能模块以及执行环境,
所述方法包括步骤:
(1)用户选择其中一个一类设备,并且运行所述一类设备上的框架功能模块以及执行环境模块,从而所述一类设备成为将被构建的统一业务终端系统的主控设备;
(2)所述统一业务终端系统的主控设备发送广播消息;
(3)周围的一类设备或二类设备接收到广播消息后,向所述主控设备的框架功能模块发送聚合请求消息;
(4)所述主控设备对请求聚合的这些设备进行鉴权,从这些设备中鉴权出能够与所述主控设备相聚合的设备作为统一业务终端系统的功能组件;
(5)被鉴权成功的设备将自身信息注册到所述主控设备的框架功能模块,从而构成所述统一业务终端系统;
(6)当业务应用启动时,向所述主控设备的框架功能模块发送业务应用消息,所述框架功能模块对所述业务应用进行鉴权;
(7)所述业务应用通过鉴权后,向所述框架功能模块注册,并且提出业务能力需求;
(8)所述框架功能模块根据所述业务能力需求为所述业务应用提供相对应的能力提供方案,并且将所述能力提供方案发送给所述业务应用;
(9)所述业务应用接收所述能力提供方案,并判断其提出的业务能力需求是否能够基于所述能力提供方案而被执行,当能够被执行时,向所述统一业务终端系统返回能力调用确认信息;
(10)所述统一业务终端系统接收到所述能力调用确认时,配置所述执行环境,并且向所述业务应用发送相应的能力调用命令;
(11)所述业务应用通过向所述执行环境发送所述能力调用命令,来调用所述统一业务终端系统中的能力服务器。
根据本发明的方法,使得分布式的各个设备作为一个统一的整体终端为业务提供各种能力服务,所构建的统一业务终端系统对于业务呈现为一个整体的终端,即业务实现无需考虑其所需的能力服务器在网络中的具体位置和功能实现的具体方式,从而实现业务的快速开发和统一部署。
具体实施方式
本发明所述的统一业务终端系统是根据用户要求,利用无线或有线的个人域连接技术,将具有一种或多种能力的设备聚合在一起而形成的一个虚拟终端。所构建的统一业务终端系统是一种分布式的终端系统。
本发明中将统一业务终端从功能角度抽象成一个逻辑上的体系结构,如附图1所示,所述统一业务终端系统包括框架功能模块、执行环境功能模块、聚合控制功能模块和多个能力服务器功能模块。
所述框架功能模块用于实现统一业务终端的中央管理控制功能,它负责控制统一业务终端系统中各个设备的聚合和分离,管理统一业务终端系统中所有分布式设备的信息、用户信息及业务信息,根据业务需求对统一业务终端的能力资源进行评估,为业务提供最佳的能力提供方案,并对执行环境进行配置。
所述执行环境功能模块对统一业务终端系统的能力服务器的具体调度和协同工作进行管理和协调,并为业务提供统一的终端运行接口。
所述聚合控制功能模块负责管理各个分布式设备的能力收集以及设备状态,并主要控制统一业务终端中各个分布式设备的聚合和分离过程。
所述能力服务器封装了统一业务终端系统的各个能力特征,能够方便的为业务提供能力服务,在本发明中一个能力服务器只封装一种能力特征。
本发明所涉及的构建统一业务终端的方法需要在设备上安装一系列软件,这些软件包括框架功能软件、聚合控制功能软件、执行环境软件及能力服务器软件。框架功能软件实现所述框架功能模块的功能,聚合控制功能软件实现聚合控制功能模块的功能,执行环境软件实现执行环境功能模块的功能,能力服务器软件实现能力服务器功能模块的功能;
安装了包括框架功能软件、聚合控制功能软件、执行环境软件及能力服务器软件的设备具备了框架功能、执行环境、聚合控制功能、能力服务器,成为一类设备。也就是说,本发明所述的一类设备是具有框架功能、执行环境、聚合控制功能、能力服务器的设备。一类设备在统一业务终端系统中可以作为主控设备。
安装了聚合控制功能软件和能力服务器的设备,只具备聚合控制功能和能力服务器,为二类设备。也就是说,本发明所述的二类设备是指只具有聚合控制功能和能力服务器的设备。二类设备不能作为统一业务终端的主控设备。
本发明所涉及的主控设备是统一业务终端系统中的中央控制设备,只有一类设备可以充当主控设备,并且每个统一业务终端系统中只有一个主控设备。
下面结合附图2描述根据本发明的构建统一业务终端系统的方法。
在本发明中,统一业务终端系统将具有若干种能力的设备聚合在一起而形成一个虚拟终端,选择其中一个一类设备作为主控设备,构建统一业务终端系统。该一类设备可以是手持设备或位置固定的计算能力比较强的设备,由用户来选择。所述方法包括以下具体步骤:
(1)用户选择其中一个一类设备,并且运行所述一类设备上的框架功能模块以及执行环境模块,从而所述一类设备成为将被构建的统一业务终端系统的主控设备。
其中在运行所述一类设备上的框架功能模块以及执行环境模块时,所述一类设备自身所包含的若干个能力服务器首先被聚合到所述一类设备上,从而成为将被构建的统一业务终端系统的主控设备。
(2)该统一业务终端系统的主控设备发送广播消息通知周围环境本统一业务终端系统的存在以及自身的描述信息。
所述广播消息是一个对该统一业务终端系统的自描述信息,其目的是为了让周围环境中接收到该广播消息的设备了解到该统一业务终端系统的存在,并能够从信息中获知该统一业务终端系统的位置、访问方式等。其内容可以包括主控设备的ID和设备类型等。其中,设备类型标明该设备是一类设备还是二类设备。
(3)周围的一类设备或二类设备收到广播消息后,向主控设备的框架功能模块发送聚合请求消息。
一类设备或二类设备收到广播消息后,判断自身是否已经加入到其他的统一业务终端系统。如果没有,则向主控设备发送聚合请求消息,并保存主控设备的ID和类型等信息,表明设备请求加入该广播消息所标明的统一业务终端系统。如果设备已经加入其他的统一业务终端系统,不能再加入将被构建的统一业务终端系统,则设备对主控设备的广播消息不做出响应。
(4)主控设备对请求聚合的设备进行鉴权,并向所述请求聚合的设备返回鉴权结果。然后,鉴权成功的聚合设备和主控设备在鉴权过程中生成能力服务密钥,用于能力服务器调用时的加解密。
该步骤所述的鉴权过程包括以下步骤:
a.主控设备的框架功能模块随机生成一个鉴权码,将该鉴权码发送给请求聚合的设备,并通过鉴权算法生成对应于该鉴权码的密钥;
b.请求聚合的设备收到该鉴权码以后,通过相同的鉴权算法生成应答密钥,并将该应答密钥发送给主控设备;
c.主控设备根据接收到该应答密钥之后,比较密钥和应答密钥,如果两者相同,则向请求聚合的设备返回鉴权成功消息;如果两者不相同,则向请求聚合的设备返回鉴权失败消息;
d.鉴权成功的主控设备和请求聚合设备利用鉴权码,通过相同的加密算法生成能力服务密钥,用于调用设备能力服务器时的加解密。
(5)请求聚合的设备判断鉴权结果。若鉴权成功,请求聚合的设备将设备的自描述信息发送给主控设备,将设备信息注册到主控设备的框架功能模块,同时将能力服务密钥告诉本设备的各个能力服务器。主控设备向请求聚合的设备返回聚合成功消息。若鉴权失败,则该请求聚合的设备不能加入到该统一业务终端系统,该设备清除之前保存的发出广播消息的统一业务终端系统的自描述信息。
所述设备的自描述信息包括:设备ID、设备类型、框架功能信息、执行环境信息、能力信息等。主控设备将设备的自描述信息保存在框架功能模块,由框架功能模块对统一业务终端中的设备的自描述信息进行统一管理。
(6)其他设备均通过上述相同的聚合过程将自身加入到主控设备所在的统一业务终端系统中,从而丰富统一业务终端系统的能力。
通过上述方法,构建和丰富了一个分布式的统一业务终端系统,它对业务应用以及外部环境呈现为一个整体,并通过其主控设备的框架功能模块以及执行环境模块与业务应用直接交互,通过向业务应用提供开放的统一接口来支持业务应用对统一业务终端系统的能力的调用,从而提供相应的服务效果以及用户体验。
根据本发明,还提供了一种在统一业务终端系统通过框架功能模块和执行环境对业务进行部署和执行的方法,屏蔽各个分布的能力服务器,从而向业务应用提供统一的服务能力支持。所述方法除了包含上述构建统一业务终端系统的步骤之外,还包括以下步骤:
(1)业务启动后发布广播消息,统一业务终端系统主控设备的框架功能模块收到该业务消息后,向业务返回确认消息,发起业务鉴权流程;
(2)业务通过鉴权后,向鉴权成功的主控设备的框架功能模块注册自身信息,并提出业务能力需求;
(3)统一业务终端系统的框架功能模块根据业务能力需求为业务适配出最佳的能力提供方案发送给业务。
(4)业务接收统一业务终端系统的主控设备的框架功能模块发出的能力提供方案,并进行判断,如果发现自身的能力需求能够基于该能力方案执行,就返回能力调用确认信息。如果不能,则业务应用可选择终止应用程序,或者挂起并等待统一业务终端系统的能力更新以满足业务应用的能力需求;
(5)统一业务终端系统接收到能力调用确认消息后,配置执行环境,向业务应用发送执行环境配置成功信息,并将相应的能力调用命令发过去。
(6)业务通过该能力调用命令实现对能力服务器的调用;业务向执行环境发送能力调用命令,执行环境解析能力调用命令,通过执行环境中的能力服务器代理实现对分布式能力服务器的调用,从而向业务屏蔽了能力服务器的分布性和异构性。
(7)业务应用结束时,向执行环境提交业务结束请求,根据该请求,执行环境通过能力服务器代理向各能力服务器发出调用结束命令,各能力服务器根据该命令结束调用操作。同时,执行环境自动释放相关能力服务器代理,删除对应的能力调用与代理映射表,通知框架该业务结束消息,框架清除该业务相应信息。最后由框架向业务应用发出确认信息。业务应用正常退出。
所述业务鉴权步骤包括:
a.主控设备的框架功能模块随机生成一个鉴权码,将该鉴权码发送给业务,并通过鉴权算法生成对应于该鉴权码的密钥;
b.业务收到鉴权码以后通过相同的鉴权算法生成应答密钥,并将该应答密钥发送给框架功能模块;
c.该框架功能模块根据接收到的应答密钥,比较密钥和应答密钥,如果两者相同,则向业务返回鉴权成功消息;如果两者不相同,则向业务返回鉴权失败消息;
在所述步骤(5)中,涉及到在业务应用和分布式能力服务器之间配置执行环境,其目的是为业务应用调用分布式系统提供统一的执行平台,屏蔽统一业务终端系统中能力服务器的分布性和异构性。
配置执行环境的步骤包括:框架收到业务应用对能力提供方案的确认信息后,将所述能力提供方案中的各个能力服务器信息以及对应的能力服务密钥提交给统一业务终端系统中的执行环境模块,执行环境模块收到这些信息后,为能力提供方案对应的各个能力服务器生成能力服务器代理,并在执行环境中保存能力调用命令及代理映射表,以明确执行环境中能力调用命令、能力服务器代理、能力服务器以及能力服务密钥之间的映射关系,执行环境根据该映射关系解析能力调用命令。
下图举例说明了所述执行环境中能力调用命令、能力服务器代理、能力服务器及能力服务密钥之间的映射关系
能力调用命令 |
UI |
Video |
能力服务器 |
UICS |
VideoCS |
能力服务器代理 |
UICS proxy |
VideoCSproxy |
能力服务密钥 |
Key1 |
Key2 |
在所述的步骤(6)中,业务向执行环境发送能力调用命令,执行环境收到能力调用命令后,将通过查找能力调用命令及代理映射表得知需要调用的能力服务器的能力服务器代理的标识,并向该标识的代理发送相应的调用命令。能力服务器代理能够自动寻找到其代理的能力服务器的地址,并将相应的命令及其配置参数传递到能力服务器上,并与该能力服务器建立双向通信联系,时时传递双方的信息。
在从执行环境的能力服务器代理到各个对应能力服务器的双向数据流的传输中,需要根据在配置执行环境的过程中获取的对应各个能力服务器的能力服务密钥进行加密。而接收方(能力服务器或者能力服务器代理)利用相同的能力服务密钥对业务数据流进行解密,从而从数据流的传输角度上提供相应的安全性保证。