CN113037798B - 多网关通信方法、系统、电子设备及存储介质 - Google Patents
多网关通信方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113037798B CN113037798B CN201911360368.8A CN201911360368A CN113037798B CN 113037798 B CN113037798 B CN 113037798B CN 201911360368 A CN201911360368 A CN 201911360368A CN 113037798 B CN113037798 B CN 113037798B
- Authority
- CN
- China
- Prior art keywords
- scene
- gateway
- condition
- action
- scenario
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及网络通信领域,提供一种多网关通信方法、系统、电子设备及存储介质;方法包括:云端服务器确定第一场景的场景条件为单网关场景条件,将第一场景的信息发送给与第一场景的场景条件相关的网关;接收到场景条件被触发的第一场景的场景动作信息,将第一场景的场景动作信息转发给与云端服务器连接的网关,以使得网关执行第一场景的场景动作。本发明实施例提供的多网关通信方法、系统、电子设备及存储介质将单网关场景条件交由对应的网关做条件判断,并在单网关场景条件被触发后,由云端服务器向各个网关转发相应的场景动作,解决了场景动作跨局域网难的问题。
Description
技术领域
本发明涉及网络通信领域,尤其涉及一种多网关通信方法、系统、电子设备及存储介质。
背景技术
网关作为一种常见的协议转换和设备控制中心,对网络中设备之间的互联互通起到重要的作用。
但在一些占地面积大、地形结构较为复杂的场所,如大户型的房屋或别墅,会出现网络覆盖不够全面,网络设备与网关间通讯受阻的情况,从而导致网络设备出现离线及控制失败的问题。
针对上述问题,现有技术中给出的解决方案一般分为两类:
1、子母网关:多个网关之间组网,其中一个充当母网关,负责整体网关网络的组网及云端通讯,可理解为网关中的网关。
2、多网关交叉组网:多个网关两两之间相互建立连接,以便相互查询状态及传输指令。
现有技术中的这两类解决方案在单独控制某个网络设备,或实现单个网关下的场景时,能够很好地完成任务。但当涉及跨网关场景时,这两类解决方案都存在一定的缺陷。
在子母网关的方案中,母网关作为网关中的网关,成为整个网络的瓶颈,一旦母网关出现故障,整个网络将处于瘫痪状态。
在多网关交叉组网的方案中,多个网关之间需要两两建立连接相互通讯,增加了网关固件逻辑的复杂度。且网关作为物联网中的“端”节点,受限于成本问题,硬件性能相对较差。此方案中建立的连接越多,占用硬件资源越多,而且每个网关需要关注其他所有网关下的设备状态变化,大大影响了网关的核心处理能力。加上此方案多为无线连接方案,所有网关必须处于同一局域网,无法适应多局域网的环境要求,当网络出现故障时,设备将全部离线,无法进行控制。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种多网关通信方法,解决了场景动作跨局域网难的问题。
本发明还提出一种多网关通信方法。
本发明另提出一种多网关通信方法。
本发明又提出了多网关通信系统。
本发明另提出一种电子设备。
本发明又提出一种非暂态计算机可读存储介质。
根据本发明第一方面实施例的一种多网关通信方法,包括:
确定第一场景的场景条件为单网关场景条件,将所述第一场景的信息发送给与所述第一场景的场景条件相关的网关;
接收到场景条件被触发的所述第一场景的场景动作信息,将所述第一场景的场景动作信息转发给与所述云端服务器连接的网关,以使得所述网关执行所述第一场景的场景动作;其中,
所述单网关场景条件用于描述在同一网关下的设备所形成的条件;所述第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息。
本发明实施例提供的多网关通信方法将单网关场景条件交由对应的网关自行做条件判断,并在单网关场景条件被触发后,由云端服务器向各个网关转发相应的场景动作,解决了场景动作跨局域网难的问题。
根据本发明的一个实施例,还包括:
确定第二场景的场景条件为多网关场景条件,拆分所述第二场景的场景条件,得到单网关场景条件,拆分所述第二场景的场景动作,得到单网关场景动作;将所述单网关场景条件与单网关场景动作分别发送并保存到相应的网关;
接收到所述单网关场景条件被触发的消息,根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令,以使得所述网关执行第二场景的场景动作;其中,
所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件;所述单网关场景动作用于描述在满足所述单网关场景条件下、同一网关下的设备所要执行的动作。
本发明实施例提供的多网关通信方法通过云端服务器自身所保存的设备状态信息来判断多网关与场景条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销;通过将多网关场景条件与场景动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。
根据本发明的一个实施例,所述多网关场景条件包括多网关与场景条件;相应的,所述接收到所述单网关场景条件被触发的消息包括:
接收到与第一单网关场景条件有关的设备的状态变化信息;其中,所述第一单网关场景条件是由所述多网关与场景条件拆分得到的单网关场景条件;
根据所述状态变化信息更新云端服务器中所保存的对应的设备状态信息,并返回设备状态信息更新成功的消息;
接收到第一单网关场景条件被触发的消息,所述第一单网关场景条件被触发的消息是与第一单网关场景条件有关的设备的状态变化满足所述第一单网关场景条件的触发条件后所发送的消息。
根据本发明的一个实施例,所述多网关场景条件包括多网关或场景条件;相应的,所述接收到所述单网关场景条件被触发的消息包括:
接收到第二单网关场景条件被触发的消息;其中,所述第二单网关场景条件是由所述多网关或场景条件拆分得到的单网关场景条件;所述第二单网关场景条件被触发的消息是与第二单网关场景条件有关的设备的状态变化满足所述第二单网关场景条件的触发条件后所发送的消息。
根据本发明的一个实施例,所述根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令包括:
根据所被触发的第一单网关场景条件查询所述第二场景中的其他第一单网关场景条件是否被触发;
当所述第二场景中的所有第一单网关场景条件均被触发,向与所述第二场景相关的所有网关发送执行所述第二场景的场景动作的命令。
根据本发明的一个实施例,所述根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令包括:
根据所被触发的第二单网关场景条件,向与所述第二场景相关的所有网关发送执行所述第二场景的场景动作的命令。
根据本发明第二方面实施例的一种多网关通信方法,包括:
第一网关接收第一场景的信息,所述第一场景的场景条件为单网关场景条件;
检测到所述第一场景的场景条件被触发,处理所述第一场景的场景动作信息;其中,
所述单网关场景条件用于描述在同一网关下的设备所形成的条件;所述第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息。
本发明实施例提供的多网关通信方法在单网关场景条件被触发后,接收并执行由云端服务器所转发的场景动作,解决了场景动作跨局域网难的问题。
根据本发明的一个实施例,所述处理所述第一场景的场景动作信息包括:
检测到所述第一场景的场景动作信息中包含所述第一网关所能控制的设备的动作信息,向所述设备发送执行动作的命令;
将所述第一场景的场景动作信息通过广域网发送给云端服务器。
根据本发明的一个实施例,所述处理所述第一场景的场景动作信息还包括:
将所述第一场景的场景动作信息以局域网广播的方式发送给与所述第一网关处于同一局域网的其他网关。
本发明实施例提供的多网关通信方法在通过广域网发送场景动作的同时还通过局域网广播场景动作,不仅有利于提升场景处理效率,提高用户体验,还能增加场景动作信息传输的可靠性。
根据本发明的一个实施例,还包括:
第一网关接收并保存由第二场景的场景条件拆分得到的单网关场景条件以及由第二场景的场景动作拆分得到的单网关场景动作;
单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息;其中,
所述第二场景的场景条件为多网关场景条件;所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件;所述单网关场景动作用于描述在满足所述单网关场景条件时、同一网关下的设备所要执行的动作。
本发明实施例提供的多网关通信方法可在网关直接判断多网关或条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销。
根据本发明的一个实施例,所述多网关场景条件包括多网关与场景条件;相应的,所述单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息包括:
与第一单网关场景条件有关的设备的状态发生了变化,向云端服务器发生所述设备的状态变化信息;其中,所述第一单网关场景条件是由所述多网关与场景条件拆分得到的单网关场景条件;
接收到云端服务器的设备状态信息更新成功的消息后,确定与第一单网关场景条件有关的设备的状态变化满足所述第一单网关场景条件的触发条件,向云端服务器发送第一单网关场景条件被触发的消息。
根据本发明的一个实施例,所述多网关场景条件包括多网关或场景条件;相应的,所述单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息包括:
确定与第二单网关场景条件有关的设备的状态变化满足所述第二单网关场景条件的触发条件;其中,所述第二单网关场景条件是由所述多网关或场景条件拆分得到的单网关场景条件;
在第一网关的范围内,根据与所述第二单网关场景条件对应的单网关场景动作的信息执行场景动作;
发送第二单网关场景条件被触发的消息。
根据本发明第三方面实施例的一种多网关通信方法,包括:
第二网关接收第一场景的场景动作信息,根据所述第一场景的场景动作信息执行第一场景的场景动作;其中,
所述第一场景的场景条件为单网关场景条件;所述单网关场景条件用于描述在同一网关下的设备所形成的条件。
本发明实施例提供的多网关通信方法通过将多网关条件与多网关动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。此外,当部分网关或者网络出现故障时,不会导致整个网络瘫痪,其余正常的网关及其设备的相关场景还是可以利用云端服务器实现正确触发。另外故障的网络以及网关只要恢复网络连接,可以立即恢复场景功能的使用,不需要进行网关之间的组网。
根据本发明的一个实施例,所述接收第一场景的场景动作信息包括:
接收云端服务器通过广域网所发送的第一场景的场景动作信息。
根据本发明的一个实施例,所述接收第一场景的场景动作信息还包括:
接收以局域网广播的方式所发送的第一场景的场景动作信息;
相应地,所述根据所述第一场景的场景动作信息执行场景动作包括:
检测到所述第一场景的场景动作信息中包含所述第二网关所能控制的设备的动作信息,向所述设备发送执行动作的命令;
在执行所述第一场景的场景动作后的第一间隔时间内,再次接收到所述第一场景的场景动作,抛弃再次接收到的所述第一场景的场景动作。
根据本发明的一个实施例,还包括:
第二网关接收执行第二场景的场景动作的命令,根据命令执行第二场景的场景动作;其中,
所述第二场景的场景条件为多网关场景条件;所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件。
根据本发明的一个实施例,所述根据命令执行第二场景的场景动作包括:
根据命令查找由所述第二场景的场景动作得到的单网关场景动作,执行所述单网关场景动作;其中,
所述单网关场景动作用于描述在满足所述单网关场景条件时、同一网关下的设备所要执行的动作。
根据本发明第四方面实施例的一种多网关通信系统,包括云端服务器、第一网关和第二网关;所述第一网关和第二网关分别与所述云端服务器通信连接;
所述云端服务器,用于执行如本发明第一方面实施例所述多网关通信方法;
所述第一网关,用于执行如本发明第二方面实施例所述多网关通信方法;
所述第二网关,用于执行如本发明第三方面实施例所述多网关通信方法。
根据本发明第五方面实施例的一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明第一方面实施例所述多网关通信方法的步骤,或实现如本发明第二方面实施例所述多网关通信方法的步骤,或实现如本发明第三方面实施例所述多网关通信方法的步骤。
根据本发明第六方面实施例的一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本发明第一方面实施例所述多网关通信方法的步骤,或实现如本发明第二方面实施例所述多网关通信方法的步骤,或实现如本发明第三方面实施例所述多网关通信方法的步骤。
本发明实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:将单网关场景条件交由对应的网关自行做条件判断,并在单网关场景条件被触发后,由云端服务器向各个网关转发相应的场景动作,解决了场景动作跨局域网难的问题。
进一步的,通过云端服务器所保存的设备状态信息来判断多网关与场景条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销。
更进一步的,通过将多网关场景条件与场景动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。
再进一步的,在通过广域网接收场景动作的同时还通过局域网广播接收场景动作,不仅有利于提升场景处理效率,提高用户体验,还能增加场景动作信息传输的可靠性。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的多网关通信方法的一个应用实例的示意图;
图2是本发明实施例提供的多网关通信方法的流程图;
图3是本发明另一实施例提供的多网关通信方法的流程图;
图4是本发明又一实施例提供的多网关通信方法的流程图;
图5是本发明另一实施例提供的多网关通信方法的流程图;
图6是本发明再一实施例提供的多网关通信方法的流程图;
图7是本发明再一实施例提供的多网关通信方法的流程图;
图8是本发明实施例提供的云端服务器的示意图;
图9是本发明实施例提供的第一网关的示意图;
图10是本发明实施例提供的第二网关的示意图;
图11示例了一种电子设备的实体结构示意图。
具体实施方式
下面结合附图和实施例对本发明的实施方式作进一步详细描述。以下实施例用于说明本发明,但不能用来限制本发明的范围。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
在对本发明实施例做详细说明之前,首先对场景这一概念予以说明。
在物联网领域中,场景描述了不同设备间的交互。场景一般分为两个部分,一是场景条件,二是场景动作。在一个场景中,只有当场景条件被满足时,才会触发场景动作。
场景条件一般分为三种:地点触发条件(当用户进入某个区域就触发场景动作)、定时触发条件(当到达某个时间点就触发场景动作)、设备状态触发条件(当设备状态变化为某个值时触发场景动作),本发明实施例中所描述的场景条件主要是指设备状态触发条件。
场景动作可以理解为多个设备控制指令集。
场景的一个简单例子:【场景条件】当温度传感器检测到当前温度为30度时,【场景动作】触发空调打开,温度设置为26度。
图1为本发明实施例提供的多网关通信方法的一个应用实例的示意图。在这一应用实例中,一个家用网络的结构如下:
第一设备1和第二设备2连接到第一网关8,第一网关8通过第一路由11连接到云端服务器13;第三设备3和第四设备4连接到第二网关9,第二网关9通过第一路由11连接到云端服务器13;第五设备5和第六设备6连接到第三网关10,第三网关10通过第二路由12连接到云端服务器13;第七设备7以WIFI连接的方式连接到第二路由12,进而连接到云端服务器13。
第一网关8和第二网关9以及与这两个网关连接的设备处于同一局域网内,第七设备7、第三网关10以及与第三网关10连接的设备处于另一局域网内。
在多网关网络环境中,按照场景条件的判断过程只需单个网关即可完成,还是需要两个以上的网关共同完成,可将场景条件分为单网关场景条件和多网关场景条件。
多网关场景条件可以有多种表现形式,但最基本的多网关场景条件有两类:一是多网关与场景条件,二是多网关或场景条件。
基于上述描述可知,按照场景条件的差异,多网关通信方法总体上可分为三类,第一类是基于单网关场景条件实现的通信方法,第二类是基于多网关与场景条件实现的通信方法,第三类是基于多网关或场景条件实现的通信方法。
需要说明的是,单网关场景条件中的单网关仅指场景条件判断时所涉及的网关数目,与单网关场景条件所属场景中的场景动作无关,即单网关场景条件所属场景中的场景动作可以是一个网关中的设备所完成的动作,也可以是多个网关中的设备所完成的动作。类似的,多网关场景条件中的多网关仅指场景条件判断时所涉及的网关数目,与多网关场景条件所属场景中的场景动作无关,即多网关场景条件所属场景中的场景动作可以是一个网关中的设备所完成的动作,也可以是多个网关中的设备所完成的动作。
下面结合图1的应用实例,给出三类场景的示范例:
场景一(单网关场景条件):【场景条件】第一设备1开时,【场景动作】触发第二设备2开,第三设备3开,第五设备5开,第七设备7开。
场景二(多网关或场景条件):【场景条件】第一设备1开或第三设备3开时,【场景动作】触发第二设备2开,第四设备4开,第五设备5开,第七设备7开。
场景三(多网关与场景条件):【场景条件】第一设备1开且第三设备3开时,【场景动作】触发第二设备2开,第四设备4开,第五设备5开,第七设备7开。
在场景一中,“第一设备1开”是单网关场景条件,只需要位于第一网关8下的第一设备1开这一场景条件得到满足,就能触发场景动作“第二设备2开,第三设备3开,第五设备5开,第七设备7开”。在场景二中,“第一设备1开或第三设备3开”是多网关或场景条件,当位于第一网关8下的第一设备1开或位于第二网关9下的第三设备3开这两个条件满足其中之一,就能触发场景动作“第二设备2开,第四设备4开,第五设备5开,第七设备7开”。在场景三中,“第一设备1开且第三设备3开”是多网关与场景条件,只有当位于第一网关8下的第一设备1开并且位于第二网关9下的第三设备3开这两个条件都满足,才会触发场景动作“第二设备2开,第四设备4开,第五设备5开,第七设备7开”。
在多网关环境下如何快速、高效地实现上述逻辑正是本发明实施例的方法所要解决的问题。
图2为本发明实施例提供的多网关通信方法的流程图,如图2所示,本发明实施例提供的多网关通信方法应用于云端服务器侧,该方法包括:
步骤201、确定第一场景的场景条件为单网关场景条件,将第一场景的场景信息整体下发到与第一场景的场景条件相关的网关。
在前文中已经对单网关场景条件的含义做了说明。
第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息。这些信息应当能被诸如网关、服务器等计算机类设备所理解。
与第一场景的场景条件相关的网关是指第一场景的场景条件(即单网关场景条件)中所描述设备所处的网关。
以前述的场景一为例,场景一的场景条件是“第一设备1开”,该场景条件属于单网关场景条件,由于第一设备1接入第一网关8,因此与单网关场景条件“第一设备1开”相关的网关就是第一网关8。将场景一“【场景条件】第一设备1开时,【场景动作】触发第二设备2开,第三设备3开,第五设备5开,第七设备7开”以计算机类设备能理解的逻辑语言发送给第一网关8。
本领域技术人员应当了解,在场景一的例子中,单网关场景条件“第一设备1开”只涉及到一个设备,但在其他例子中,单网关场景条件还可涉及到多个设备,只要这些设备接入同一个网关即可。如图1所示的实例中,若有场景条件“第一设备1开且第二设备2开”,由于第一设备1和第二设备2都接入第一网关8,因此该场景条件虽然涉及到两个设备,但也是单网关场景条件。
步骤202、接收到场景条件被触发的第一场景的场景动作信息,将该第一场景的场景动作信息整体转发给与之相连接的网关,以使得网关执行第一场景的场景动作。
在之前的步骤中已经提到,第一场景的场景条件信息(单网关场景条件)和场景动作信息已经被下发给相应的网关。当这一网关中与第一场景的场景条件相关的设备的状态发生变化,且状态变化情况满足第一场景的场景条件的触发条件,网关会将第一场景的场景动作信息通过广域网整体上传给云端服务器。
云端服务器接收到场景条件被触发的第一场景的场景动作信息后,将该场景动作信息整体转发给与之相连接的其他网关,由这些网关根据第一场景的场景动作信息控制与网关相连的相关设备执行动作。
以前述的场景一为例,当第一网关8发现第一设备1开启后,判断出场景条件“第一设备1开”被触发,因此通过广域网将对应的场景动作“第二设备2开,第三设备3开,第五设备5开,第七设备7开”整体上传给云端服务器13,云端服务器13再将这一场景动作整体转发给第二网关9、第三网关10(第七设备7虽然没有与一个实际的网关相连,而是直接连接到云端服务器13。但可以将云端服务器视为一种虚拟网关)。
本发明实施例提供的多网关通信方法将单网关场景条件交由对应的网关自行做条件判断,并在单网关场景条件被触发后,由云端服务器向各个网关转发相应的场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,图3为本发明另一实施例提供的多网关通信方法的流程图,如图3所示,本发明另一实施例提供的多网关通信方法应用于网关侧,该方法包括:
步骤301、接收第一场景的信息,第一场景的场景条件为单网关场景条件。
第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息。这些信息应当能被诸如网关、服务器等计算机类设备所理解。
步骤302、检测到第一场景的场景条件被触发,处理第一场景的场景动作。
与第一场景的场景条件(单网关场景条件)相关的设备的状态发生变化,且状态变化情况满足第一场景的场景条件的触发条件后,网关会对第一场景的场景动作进行处理。
对第一场景的场景动作进行处理包括:
检测该场景动作中是否包含网关自身所能控制的设备动作,如包含,向该设备发送执行动作的命令;
将第一场景的场景动作上传给云端服务器。
在将第一场景的场景动作上传给云端服务器时,可在消息中附加一个唯一的通讯标识,以便于云端服务器了解消息的来源,避免属于不同用户但处于同一网络下的多个网关之间窜网通讯。在将场景动作上传云端服务器时,可通过广域网上传,以解决跨局域网的问题。
以前述的场景一为例,第一网关8接收到场景一的场景逻辑后,一旦检测到第一设备1开启,判断出第一设备1的这一动作触发场景一的场景条件,对场景一的场景动作“第二设备2开,第三设备3开,第五设备5开,第七设备7开”做进一步处理。
在处理时,检测该场景动作中是否包含网关自身所能控制的设备动作,发现第二设备2是第一网关8所能控制的,因此触发第二设备2开。其余设备不能由第一网关8控制,向云端服务器13整体上传“第二设备2开,第三设备3开,第五设备5开,第七设备7开”这一场景动作。
本发明实施例提供的多网关通信方法由网关对单网关场景条件做条件判断,并在单网关场景条件被触发后,向云端服务器上传场景动作并由云端服务器向其他网关转发场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,本发明再一实施例提供的多网关通信方法中,步骤302中的处理第一场景的场景动作还包括:
将第一场景的场景动作通过局域网广播。
一般而言,局域网的传输速度会快于广域网,因此通过局域网广播场景动作有利于提升场景处理效率,提高用户体验。
本发明实施例提供的多网关通信方法在通过广域网发送场景动作的同时还通过局域网广播场景动作,不仅有利于提升场景处理效率,提高用户体验,还能增加场景动作信息传输的可靠性。
基于上述任一实施例,图4为本发明又一实施例提供的多网关通信方法的流程图,如图4所示,本发明又一实施例提供的多网关通信方法应用于网关侧,该方法包括:
步骤401、接收第一场景的场景动作信息,根据第一场景的场景动作信息执行场景动作。
在本发明实施例中,通过广域网接收到云端服务器所发送的第一场景的场景动作信息。
根据第一场景的场景动作信息执行场景动作包括:
网关在接收到第一场景的场景动作后,分析该场景动作是否与本网关中的设备有关,如果无关,忽略该场景动作。如果有关,根据该场景动作向对应的设备发送执行相应动作的命令。
以前述的场景一为例,第二网关9和第三网关10接收到场景一的场景动作“第二设备2开,第三设备3开,第五设备5开,第七设备7开”后,会各自判断场景动作是否与本网关中的设备有关。第二网关9发现“第三设备3开”这一设备动作与己相关,因此会据此向第三设备3发送相应的控制命令;第三网关10发现“第五设备5开”这一设备动作与己相关,因此会据此向第五设备5发送相应的控制命令;作为虚拟网关的云端服务器13发现“第七设备7开”这一设备动作与己相关,因此会据此向第七设备7发送相应的控制命令。
本发明实施例提供的多网关通信方法在单网关场景条件被触发后,接收并执行由云端服务器所转发的场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,本发明另一实施例提供的多网关通信方法中,步骤401中的接收第一场景的场景动作信息还包括:
接收到通过局域网广播发送的第一场景的场景动作信息。
相应地,根据第一场景的场景动作信息执行场景动作还包括:
根据场景动作向对应的设备发送执行相应动作的命令后一段时间内,如果再次接收到同样的场景动作,则抛弃新接收到的同样的场景动作。
在本发明实施例中,网关既可以通过广域网接收到场景动作,又可以通过局域网接收到场景动作。通过抛弃在一定时间内重复接收到的场景动作信息,避免了网关重复执行场景动作。
本发明实施例提供的多网关通信方法在通过广域网接收场景动作的同时还通过局域网广播接收场景动作,不仅有利于提升场景处理效率,提高用户体验,还能增加场景动作信息传输的可靠性。
基于上述任一实施例,图5为本发明另一实施例提供的多网关通信方法的流程图,如图5所示,本发明另一实施例提供的多网关通信方法应用于云端服务器侧,该方法包括:
步骤501、确定第二场景的场景条件为多网关场景条件,拆分第二场景的场景条件,得到单网关场景条件,拆分第二场景的场景动作,得到单网关场景动作;将所述单网关场景条件与单网关场景动作分别发送并保存到相应的网关。
在为场景中的场景条件和场景动作进行拆分时,以网关为单位进行拆分。由于第二场景的场景条件(多网关场景条件)涉及到多个网关,因此可将其拆分成多个单网关场景条件。第二场景的场景动作既有可能涉及到多个网关,也有可能只涉及到一个网关,因此在拆分场景动作时,若该场景动作涉及多个网关,则可将该场景动作拆分成多个单网关场景动作;若该场景动作只涉及到一个网关,那么该场景动作本身就是拆分后的单网关场景动作。
以前述的场景三为例,在这一场景中,多网关场景条件为“第一设备1开且第三设备3开”。将这一多网关条件进行拆分,得到两个条件,分别为“第一设备1开(与)”、“第三设备3开(与)”。其中,这两个条件中的“(与)”是为了避免条件拆分时,丢失“与”这一条件信息。类似的,从场景二的场景条件“第一设备1开或第三设备3开”中拆分出两个条件,可表示为“第一设备1开(或)”、“第三设备3(或)”。其中,这两个条件中的“(或)”是为了避免条件拆分时,丢失“或”这一条件信息。
将“第二设备2开,第四设备4开,第五设备5开,第七设备7开”这一场景动作进行拆分,得到四个动作,分别为“第二设备2开”、“第四设备4开”、“第五设备5开”和“第七设备7开”。拆分后得到的这四个动作各自只与一个网关有关(第七设备7虽然没有与一个实际的网关相连,而是直接连接到云端服务器。但可以将云端服务器视为一种虚拟网关),所以在本发明实施例中把它们称呼为单网关场景动作。
一场景中的多网关场景条件、场景动作拆分后,可在云端服务器保存这些信息。例如,在下面的表1中描述了前述的场景三拆分后的结果。表中的空白处表示没有对应的单网关场景条件或单网关场景动作。
表1
将拆分得到的单网关场景条件、单网关场景动作保存到对应的网关。例如,单网关场景条件“第一设备1开(与)”和单网关场景动作“第二设备2开”与第一网关8有关,可将这两个信息发送到第一网关8并由第一网关8保存;单网关场景条件“第三设备3开(与)”和单网关场景动作“第四设备4开”都与第二网关8有关,因此可将这两个信息发送到第二网关9并由第二网关9保存;单网关场景动作“第五设备5开”与第三网关10有关,可将这一信息发送到第三网关10并由第三网关10保存;单网关场景动作“第七设备7开”并未与具体的网关连接,因此这一信息由云端服务器直接保存。
需要说明的是,在之前列举的范例中,单网关场景条件和单网关场景动作中都只涉及到网关下的一个设备。但在实际应用中,单网关场景条件和单网关场景动作可以涉及到同网关下的多个设备。例如,在图1所示的范例中,若在一个场景中,场景动作包括“第三设备3开,第四设备4开,第五设备5开,第六设备6开”,在拆分成单网关场景动作时,可拆分成“第五设备5开,第六设备6开”和“第三设备3开,第四设备4开”。因为第五设备5和第六设备6同属于第三网关10,第三设备3和第四设备4同属于第二网关9,所以在拆分场景动作时,会将属于同一网关的场景动作归属于同一单网关场景动作。
步骤502、接收到单网关场景条件被触发的消息,根据所被触发的单网关场景条件确定向与第二场景有关的网关发送执行第二场景的场景动作的命令,以使得网关执行第二场景的场景动作。
前面提到,多网关场景条件分为多网关与场景条件、多网关或场景条件。设定第一单网关场景条件是从多网关与场景条件拆分出的,第二单网关场景条件是从多网关或场景条件拆分出的。云端服务器接收到第一单网关场景条件被触发的消息后的处理,与接收到第二单网关场景条件被触发的消息后的处理是不一样的。下面分别予以说明。
云端服务器接收到第一单网关场景条件被触发的消息,证明此时第一单网关场景条件所对应的网关中、与第一单网关场景条件对应的设备的状态发生了变化。云端服务器在接收到第一单网关场景条件被触发的消息之前,触发第一单网关场景条件的网关会先将与第一单网关场景条件有关的设备的状态变化信息发送给云端服务器,云端服务器接收到设备的状态变化信息后,在自身保存的设备状态信息中将相应设备的状态进行更新,然后将设备状态更新成功的消息返回给网关。网关接收到云端服务器中设备状态已经更新成功的消息后,再向云端服务器发送第一单网关场景条件被触发的消息(由于第一单网关场景条件可能会涉及到多个设备的状态更新,此处假设相关设备的状态均已更新使得第一单网关场景条件被触发。若第一单网关场景条件涉及到多个设备的状态更新,且有设备的状态未更新使得第一单网关场景条件无法被触发,则只将发生状态更新的设备的更新后状态发送到云端服务器并保存,不再执行后续操作)。云端服务器接收到第一单网关场景条件被触发的消息后,根据与第一单网关场景条件对应的场景的ID,查询与第一单网关场景条件对应的其他第一单网关场景条件是否被触发,如查询云端服务器所保存的设备状态信息,确定相关设备的当前状态是否满足其他单网关条件被触发的条件。若一个场景中的所有第一单网关条件均已被触发(即场景中的多网关场景条件已经被触发),那么可以向与该场景有关的所有网关发送执行该场景的场景动作的命令。由于网关中只保存了与本网关有关的单网关场景动作,在接收到相应命令后,执行对应的单网关场景动作。若本网关不存在对应的单网关动作,则不执行任何操作。
例如,对于前述的场景三,图1中的第一设备1开,达到触发条件,第一网关8将第一设备1的状态发生变化的信息上报给云端服务器;云端服务器更新自身所保存的第一设备1的状态信息,然后把更新成功的消息回复给第一网关8。第一网关8接着上报场景三中与第一设备1相关的条件已经被满足。云端服务器根据场景三的ID,查询自身所保存的第三设备3的状态是否能达到场景三中与第三设备3有关的条件。如果也能被满足,证明场景三的条件均已经被满足。此时云端服务器向与场景三有关的各个网关发送场景三中场景动作的命令。第一网关8收到命令后,检查自身是否保存有与场景三有关的场景动作的信息,发现有“第二设备2开”的动作信息,因此执行“第二设备2开”的动作。类似的,第二网关9收到命令后,检查自身是否保存有与场景三有关的场景动作的信息,发现有“第四设备4开”的动作信息,因此执行“第四设备4开”的动作;第三网关10收到命令后,检查自身是否保存有与场景三有关的场景动作的信息,发现有“第五设备5开”的动作信息,因此执行“第五设备5开”的动作;对于第七设备7,云端服务器会检查自身是否保存有与场景三有关的场景动作的信息,发现有“第七设备7开”的动作信息,执行“第七设备7开”的动作。
云端服务器接收到第二单网关场景条件被触发的消息,证明此时第二单网关场景条件所对应的网关中、与第二单网关场景条件对应的设备的状态发生了变化(第二单网关场景条件也有可能会涉及到多个设备,但只要有一个设备的状态发生符合条件的变化,则该第二单网关场景条件就会被触发)。由于第二单网关场景条件是从多网关或场景条件拆分出来的,因此第二单网关场景条件一旦被触发,就证明第二单网关场景条件所源自的场景的场景条件已经被满足,可以执行相应的动作。第二单网关场景条件被触发后,第二单网关场景条件所对应的网关可根据自身所保存的、与第二单网关场景条件对应的单网关场景动作的信息执行相应的单网关场景动作(如果该网关中的设备有相应场景动作的话)。此外,还向云端服务器发送第二单网关条件被触发的消息;云端服务器接收到第二单网关条件被触发的消息后,向与第二单网关场景条件对应的场景所涉及的所有网关发送执行该场景中的场景动作的命令。由于各网关中只保存了与本网关有关的单网关场景动作,因此在接收到相应命令后,执行对应的单网关场景动作。若本网关不存在对应的单网关场景动作,则不执行任何操作。
例如,对于场景二,图1中的第一设备1开,达到场景二的触发条件;直接触发第一网关8下的第二设备2开。同时将场景二的场景条件已满足的情况上报云端服务器,云端服务器向与场景二有关的各个网关发送场景二中场景动作的指令。第二网关9收到命令后,检查自身是否保存有与场景二有关的动作的信息,发现有“第四设备开”的场景动作信息,因此执行“第四设备开”的动作;第三网关10收到指令后,检查自身是否保存有与场景二有关的动作的信息,发现有“第五设备5开”的动作信息,因此执行“第五设备5开”的动作;对于第七设备7,云端服务器会检查自身是否保存有与场景二有关的动作的信息,发现有“第七设备7开”的动作信息,执行“第七设备7开”的动作。
本发明实施例提供的多网关通信方法通过云端服务器自身所保存的设备状态信息来判断多网关与场景条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销;通过将多网关场景条件与场景动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。
基于上述任一实施例,图6为本发明再一实施例提供的多网关通信方法的流程图,如图6所示,本发明再一实施例提供的多网关通信方法应用于网关侧,该方法包括:
步骤601、接收并保存由第二场景的场景条件拆分得到的单网关场景条件以及由第二场景的场景动作拆分得到的单网关场景动作。
本发明实施例中,第二场景的场景条件为多网关场景条件。
在本发明的前一实施例中,已经就云端服务器如何拆分多网关场景条件得到单网关场景条件,如何拆分场景动作得到单网关场景动作做了详细的描述,此处不再重复。
在本发明实施例中,网关接收到单网关场景条件和单网关场景动作后,统一保存来自同一场景的单网关场景条件和单网关场景动作。例如,表2中描述了第一网关8所保存的单网关场景条件和单网关场景动作。
表2
场景ID | 单网关场景条件 | 单网关场景动作 |
场景二 | 第一设备1开(或) | 第二设备2开 |
场景三 | 第一设备1开(与) | 第二设备2开 |
步骤602、单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息。
前面提到,多网关场景条件分为多网关与场景条件、多网关或场景条件。若第一单网关场景条件是从多网关与场景条件拆分出的,第二单网关场景条件是从多网关或场景条件拆分出的。在第一单网关场景条件被触发后,网关执行的操作与第二单网关场景条件被触发后网关执行的操作会有不同。下面分别予以说明。
网关中与第一单网关场景条件对应的设备的状态发生了变化,网关会先将与第一单网关场景条件有关的设备的状态变化信息发送给云端服务器;待云端服务器返回已将自身保存的设备状态信息更新成功的消息后,确定与第一单网关场景条件有关的设备的状态变化满足第一单网关场景条件的触发条件,网关再向云端服务器发送第一单网关场景条件被触发的消息(由于第一单网关场景条件可能会涉及到多个设备的状态更新,此处假设相关设备的状态均已更新使得第一单网关场景条件被触发。若第一单网关场景条件涉及到多个设备的状态更新,且有设备的状态未更新使得第一单网关场景条件无法被触发,则只将发生状态更新的设备的更新后状态发送到云端服务器并保存,不再执行后续操作)。
网关中与第二单网关场景条件对应的设备的状态发生了变化(第二单网关场景条件也有可能会涉及到多个设备,但只要有一个设备的状态发生符合条件的变化,则该第二单网关场景条件就会被触发)。由于第二单网关场景条件是从多网关或场景条件拆分出来的,因此第二单网关场景条件一旦被触发,就证明第二单网关场景条件所源自的场景的场景条件已经被满足,可以执行相应的动作。网关根据自身所保存的与第二单网关场景条件对应的场景动作的信息执行相应的场景动作,并向云端服务器发送第二单网关场景条件被触发的消息。
本发明实施例提供的多网关通信方法可在网关直接判断多网关或条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销;通过将多网关条件与多网关动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。此外,当部分网关或者网络出现故障时,不会导致整个网络瘫痪,其余正常的网关及其设备的相关场景还是可以利用云端服务器实现正确触发。另外故障的网络以及网关只要恢复网络连接,可以立即恢复场景功能的使用,不需要进行网关之间的组网。
基于上述任一实施例,图7为本发明再一实施例提供的多网关通信方法的流程图,如图7所示,本发明再一实施例提供的多网关通信方法应用于网关侧,该方法包括:
步骤701、接收到执行第二场景的场景动作的命令,根据命令执行第二场景的场景动作。
服务器向与第二场景相关的网关发送执行第二场景的场景动作的命令,由于各网关中只保存了与本网关有关的单网关场景动作。因此在接收到相应命令后,查找并执行由第二场景的场景动作得到的单网关场景动作。若本网关不存在对应的单网关场景动作,则不执行任何操作。
本发明实施例提供的多网关通信方法通过将多网关条件与多网关动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。此外,当部分网关或者网络出现故障时,不会导致整个网络瘫痪,其余正常的网关及其设备的相关场景还是可以利用云端服务器实现正确触发。另外故障的网络以及网关只要恢复网络连接,可以立即恢复场景功能的使用,不需要进行网关之间的组网。
基于上述任一实施例,图8为本发明实施例提供的云端服务器的示意图,如图8所示,本发明实施例提供的云端服务器包括:
场景信息转发模块801,用于确定第一场景的场景条件为单网关场景条件,将第一场景的信息发送给与第一场景的场景条件相关的网关;
场景动作信息转发模块802,用于接收到场景条件被触发的第一场景的场景动作信息,将第一场景的场景动作信息转发给与云端服务器连接的网关,以使得网关执行第一场景的场景动作。
本发明实施例提供的云端服务器将单网关场景条件交由对应的网关自行做条件判断,并在单网关场景条件被触发后,由云端服务器向各个网关转发相应的场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,本发明另一实施例提供的云端服务器还包括:
场景信息拆分模块,用于确定第二场景的场景条件为多网关场景条件,拆分所述第二场景的场景条件,得到单网关场景条件,拆分所述第二场景的场景动作,得到单网关场景动作;将所述单网关场景条件与单网关场景动作分别发送并保存到相应的网关;
场景动作执行命令转发模块,用于接收到单网关场景条件被触发的消息,根据所被触发的单网关场景条件确定向与第二场景相关的网关发送执行第二场景的场景动作的命令,以使得网关执行第二场景的场景动作。
本发明实施例提供的云端服务器通过自身所保存的设备状态信息来判断多网关与场景条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销;通过将多网关场景条件与场景动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。
基于上述任一实施例,图9为本发明实施例提供的第一网关的示意图,如图9所示,本发明实施例提供的第一网关包括:
场景信息接收模块901,用于接收第一场景的信息,所述第一场景的场景条件为单网关场景条件;
场景动作信息处理模块902,用于检测到第一场景的场景条件被触发,处理第一场景的场景动作信息。
本发明实施例提供的第一网关自行对单网关场景条件做条件判断,并在单网关场景条件被触发后,向云端服务器上传场景动作并由云端服务器向其他网关转发场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,本发明另一实施例提供的第一网关还包括:
拆分后场景信息接收模块,用于接收并保存由第二场景的场景条件拆分得到的单网关场景条件以及由第二场景的场景动作拆分得到的单网关场景动作;
消息发送模块,用于单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息。
本发明实施例提供的第一网关可直接判断多网关或条件是否被满足,简化了判断逻辑,减少了云端服务器与网关间的通信开销。
基于上述任一实施例,图10为本发明实施例提供的第二网关的示意图,如图10所示,本发明实施例提供的第二网关包括:
第一场景动作信息接收与执行模块1001,用于接收第一场景的场景动作信息,根据第一场景的场景动作信息执行第一场景的场景动作。
本发明实施例提供的第二网关在单网关场景条件被触发后,接收并执行由云端服务器所转发的场景动作,解决了场景动作跨局域网难的问题。
基于上述任一实施例,本发明另一实施例提供的第二网关还包括:
第二场景动作信息接收与执行模块,用于接收执行第二场景的场景动作的命令,根据命令执行第二场景的场景动作。
本发明实施例提供的第二网关根据执行场景动作的命令执行经过拆解的单网关场景动作,提升了场景动作的执行效率,也节省了与云端服务器之间的通信开销。
本发明实施例还提供了一种多网关通信系统,该系统包括云端服务器、第一网关和第二网关;所述第一网关和第二网关分别与所述云端服务器通信连接。
所述云端服务器、第一网关和第二网关的结构与功能在之前的本发明实施例中已经有详细说明,因此不在此处重复。
本发明实施例提供的多网关通信系统通过将多网关条件与多网关动作的拆分使得各个网关能独立地实现多网关场景,实现了网关之间的解耦,提升了布网的灵活度以及网关的处理性能。此外,当部分网关或者网络出现故障时,不会导致整个网络瘫痪,其余正常的网关及其设备的相关场景还是可以利用云端服务器实现正确触发。另外故障的网络以及网关只要恢复网络连接,可以立即恢复场景功能的使用,不需要进行网关之间的组网。
图11示例了一种电子设备的实体结构示意图,如图11所示,该电子设备可以包括:处理器(processor)1110、通信接口(Communications Interface)1120、存储器(memory)1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信。处理器1110可以调用存储器1130中的逻辑指令,以执行如下方法:云端服务器确定第一场景的场景条件为单网关场景条件,将第一场景的信息发送给与所述第一场景的场景条件相关的网关;接收到场景条件被触发的第一场景的场景动作信息,将第一场景的场景动作信息转发给与云端服务器连接的网关,以使得网关执行第一场景的场景动作。或执行如下方法:第一网关接收第一场景的信息,第一场景的场景条件为单网关场景条件;检测到第一场景的场景条件被触发,处理第一场景的场景动作信息。或执行如下方法:第二网关接收第一场景的场景动作信息,根据所述第一场景的场景动作信息执行第一场景的场景动作。
此外,上述的存储器1130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
进一步地,本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:云端服务器确定第一场景的场景条件为单网关场景条件,将第一场景的信息发送给与所述第一场景的场景条件相关的网关;接收到场景条件被触发的第一场景的场景动作信息,将第一场景的场景动作信息转发给与云端服务器连接的网关,以使得网关执行第一场景的场景动作。或例如包括:第一网关接收第一场景的信息,第一场景的场景条件为单网关场景条件;检测到第一场景的场景条件被触发,处理第一场景的场景动作信息。或例如包括:第二网关接收第一场景的场景动作信息,根据所述第一场景的场景动作信息执行第一场景的场景动作。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:云端服务器确定第一场景的场景条件为单网关场景条件,将第一场景的信息发送给与所述第一场景的场景条件相关的网关;接收到场景条件被触发的第一场景的场景动作信息,将第一场景的场景动作信息转发给与云端服务器连接的网关,以使得网关执行第一场景的场景动作。或例如包括:第一网关接收第一场景的信息,第一场景的场景条件为单网关场景条件;检测到第一场景的场景条件被触发,处理第一场景的场景动作信息。或例如包括:第二网关接收第一场景的场景动作信息,根据所述第一场景的场景动作信息执行第一场景的场景动作。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
以上实施方式仅用于说明本发明,而非对本发明的限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行各种组合、修改或者等同替换,都不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围中。
Claims (16)
1.一种多网关通信方法,其特征在于,包括:
确定第一场景的场景条件为单网关场景条件,将所述第一场景的信息发送给与所述第一场景的场景条件相关的网关;
接收到场景条件被触发的所述第一场景的场景动作信息,将所述第一场景的场景动作信息转发给与云端服务器连接的网关,以使得所述网关执行所述第一场景的场景动作;其中,
所述单网关场景条件用于描述在同一网关下的设备所形成的条件;所述第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息;
确定第二场景的场景条件为多网关场景条件,拆分所述第二场景的场景条件,得到单网关场景条件,拆分所述第二场景的场景动作,得到单网关场景动作;将所述单网关场景条件与单网关场景动作分别发送并保存到相应的网关;
接收到所述单网关场景条件被触发的消息,根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令,以使得所述网关执行第二场景的场景动作;其中,
所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件;所述单网关场景动作用于描述在满足所述单网关场景条件时、同一网关下的设备所要执行的动作。
2.根据权利要求1所述的多网关通信方法,其特征在于,所述多网关场景条件包括多网关与场景条件;相应的,所述接收到所述单网关场景条件被触发的消息包括:
接收到与第一单网关场景条件有关的设备的状态变化信息;其中,所述第一单网关场景条件是由所述多网关与场景条件拆分得到的单网关场景条件;
根据所述状态变化信息更新云端服务器中所保存的对应的设备状态信息,并返回设备状态信息更新成功的消息;
接收到第一单网关场景条件被触发的消息,所述第一单网关场景条件被触发的消息是与第一单网关场景条件有关的设备的状态变化满足所述第一单网关场景条件的触发条件后所发送的消息。
3.根据权利要求1所述的多网关通信方法,其特征在于,所述多网关场景条件包括多网关或场景条件;相应的,所述接收到所述单网关场景条件被触发的消息包括:
接收到第二单网关场景条件被触发的消息;其中,所述第二单网关场景条件是由所述多网关或场景条件拆分得到的单网关场景条件;所述第二单网关场景条件被触发的消息是与第二单网关场景条件有关的设备的状态变化满足所述第二单网关场景条件的触发条件后所发送的消息。
4.根据权利要求2所述的多网关通信方法,其特征在于,所述根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令包括:
根据所被触发的第一单网关场景条件查询所述第二场景中的其他第一单网关场景条件是否被触发;
当所述第二场景中的所有第一单网关场景条件均被触发,向与所述第二场景相关的所有网关发送执行所述第二场景的场景动作的命令。
5.根据权利要求3所述的多网关通信方法,其特征在于,所述根据所被触发的单网关场景条件确定向与所述第二场景相关的网关发送执行第二场景的场景动作的命令包括:
根据所被触发的第二单网关场景条件,向与所述第二场景相关的所有网关发送执行所述第二场景的场景动作的命令。
6.一种多网关通信方法,其特征在于,包括:
第一网关接收第一场景的信息,所述第一场景的场景条件为单网关场景条件;
检测到所述第一场景的场景条件被触发,处理所述第一场景的场景动作信息;其中,
所述单网关场景条件用于描述在同一网关下的设备所形成的条件;所述第一场景的信息包括第一场景的场景条件信息和第一场景的场景动作信息;
第一网关接收并保存由第二场景的场景条件拆分得到的单网关场景条件以及由第二场景的场景动作拆分得到的单网关场景动作;
单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息;其中,
所述第二场景的场景条件为多网关场景条件;所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件;所述单网关场景动作用于描述在满足所述单网关场景条件时、同一网关下的设备所要执行的动作。
7.根据权利要求6所述的多网关通信方法,其特征在于,所述处理所述第一场景的场景动作信息包括:
检测到所述第一场景的场景动作信息中包含所述第一网关所能控制的设备的动作信息,向所述设备发送执行动作的命令;
将所述第一场景的场景动作信息通过广域网发送给云端服务器。
8.根据权利要求7所述的多网关通信方法,其特征在于,所述处理所述第一场景的场景动作信息还包括:
将所述第一场景的场景动作信息以局域网广播的方式发送给与所述第一网关处于同一局域网的其他网关。
9.根据权利要求6所述的多网关通信方法,其特征在于,所述多网关场景条件包括多网关与场景条件;相应的,所述单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息包括:
与第一单网关场景条件有关的设备的状态发生了变化,向云端服务器发生所述设备的状态变化信息;其中,所述第一单网关场景条件是由所述多网关与场景条件拆分得到的单网关场景条件;
接收到云端服务器的设备状态信息更新成功的消息后,确定与第一单网关场景条件有关的设备的状态变化满足所述第一单网关场景条件的触发条件,向云端服务器发送第一单网关场景条件被触发的消息。
10.根据权利要求6所述的多网关通信方法,其特征在于,所述多网关场景条件包括多网关或场景条件;相应的,所述单网关场景条件被触发,向云端服务器发送单网关场景条件被触发的消息包括:
确定与第二单网关场景条件有关的设备的状态变化满足所述第二单网关场景条件的触发条件;其中,所述第二单网关场景条件是由所述多网关或场景条件拆分得到的单网关场景条件;
在第一网关的范围内,根据与所述第二单网关场景条件对应的单网关场景动作的信息执行场景动作;
发送第二单网关场景条件被触发的消息。
11.一种多网关通信方法,其特征在于,包括:
第二网关接收第一场景的场景动作信息,根据所述第一场景的场景动作信息执行第一场景的场景动作;其中,
所述第一场景的场景条件为单网关场景条件;所述单网关场景条件用于描述在同一网关下的设备所形成的条件;
第二网关接收执行第二场景的场景动作的命令,根据命令查找由所述第二场景的场景动作得到的单网关场景动作,执行所述单网关场景动作;其中,
所述执行第二场景的场景动作的命令是由云端服务器在接收到第二场景的单网关场景条件被触发的消息之后,根据所被触发的第二场景的单网关场景条件发送至所述第二网关的;
所述第二场景的场景条件为多网关场景条件;所述多网关场景条件用于描述位于不同网关下的设备共同形成的条件;所述第二场景的单网关场景条件是由云端服务器根据第二场景的多网关场景条件拆分得到的;
所述单网关场景动作用于描述在满足所述单网关场景条件时、同一网关下的设备所要执行的动作;所述第二场景的单网关场景动作是由云端服务器根据第二场景的多网关场景动作拆分得到的。
12.根据权利要求11所述的多网关通信方法,其特征在于,所述接收第一场景的场景动作信息包括:
接收云端服务器通过广域网所发送的第一场景的场景动作信息。
13.根据权利要求12所述的多网关通信方法,其特征在于,所述接收第一场景的场景动作信息还包括:
接收以局域网广播的方式所发送的第一场景的场景动作信息;
相应地,所述根据所述第一场景的场景动作信息执行场景动作包括:
检测到所述第一场景的场景动作信息中包含所述第二网关所能控制的设备的动作信息,向所述设备发送执行动作的命令;
在执行所述第一场景的场景动作后的第一间隔时间内,再次接收到所述第一场景的场景动作,抛弃再次接收到的所述第一场景的场景动作。
14.一种多网关通信系统,其特征在于,包括云端服务器、第一网关和第二网关;所述第一网关和第二网关分别与所述云端服务器通信连接;
所述云端服务器,用于执行如权利要求1至5任一项所述多网关通信方法;
所述第一网关,用于执行如权利要求6至10任一项所述多网关通信方法;
所述第二网关,用于执行如权利要求11至13任一项所述多网关通信方法。
15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述多网关通信方法的步骤,或实现如权利要求6至10任一项所述多网关通信方法的步骤,或实现如权利要求11至13任一项所述多网关通信方法的步骤。
16.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一项所述多网关通信方法的步骤,或实现如权利要求6至10任一项所述多网关通信方法的步骤,或实现如权利要求11至13任一项所述多网关通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360368.8A CN113037798B (zh) | 2019-12-25 | 2019-12-25 | 多网关通信方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360368.8A CN113037798B (zh) | 2019-12-25 | 2019-12-25 | 多网关通信方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113037798A CN113037798A (zh) | 2021-06-25 |
CN113037798B true CN113037798B (zh) | 2022-04-12 |
Family
ID=76458962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911360368.8A Active CN113037798B (zh) | 2019-12-25 | 2019-12-25 | 多网关通信方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113037798B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113625589B (zh) * | 2021-09-15 | 2023-12-12 | 云茂互联智能科技(厦门)有限公司 | 一种设备控制方法、装置、电子设备和存储介质 |
CN115016312B (zh) * | 2022-07-20 | 2023-06-16 | 深圳市华曦达科技股份有限公司 | 一种智能家居多厂商设备云场景优化方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594251A (zh) * | 2008-05-30 | 2009-12-02 | 当代天启技术(北京)有限公司 | 数字家庭网络系统及其场景模式配置方法 |
WO2018009205A1 (en) * | 2016-07-08 | 2018-01-11 | Intel Corporation | Intelligent gateway configuration for internet-of-things networks |
CN109407527A (zh) * | 2018-09-14 | 2019-03-01 | 深圳绿米联创科技有限公司 | 实现智能设备推荐的方法及装置 |
CN110113232A (zh) * | 2019-03-27 | 2019-08-09 | 深圳绿米联创科技有限公司 | 设备控制方法、装置、系统、电子设备及存储介质 |
-
2019
- 2019-12-25 CN CN201911360368.8A patent/CN113037798B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101594251A (zh) * | 2008-05-30 | 2009-12-02 | 当代天启技术(北京)有限公司 | 数字家庭网络系统及其场景模式配置方法 |
WO2018009205A1 (en) * | 2016-07-08 | 2018-01-11 | Intel Corporation | Intelligent gateway configuration for internet-of-things networks |
CN109407527A (zh) * | 2018-09-14 | 2019-03-01 | 深圳绿米联创科技有限公司 | 实现智能设备推荐的方法及装置 |
CN110113232A (zh) * | 2019-03-27 | 2019-08-09 | 深圳绿米联创科技有限公司 | 设备控制方法、装置、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113037798A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113037530B (zh) | 多网关场景实现方法、系统及电子设备、存储介质 | |
CN110198516B (zh) | 网络连接的建立方法及装置 | |
CN113037798B (zh) | 多网关通信方法、系统、电子设备及存储介质 | |
CN111866897B (zh) | 智能家居系统的组网方法和智能家居系统 | |
CN113867382B (zh) | 一种无人机集群网络的拓扑控制方法 | |
CN104301238A (zh) | 一种报文处理方法、装置及系统 | |
CN105721328B (zh) | 一种vrrp负载均衡的方法、装置和路由器 | |
CN110601980B (zh) | 一种车载终端的通信方法、系统及存储介质 | |
CN111917562A (zh) | 广播消息转发方法、装置、设备及存储介质 | |
CN108055156B (zh) | Ap管理方法及装置 | |
CN112202877A (zh) | 网关联动方法、网关、云服务器及用户终端 | |
CN112911520B (zh) | 自组网中确定主节点的方法、装置及存储介质 | |
CN114025408B (zh) | 一种自适应组网的建网、接入方法、装置及计算机设备 | |
CN114189438A (zh) | 一种基于opc ua的工业设备自动发现与配置方法 | |
CN115915098B (zh) | 一种5g与tsn跨域ptp中bmca实现方法 | |
CN109688011B (zh) | 一种基于OpenStack的agent选择方法及装置 | |
CN116938712A (zh) | 设备升级方法、设备升级装置以及计算机可读存储介质 | |
US11539584B2 (en) | Automatic and dynamic adaptation of grouping in a data processing system | |
CN113260072B (zh) | Mesh组网流量调度方法、网关设备和存储介质 | |
CN111447126B (zh) | 以太网总线通讯方法、装置、机器人、设备及计算机可读存储介质 | |
CN113765795A (zh) | 组网方法及装置、系统和存储介质 | |
WO2017143722A1 (zh) | 一种网络功能实现方法及控制装置和网元 | |
CN110995582A (zh) | 一种bgp路由反射器冗余网络收敛实现方法 | |
CN111542098A (zh) | ZigBee设备的通信连接方法及相关装置 | |
US20230198849A1 (en) | Topology path obtaining method of mesh network and system thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |