一种通过网关调用家电服务的方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种通过网关调用家电服务的方法及装置。
【背景技术】
[0002]目前,一种基于C/S(客户机和服务器,Client/Server)架构的设备之间点对点通信框架,由Bus Daemon(总线守护进程)和终端节点组成。Bus Daemon负责终端节点之间的消息路由以及服务发现等功能,终端节点是指运行在设备上的应用程序,启动后需要连接到Bus Daemon上,终端节点如果提供服务,则向Bus Daemon注册一个服务名称,由BusDaemon广播出去。客户端可以通过服务名称来查找服务,并通过远程调用或信号来完成指定功能。
[0003]Bus Daemon可以看作是运行在不同的设备上的总线(Bus)分段。设备的BusDaemon连接起来便构成了一个连通的点对点网络系统的总线。总线为分布式系统提供了一个快速、轻量级的方式来传递消息序列。它的目标就是让两个应用程序进行通信,而无需处理底层机制的细节,针对目前网络设备支持多种的通信技术的情况,系统提供了一个抽象层,它为底层网络协议栈定义了统一的接口,使得基于不同的通信技术能够实现相同的终端节点。此时,终端节点仅需考虑与总线的交互,而不用实现底层不同通信技术的细节。具有不同底层通信技术的终端节点,只要建立起基于总线的会话连接,便可将数据传递到另一端。
[0004]为了使上述通信技术更好的支持智能家居场景,智能家居服务(Smart homeservice)提出了集中式管理的概念,即Smart Home service运行在网关上,其它家电设备向网关注册自己提供的服务。控制设备通过网关提供的通用接口实现对家电服务接口的调用,从而将点对点的分布式通信模式扩展为集中式通信模式。
[0005]在网关上实现的通用接口可以使控制设备在将目标家电的相应接口名称、方法名称、参数等输入的情况下,便可将其转化为对该家电设备的调用指令。
[0006]然而,上述智能家居服务集中式的通信模式仅在基于所有设备事先注册到同一网关上的前提条件下,设备间才能进行通信。但由于无线网络的信号具有限制范围,许多家庭网络中存在两个以上这种网关设备,尽管网关之间的联通能使所有家庭联网设备处于同一网络内,但在不同网关上注册的设备之间也无法采用上述集中式通信方式进行接口调用,因而,控制设备不能同时控制家庭中全部家电设备,为用户的使用带来了不便。
【发明内容】
[0007]本发明提供一种通过网关调用家电服务的方法及装置,用以解决以现有集中式通信方式进行接口调用无法通过一个控制设备同时控制家庭中全部家电设备的问题。
[0008]根据本发明的一个方面,提供了一种通过网关调用家电服务的方法,包括:第一网关接收来自终端的家电服务调用请求;根据调用请求判断家电服务对应的家电设备是否已在第一网关上注册;如果是,则第一网关将调用请求发送至家电设备,如果否,则将调用请求发送至家电设备注册的第二网关,以使第二网关根据调用请求调用家电服务。
[0009]进一步的,上述方法还包括:在第一网关接收来自终端的家电服务的调用请求之前,第一网关接收来自家电设备或其他网关的注册消息;其中其他网关的注册消息中包括已注册在其他网关上的设备的注册信息;根据家电设备或其他网关的注册信息对家电设备以及其他网关进行注册。
[0010]进一步的,上述方法还包括:在接收来自其他网关的注册消息之后,第一网关向其他网关发送自身的注册消息以及已注册在第一网关上的设备的信息。
[0011]进一步的,上述方法还包括:在第一网关接收来自家电设备的注册消息之后,第一网关向其他网关发送注册家电设备的更新消息,更新消息中包括,当前注册家电设备的注册消息。
[0012]进一步的,上述方法还包括:在将调用请求发送至家电设备注册的第二网关之后,第一网关接收来自第二网关的家电设备的家电服务调用结果;第一网关将家电服务调用结果发送至终端。
[0013]根据本发明的另一个方面,提供了一种通过网关调用家电服务的装置,包括:第一接收模块,用于通过第一网关接收来自终端的家电服务调用请求;判断模块,用于根据调用请求判断家电服务对应的家电设备是否已在第一网关上注册;第一发送模块,用于在判断模块的判断结果为是时,通过第一网关将调用请求发送至家电设备,在判断模块的判断结果为否时,则将调用请求发送至家电设备注册的第二网关,以使第二网关根据调用请求调用家电服务。
[0014]进一步的,上述装置还包括:第二接收模块,用于在第一网关接收来自终端的家电服务的调用请求之前,通过第一网关接收来自家电设备或其他网关的注册消息;其中其他网关的注册消息中包括已注册在其他网关上的设备的注册信息;注册模块,用于根据家电设备或其他网关的注册信息对家电设备以及其他网关进行注册。
[0015]进一步的,上述装置还包括:第二发送模块,用于在接收来自其他网关的注册消息之后,通过第一网关向其他网关发送自身的注册消息以及已注册在第一网关上的设备的信息。
[0016]进一步的,上述装置还包括:第三发送模块,用于在第一网关接收来自家电设备的注册消息之后,通过第一网关向其他网关发送注册家电设备的更新消息,更新消息中包括,当前注册家电设备的注册消息。
[0017]进一步的,上述装置还包括:第三接收模块,用于在将调用请求发送至家电设备注册的第二网关之后,通过第一网关接收来自第二网关的家电设备的家电服务调用结果;第四发送模块,用于将家电服务调用结果发送至终端。
[0018]本实施例提供的方案,网关通过判断调用请求中请求调用的家电服务对应的家电设备是否已在当前网关上注册的方式,确定直接通过当前网关调用家电服务或将调用请求转发至家电设备实际注册的网关,以通过家电设备实际注册的网关来根据调用请求调用家电服务,实现了通过一个控制终端即可控制注册在不同网关的家电设备,使得用户对智能家电的控制变得更为便捷。
【附图说明】
[0019]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020]图1是本发明实施例1的通过网关调用家电服务的方法的流程图;
[0021]图2是本发明实施例2的网关以及家电设备的注册信令流程图;
[0022]图3是本发明实施例2的设备以及网关的注册更新信令流程图;
[0023]图4是本发明实施例2的家电服务调用的信令流程图;
[0024]图5是本发明实施例2的在整个家电服务调用过程中,网关所执行的操作的流程图;
[0025]图6是本发明实施例3通过网关调用家电服务的装置的结构框图。
【具体实施方式】
[0026]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027]实施例1
[0028]本实施例提供一种通过网关调用家电服务的方法,该方法可以在设置有多个家庭网关的各网关侧实现,图1是本发明实施例1的通过网关调用家电服务的方法的流程图,如图1所示,该方法包括如下步骤:
[0029]步骤101:第一网关接收来自终端的家电服务调用请求;
[0030]在执行上述步骤101之前,各家庭网关相互注册,以及各家电设备在开机后在搜索到的网关上进行注册,上述方法还包括:在第一网关接收来自终端的家电服务的调用请求之前,接收来自家电设备或其他网关的注册消息,在接收来自其他网关的注册消息之后,第一网关向其他网关发送自身的注册消息以及已注册在第一网关上的设备的信息。其中,其他网关的注册消息中包括,已注册在其他网关上的设备的信息,具体的,此处的网关的注册消息以及家电设备的注册消息中还包括网关自身的服务接口信息以及家电设备的服务接口信息。
[0031]优选的,各网关均具有向其已经注册的网关共享家电设备注册信息的功能基于此,上述方法还可以包括:在第一网关接收来自家电设备的注册消息之后,第一网关向其他网关发送注册家电设备的更新消息,更新消息中包括,当前注册家电设备的注册消息。
[0032]步骤102:根据调用请求判断家电服务对应的家电设备是否已在第一网关上注
ΠΠ.册;
[0033]步骤103:如果是,则将调用请求发送至家电设备;
[0034]步骤104如果否,则将调用请求发送至家电设备注册的第二网关,以使第二网关根据调用请求调用家电服务。
[0035]在该步骤104中,第二网关可以是事先注册在第一网关上,以使得第一网关能够查找到第二网关上注册了与调用请求对应的家电设备,从而将调用请求转发至第二网关。
[0036]在该步骤104执行完毕后,为了通知控制终端家电设备的调用情况,家电设备需要将其自身的家电服务调用结果发送至第二网关,然后再由第二网关将该调用结果转发至第一网关,第一网关接收来自第二网关的家电设备的家电服务调用结果,将家电服务调用结果发送至终端。
[0037]实施例2
[0038]在本实施例中,在一个点对点通信的家庭网络中,卧室和客厅各有一个网关,卧室和客厅的智能空调分别连接卧室以及客厅的网关,以下通过网关以及家电设备的注册、注册更新以及家电服务的调用来对在点对点通信的家庭网络中通过网关调用家电服务的方法进行进一步说明。
[0039]图2是本发明实施例2的网关以及家电