CN118264498A - 智能家居场景的部署方法、系统、电子设备及存储介质 - Google Patents
智能家居场景的部署方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN118264498A CN118264498A CN202311164590.7A CN202311164590A CN118264498A CN 118264498 A CN118264498 A CN 118264498A CN 202311164590 A CN202311164590 A CN 202311164590A CN 118264498 A CN118264498 A CN 118264498A
- Authority
- CN
- China
- Prior art keywords
- node
- information
- event
- target
- action
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000009471 action Effects 0.000 claims description 222
- 239000012634 fragment Substances 0.000 claims description 148
- 230000004044 response Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000000875 corresponding effect Effects 0.000 description 89
- 238000010586 diagram Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 5
- 238000003491 array Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/283—Processing of data at an internetworking point of a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Selective Calling Equipment (AREA)
Abstract
本申请提供一种智能家居场景的部署方法、系统、电子设备及存储介质,该方法包括:获取目标场景及智能家居网络的架构信息;基于智能家居网络的架构信息将目标场景部署在目标节点;其中,目标节点包括第一节点和/或第二节点,第一节点为智能家居网络中的主机,第二节点包括智能家居网络中的分机和/或网关。本申请提供的方法,有助于提升场景的执行性能。
Description
技术领域
本申请涉及智能家居领域,尤其涉及一种智能家居场景的部署方法、系统、电子设备及存储介质。
背景技术
在智能家居网络中,用户可以通过创建场景将家里的各种智能家居设备联动起来,实现用户对智能家居设备的联动控制需求。例如,当温度到达一定条件时,可以自动打开家中的空调;或者,当户外风力达到一定条件时,可以自动关闭家里的窗户等等。
场景通常部署在全屋的主机中,由主机的场景引擎驱动相应的场景。其中,场景的规则通常是依托于智能家居平台,将智能家居设备的状态、时间等条件和智能家居设备可执行的动作相结合形成的一种智能规则。依据场景规则中是否包含条件,可以将场景规则分为自动场景规则和手动场景规则。
其中,手动场景规则指的是用户人为的将智能家居设备的动作进行组合,并在智能家居平台上设置按钮,实现一键控制多个智能家居设备的功能。自动场景规则指的是按照用户的需求,将条件(例如,时间、天气状态、位置信息、设备状态、设备事件等)和设备动作相结合,形成一种当满足预设条件就执行相应动作的规则。
然而,当主机上部署的场景过多时,会对主机的负载造成影响,造成主机的性能瓶颈,响应速度变慢甚至宕机。
发明内容
本申请提供了一种智能家居场景的部署方法、系统、电子设备及存储介质,有助于提升场景的执行性能。
第一方面,本申请提供了一种智能家居场景部署方法,应用于第一节点,包括:获取目标场景及智能家居网络的架构信息;基于所述智能家居网络的架构信息将所述目标场景部署在目标节点;其中,所述目标节点包括所述第一节点和/或第二节点,所述第一节点为所述智能家居网络中的主机,所述第二节点包括所述智能家居网络中的分机和/或网关。
本申请提供的方法,有助于提升场景的执行性能。
其中一种可能的实现方式中,所述基于所述智能家居网络的架构信息将所述目标场景部署在目标节点包括:获取所述第一节点的历史负载信息和/或所述第二节点的历史负载信息;基于所述第一节点的历史负载信息和/或所述第二节点的历史负载信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
本申请中,将智能家居网络中的各节点的负载信息作为场景部署的参考条件,可以有助于平衡各节点的负载,避免某一节点因负载过重导致场景的执行性能降低甚至宕机。
其中一种可能的实现方式中,所述目标场景包括生效时刻,所述第一节点的历史负载信息包括所述第一节点中与所述生效时刻对应的负载信息,所述第二节点的历史负载信息包括所述第二节点中与所述生效时刻对应的负载信息。
其中一种可能的实现方式中,所述目标场景包括事件信息,条件信息和动作信息中的多个信息,所述基于所述智能家居网络的架构信息将所述目标场景部署在目标节点包括:基于所述目标场景,获得多个片段,其中,所述多个片段中的任一个片段包括所述目标场景中的事件片段、条件片段或动作片段;基于所述智能家居网络的架构信息将所述多个片段部署在目标节点。
本申请中,通过将一个场景的多个片段部署在不同的节点,可以提高场景部署的灵活性,并可以平衡智能家居网络各节点的负载。
其中一种可能的实现方式中,所述目标节点包括事件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述动作节点中部署所述目标场景的动作片段,所述方法还包括:所述事件节点监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述动作节点,使得所述动作节点基于所述第一信息执行所述目标场景的动作片段对应的动作;其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则。
本申请中,通过各节点间的信息交互,可以有效执行多个片段部署在不同节点的场景。
其中一种可能的实现方式中,所述目标节点包括事件节点、条件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述条件节点中部署所述目标场景的条件片段,所述动作节点中部署所述目标场景的动作片段,所述方法还包括:所述事件节点监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述条件节点,使得所述条件节点基于所述第一信息判断条件是否满足所述目标场景的条件片段对应的规则,并在所述条件满足所述目标场景的条件片段对应的规则后,所述条件节点将第二信息发送给所述动作节点,使得所述动作节点基于所述第二信息执行所述目标场景的动作片段对应的动作;其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则,所述第二信息用于指示所述条件已满足所述目标场景的条件片段对应的规则。
本申请中,通过各节点间的信息交互,可以有效执行多个片段部署在不同节点的场景。
其中一种可能的实现方式中,所述事件包括目标智能家居设备的状态变化事件,所述目标智能家居设备为所述目标场景中由所述事件节点控制的智能家居设备。
其中一种可能的实现方式中,所述方法还包括:获取所述第一节点中已部署的场景信息;基于所述第一节点中已部署的场景信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
本申请中,通过将已部署的场景信息作为场景部署时的参考因素,可以有助于避免因部署场景过多导致的场景执行性能降低。
其中一种可能的实现方式中,所述基于所述第一节点中已部署的场景信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点包括:获取所述第一节点中的已部署的场景中与所述目标场景具有相同生效时刻的场景;若与所述目标场景具有相同生效时刻的场景的数量大于或等于第一并发阈值,不将所述目标场景部署在所述第一节点中。
其中一种可能的实现方式中,所述目标节点为支持所述多个片段所需能力的节点,所述多个片段所需能力至少包括片段的延时执行能力和/或片段的循环执行能力。
其中一种可能的实现方式中,所述目标节点中与所述目标场景具有相同生效时刻的场景的数量小于第二并发阈值。
其中一种可能的实现方式中,所述多个片段中的关键片段部署在同一个目标节点中,所述关键片段包括关键事件片段、关键条件片段和关键动作片段中的一个或多个,所述关键片段用于表征一个场景是否执行成功的片段。
其中一种可能的实现方式中,所述目标节点与被所述目标节点控制的智能家居设备之间的距离最短。
其中一种可能的实现方式中,所述获取目标场景包括:响应于创建场景的请求,获取目标场景;或者,响应于所述第一节点的版本升级请求,获取目标场景。
第二方面,本申请提供了一种智能家居场景的部署系统,包括第一节点和第二节点,其中,所述第一节点用于获取目标场景及智能家居网络的架构信息;基于所述智能家居网络的架构信息将所述目标场景部署在目标节点;其中,所述目标节点包括所述第一节点和/或第二节点,所述第一节点为所述智能家居网络中的主机,所述第二节点包括所述智能家居网络中的分机和/或网关。
其中一种可能的实现方式中,所述第一节点还用于获取所述第一节点的历史负载信息和/或所述第二节点的历史负载信息;基于所述第一节点的历史负载信息和/或所述第二节点的历史负载信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
其中一种可能的实现方式中,所述目标场景包括事件信息,条件信息和动作信息中的多个信息,所述第一节点还用于基于所述目标场景,获得多个片段,其中,所述多个片段中的任一个片段包括所述目标场景中的事件片段、条件片段或动作片段;基于所述第一节点的历史负负载信息及所述智能家居网络的架构信息将所述多个片段部署在目标节点。
其中一种可能的实现方式中,所述目标节点包括事件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述动作节点中部署所述目标场景的动作片段,其中,所述事件节点用于监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述动作节点;所述动作节点用于基于所述第一信息执行所述目标场景的动作片段对应的动作;其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则。
其中一种可能的实现方式中,所述目标节点包括事件节点、条件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述条件节点中部署所述目标场景的条件片段,所述动作节点中部署所述目标场景的动作片段,其中,所述事件节点用于监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述条件节点;所述条件节点用于基于所述第一信息判断条件是否满足所述目标场景的条件片段对应的规则,并在所述条件满足所述目标场景的条件片段对应的规则后,所述条件节点将第二信息发送给所述动作节点;所述动作节点用于基于所述第二信息执行所述目标场景的动作片段对应的动作;其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则,所述第二信息用于指示所述条件已满足所述目标场景的条件片段对应的规则。
第三方面,本申请提供了一种智能家居场景的部署装置,包括一个或多个功能模块,所述一个或多个功能模块用于实现如第一方面所述的智能家居场景的部署方法。
第四方面,本申请提供了一种电子设备,包括:处理器和存储器,所述存储器用于存储计算机程序;所述处理器用于运行所述计算机程序,实现如第一方面所述的智能家居场景的部署方法。
第五方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机实现如第一方面所述的智能家居场景的部署方法。
第六方面,本申请提供一种计算机程序,当上述计算机程序在电子设备的处理器上运行时,使得所述电子设备执行如第一方面所述的智能家居场景的部署方法。
在一种可能的设计中,第六方面中的程序可以全部或者部分存储在与处理器封装在一起的存储介质上,也可以部分或者全部存储在不与处理器封装在一起的存储器上。
附图说明
图1为现有技术的智能家居网络结构示意图;
图2为本申请实施例提供的系统架构示意图;
图3为本申请提供的智能家居场景的部署方法一个实施例的流程示意图;
图4为本申请提供的智能家居场景的部署方法另一个实施例的流程示意图;
图5为本申请提供的共享节点确定方式一个实施例的示意图;
图6为本申请提供的共享节点确定方式另一个实施例的示意图;
图7为本申请提供的共享节点确定方式再一个实施例的示意图;
图8为本申请提供的目标节点确定方式一个实施例的示意图;
图9为本申请提供的目标节点确定方式另一个实施例的示意图;
图10为本申请提供的目标节点确定方式再一个实施例的示意图;
图11为本申请提供的目标节点确定方式再一个实施例的示意图;
图12为本申请提供的智能家居场景的部署方法再一个实施例的流程示意图;
图13为本申请提供的智能家居场景的部署方法再一个实施例的流程示意图;
图14为本申请提供的智能家居场景的部署装置一个实施例的结构示意图;
图15为本申请实施例提供的电子设备的结构示意图。
具体实施方式
本申请实施例中,除非另有说明,字符“/”表示前后关联对象是一种或的关系。例如,A/B可以表示A或B。“和/或”描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
需要指出的是,本申请实施例中涉及的“第一”、“第二”等词汇,仅用于区分描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,也不能理解为指示或暗示顺序。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。此外,“以下至少一项(个)”或者其类似表达,是指的这些项中的任意组合,可以包括单项(个)或复数项(个)的任意组合。例如,A、B或C中的至少一项(个),可以表示:A,B,C,A和B,A和C,B和C,或A、B和C。其中,A、B、C中的每个本身可以是元素,也可以是包含一个或多个元素的集合。
本申请实施例中,“示例的”、“在一些实施例中”、“在另一实施例中”等用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中的“的(of)”、“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,所要表达的含义是一致的。本申请实施例中,通信、传输有时可以混用,应当指出的是,在不强调其区别时,其所表达的含义是一致的。例如,传输可以包括发送和/或接收,可以为名词,也可以是动词。
本申请实施例中涉及的等于可以与大于连用,适用于大于时所采用的技术方案,也可以与小于连用,适用于小于时所采用的技术方案。需要说明的是,当等于与大于连用时,不能与小于连用;当等于与小于连用时,不与大于连用。
在智能家居网络中,用户可以通过创建场景将家里的各种智能家居设备联动起来,实现用户对智能家居设备的联动控制需求。例如,当温度到达一定条件时,可以自动打开家中的空调;或者,当户外风力达到一定条件时,可以自动关闭家里的窗户等等。
场景通常部署在全屋的主机中,由主机的场景引擎驱动相应的场景。其中,场景的规则通常是依托于智能家居平台,将智能家居设备的状态、时间等条件和智能家居设备可执行的动作相结合形成的一种智能规则。依据场景规则中是否包含条件,可以将场景规则分为自动场景规则和手动场景规则。
其中,手动场景规则指的是用户人为的将智能家居设备的动作进行组合,并在智能家居平台上设置按钮,实现一键控制多个智能家居设备的功能。自动场景规则指的是按照用户的需求,将条件(例如,时间、天气状态、位置信息、设备状态、设备事件等)和设备动作相结合,形成一种当满足预设条件就执行相应动作的规则。
然而,当主机上部署的场景过多时,会对主机的负载造成影响,造成主机的性能瓶颈,响应速度变慢甚至宕机。
图1示例性的示出了传统的智能家居网络架构图。参考图1,智能家居网络可以包括一个主机、一个或多个智能家居设备(例如,设备1-设备7)、一个或多个网关(例如,网关1-网关4)及一个或多个分机。其中,主机可以控制设备1、网关1、网关2及分机。
其中,智能家居网络也可以称之为全屋网络,主机也可以称之为全屋主机,分机也可以称之为全屋分机,本申请实施例对此不作特殊限定。
可以理解的是,尽管图1中未示出,云端也可以实现主机的功能,此外,主机也可以控制多个分机,和/或主机也可以控制多个智能家居设备。
网关1可以控制设备2和设备3,网关2可以控制设备4,分机可以控制网关3、网关4和设备7,网关3可以控制设备5,网关4可以控制设备6。
然而,当主机上部署的场景过多时,会对主机的负载造成影响,造成主机的性能瓶颈,响应速度变慢甚至宕机。
为了解决上述问题,本申请实施例提供了一种智能家居场景部署方法,可以提升场景的执行性能。
现结合图2-图13对本申请实施例提供的智能家居场景部署方法进行说明。
图2为本申请实施例提供的智能家居场景部署的全屋网络架构图。参考图2,本申请实施例的智能家居网络可以包括一个主机、一个或多个分机、一个或多个网关(例如,网关1和网关2)及一个或多个智能家居设备(为说明方便,本文将智能家居设备简称为设备),例如,智能家居设备可以是设备1-设备7等。
其中,智能家居设备可以包括但不限于智能无线保真(Power LineCommunication,Wi-Fi)设备、智能蓝牙设备、智能电力线通信(Power LineCommunication,PLC)设备。
可以理解的是,主机、分机、网关和智能家居设备可以理解为智能家居网络中的网元或节点。为说明,下文将主机称为第一节点,将分机和网关称为第二节点,其中,第一节点和第二节点为用于执行场景的节点。第二节点可以包括一个或多个分机,和/或一个或多个网关。示例性的,以图2所示的智能家居网络为例,主机为第一节点,网关1、网关2、网关3、网关4和分机为第二节点。
主机具有主机引擎,分机具有分机引擎,网关具有网关引擎,引擎用于驱动场景的执行。可以理解的是,引擎也可以称之为场景引擎或场景驱动。场景可以部署在上述主机引擎、分机引擎和网关引擎中的一个或多个引擎上,从而可以通过网关和分机分担主机的负载,提高场景执行的性能,避免因过多的场景部署在主机上造成主机负载过重,影响场景执行的性能。
可以理解的是,场景可以包括事件(Event)、条件(Condition)及动作(Action)这3个类型的片段。
其中,事件指的是触发场景的方式,该触发场景的方式可以是检测到智能家居设备的状态的变化或者是响应于某个操作,例如,以开空调为例,打开开关为开空调的事件。条件为场景执行的判断依据,该判断依据可以是距离、时间、温度、状态等,例如,仍以开空调为例,在满足多少温度的条件时才能打开空调。动作为满足条件时设备执行的动作,例如,仍以开空调为例,在满足条件时设备执行打开空调这个动作。
如图3所示为本申请提供的智能家居场景部署方法一个实施例的流程示意图,具体包括以下步骤:
步骤301,第一节点获取目标场景及智能家居网络的架构信息。
具体地,第一节点获取目标场景的触发方式可以包括以下两种:
触发方式1
用户可以在第一节点上进行操作,用于创建新的场景(下文中记为目标场景)。响应于创建场景的请求,第一节点可以获取目标场景。
触发方式2
用户可以对第一节点进行版本升级,用于对第一节点中已有的场景(下文中记为目标场景)进行更新。响应于第一节点的版本升级请求,第一节点可以获取目标场景。可以理解的是,第一节点中可能存在多个已有的场景,对于任一个已有的场景,该场景可以为目标场景,也就是说,可以依次对多个已有的场景进行更新,在对任一个正在更新的场景来说,该场景即为目标场景。
其中,目标场景中可以包括目标场景的生效时刻,目标场景的生效时刻指的是执行上述目标场景的时刻,可以理解的是,在目标场景的生效时刻,部署该目标场景的节点可以判断事件和条件,并在事件和条件满足对应的规则后执行与目标场景对应的动作。
表1示例性的示出了场景与生效时刻之间的对应关系。
表1
场景 | 生效时刻 |
场景1 | 8:00 |
场景2 | 15:00 |
场景3 | 18:00 |
参考表1,假设第一节点中已创建了3个场景,分别为场景1、场景2和场景3,其中,场景的1的生效时刻为8:00,也就是说,场景1可以在每天的8:00或者某一天的8:00执行,场景2的生效时刻为15:00,也就是说,场景2可以在每天的15:00或者某一天的15:00执行,场景3的生效时刻为18:00,也就是说,场景3可以在每天的18:00或者某一天的18:00执行。
在获取到目标场景之后,还可以获取智能家居网络的架构信息。
其中,智能家居网络的架构信息可以包括智能家居网络中的节点与智能家居设备、节点与节点之间的关联关系,该关联关系可以包括连接关系及控制关系,在一些实施例中,该关联关系还可以包括其他的关系,本申请实施例对此不作特殊限定。可以理解的是,该智能家居网络的架构信息的表现形式可以是网络拓扑图,或者,该智能家居网络的架构信息的表现形式也可以是路由表,本申请实施例对此不作特殊限定。
示例性的,以图2的智能家居网络为例,表2示出了上述智能家居网络的架构信息。
参考表2,设备1、网关1、网关2和分机与主机相连接,且受主机控制,因此,与主机的相邻节点为设备1、网关1、网关2和分机。设备2和设备3与网关1相连接,且受网关1控制,因此,与网关1的相邻节点为设备2和设备3。设备4与网关2相连接,且受网关2控制,因此,与网关2的相邻节点为设备2。设备7、网关3和网关4与分机相连接,且受分机控制,因此,与分机的相邻节点为设备7、网关3和网关4。设备5与网关3相连接,且受网关3控制,因此,与网关3的相邻节点为设备5。设备6与网关4相连接,且受网关4控制,因此,与网关4的相邻节点为设备6。
在一些可选的实施例中,在获取到目标场景和智能家居网络的架构信息之后,还可以获取第一节点的历史负载信息和/或第二节点的历史负载信息,第一节点的历史负载信息可以包括第一节点在第一历史时长内的负载信息,第二节点的历史负载信息可以包括第二节点在第二历史时长内的负载信息。其中,第一历史时长与第二历史时长可以相同,或者,可以不相同,本申请实施例对此不作特殊限定。
示例性的,负载信息可以通过中央处理区(Central Processing Unit,CPU)的使用率和内存使用率表征。
可以理解的是,上述CPU使用率和内存使用率仅是示例性说明,并不构成对本申请实施例的限定,在一些实施例中,还可以通过其他参数表征主机的负载信息。
其中,第一节点的历史负载信息和第二节点的历史负载信息的获取方式可以是:第一节点的历史负载信息可以通过对第一历史时长内的第一节点的负载信息进行统计后获得,或者,第二节点的历史负载信息可以通过对第二历史时长内的第一节点的负载信息进行统计后获得。第一节点的历史负载信息和第二节点的历史负载信息可以周期性获取,例如,以负载信息为CPU和内存使用率为例,第一节点可以在一天内每秒记录CPU使用率和内存使用率,则通过一天内对第一节点的负载数据的采集,可以获得第一节点的历史负载信息随时间变化的曲线;或者,第二节点可以在一天内每秒记录CPU使用率和内存使用率,则通过一天内对第二节点的负载数据的采集,可以获得第二节点的历史负载信息随时间变化的曲线。
在一些可选的实施例中,第一节点还可以获取目标场景对应的ECA信息及空间属性信息。
其中,ECA指的是事件(Event)、条件(Condition)及动作(Action)中的至少2个类型的片段。例如,一个场景可以包括事件和动作这2个类型的片段;或者,一个场景可以包括事件、条件和动作这3个类型的片段。
场景中的ECA信息可以包括关键ECA。关键ECA用于表征一个场景是否执行成功的ECA。
在一些可选的实施例中,场景中的ECA信息还可以包括非关键ECA,其中,非关键ECA用于表征可选的ECA。
可以理解的是,关键ECA可以包括一个或多个ECA,非关键ECA可以包括一个或多个ECA。关键ECA是一个场景在执行过程中必须被执行的ECA,也就是说,一个场景中的关键ECA中的所有ECA执行成功,才可以认为该场景执行成功,只要该场景中的关键ECA中的任意一个ECA执行失败,该场景认为执行失败。不管非关键ECA是否执行成功或失败,都不影响该场景的执行成功或失败。
示例性的,以观影场景为例,其中,场景中的事件可以为打开观影开关,动作可以包括:关闭窗帘、调案主灯、打开电视、音箱播报等。可见,场景中的调暗主灯和打开电视会影响到用户观影,因此,可以将调暗主灯和打开电视设为关键ECA;而关闭窗帘、音箱播报并不影响用户观影,因此,可以将关闭窗帘、音箱播报设为非关键ECA。
场景中的空间属性信息用于表征场景中用到的设备来自于那个空间或者该场景的主要作用区域是哪个空间。
示例性的,以会客场景为例,会客场景中的动作可以包括打开客厅灯、打开玄关灯和打开门廊灯。其中,虽然玄关灯和门廊灯不在客厅,但是会客场景的空间属性依然是客厅。
在一些可选的实施例中,用户也可以通过云主机对场景进行创建,本申请实施例对此不作特殊限定。其中,云主机可以是在云侧的主机。
步骤302,第一节点基于智能家居网络的架构信息将目标场景部署在目标节点。
具体地,当第一节点获取到目标场景及智能家居网络的架构信息后,可以基于智能家居网络的架构信息将目标节点部署在目标节点。
其中,目标节点可以是第一节点和/或第二节点,如前文所述,第二节点可以包括一个或多个分机,和/或一个或多个网关。
需要说明的是,本申请实施例中所指的部署也可以称之为分发或者配置,即第一节点确定目标节点后,可以将目标场景分发或者配置给目标节点,该部署并不意味着目标场景的执行,也就是说,在目标场景部署的时刻,该目标场景并不执行,目标场景在由场景信息指示的生效时刻执行。
在一些可选的实施例中,第一节点还可以基于第一节点的历史负载信息和/或第二节点的历史负载信息及智能家居网络的架构信息将目标节点部署在目标节点。
示例性的,可以通过第一节点的历史负载信息预测与目标场景的生效时刻对应的负载值,若第一节点中与目标场景的生效时刻对应的负载值较高,说明在目标场景的生效时刻,第一节点的负载过重,无法部署更多的场景,则可以将目标场景部署在第二节点,由此可以减轻第一节点的负担;或者,若第一节点中与目标场景的生效时刻对应的负载值较低,则可以将目标场景部署在第一节点。或者,可以通过第二节点的历史负载信息预测与目标场景的生效时刻对应的负载值,若第二节点中任意一个节点与目标场景的生效时刻对应的负载值较高,说明在目标场景的生效时刻,该节点的负载过重,无法部署场景,则可以将目标场景部署在第二节点中的其他节点,由此可以平衡负载。
在一些可选的实施例中,还可以根据第一节点中已部署的场景对目标场景进行部署。
可以理解的是,随着第一节点中场景的不断部署,会存在一些已部署的场景。对于第一节点来说,如果同一时刻执行较多的场景,有可能会出现部分场景因抢占被挂起或者部分场景执行失败的情况,影响用户的使用体验。因此,第一节点还可以基于第一节点中已部署的场景对目标场景进行部署。
示例性的,可以预先给第一节点设置并发上限,其中,并发上限用于表征主机在同一时刻可执行的场景数的阈值,例如,该阈值可以是第一并发阈值。若对目标场景进行部署时,第一节点中与目标场景同一执行时刻执行的场景数达到并发上限,例如,大于或等于第一并发阈值,可以将该目标场景部署在第二节点;或者,若对目标场景进行部署时,第一节点中与目标场景同一执行时刻执行的场景数未达到并发上限,例如,小于第一并发阈值,可以将该目标场景部署在第一节点。
本申请实施例中,基于智能家居网络架构对目标场景进行部署,可以有助于提升场景的执行性能。
需要说明的是,本申请实施例以智能家居网络中的主机为例进行了示例性说明,但并不构成对本申请实施例的限定,在一些实施例中,云主机也可以实现上述方法。
上文通过图3对整个场景的部署进行了示例性说明。可以理解的是,由于一个场景通常包括ECA中的至少2个类型的片段,例如,一个场景包含事件和动作,或者,一个场景包含事件、条件和动作。因此,为了平衡全屋中第一节点和第二节点的负载,还可以对场景进行切分,得到多个片段,并可以将切分得到的多个片段部署在第一节点和/或第二节点中。
图4为本申请提供的智能家居场景部署方法另一个实施例的流程示意图,上述步骤302,具体包括以下步骤:
步骤401,第一节点对目标场景进行切分,获得多个片段。
具体地,由于目标场景可以包括事件、条件及动作中的至少2个类型的片段,可以基于事件、条件及动作对场景切分,得到多个片段。
其中,一个或多个事件可以作为一个事件片段,或者,一个或多个条件可以作为一个条件片段,或者,一个或多个动作可以作为一个动作片段。
例如,假设事件为E,动作包括A1、A2和A3,其中,执行动作A1、A2和A3的设备受同一个网关控制,则事件E可以作为一个事件片段,A1、A2和A3的组合可以作为一个动作片段。
又例如,假设事件为E1或E2,动作包括A1、A2和A3,其中,执行动作A1、A2和A3的设备受同一个网关控制,则事件E1或E2可以单独作为一个事件片段,A1、A2和A3的组合可以作为一个动作片段。
再例如,假设事件为E,条件为C1或C2,动作为A1、A2和A3,其中,执行动作A1、A2和A3的设备受同一个网关控制,则事件E可以作为一个事件片段,条件C1或C2可以单独作为一个条件片段,A1、A2和A3的组合可以作为一个动作片段。
再例如,假设事件为E,条件为C1和C2,动作为A1、A2和A3,其中,执行动作A1、A2和A3的设备受同一个网关控制,则事件E可以作为一个事件片段,条件C1和C2的组合可以作为一个条件片段,A1、A2和A3的组合可以作为一个动作片段。
再例如,假设事件为E,动作包括A1、A2和A3,其中,动作A1、A2和A3之间是顺序执行、循环执行、条件分支或者输入输出等依赖关系,则事件E可以作为一个事件片段,A1、A2和A3的组合可以作为一个动作片段。
步骤402,第一节点确定目标节点。
具体地,当第一节点获得多个片段后,可以基于智能家居网络的架构信息确定目标节点,以便将上述多个片段部署在目标节点中。
其中,目标节点的数目可以为一个或多个,目标节点可以是第一节点和/或第二节点,由此可以将一个场景的多个片段分散到第一节点和/或第二节点中。
例如,第一节点中可以部署目标场景中的一个或多个片段,和/或第二节点中可以部署目标场景中的一个或多个片段,由此可以降低第一节点的负担,从而可以提高系统性能。
在一些可选的实施例中,确定目标节点的方式可以是在一个或多个共享节点中选取一个共享节点作为目标节点。也就是说,在确定目标节点之前,可以先找到目标场景的多个片段对应的共享节点,其中,共享节点用于表征可控制目标场景的多个片段所对应的设备的节点。可以理解的是,共享节点也可以称之为共同节点。
示例性的,以图2所示的网络拓扑为例,图5示例性的示出了共享节点一个实施例的示意图。假设一个场景包含2个片段,分别为事件片段和动作片段,其中,事件片段包括事件E,事件E对应的设备为设备2,动作片段包括动作A,动作A对应的设备为设备3,由于设备2和设备3都由网关1控制,则事件片段和动作片段对应的共享节点可以是网关1,即网关1可以是该场景的共享节点。
在一些可选的实施例中,以图5所示的实施例为例,由于主机是网关1的上一级节点,也可以控制设备2和设备3,因此,主机也可以是事件片段和动作片段的共享节点,即主机也可以是该场景的共享节点。
在一些可选的实施例中,以图5所示的实施例为例,分机也可以通过路由的方式控制设备2和设备3,例如,分机可以通过网关1间接控制设备2和设备3,因此,分机也可以作为该动作片段的共享节点。
又例如,仍以图2所示的网络拓扑为例,图6示例性的示出了共享节点另一个实施例的示意图。假设一个场景包含2个片段,分别为事件片段和动作片段,其中,事件片段包括事件E,事件E对应的设备为设备2,动作片段包括动作A,动作A对应的设备为设备4。由于设备2受网关1控制,以及设备4受网关2控制,网关1不能控制设备4,网关2不能控制设备2,因此,网关1或网关2不能作为事件片段和动作片段的共享节点,即网关1或网关2不能作为该场景的共享节点。由于主机或分机可以控制设备2和设备4,因此,事件片段和动作片段的共享节点可以是主机或分机,即该场景的共享节点可以是主机或分机。
在一些可选的实施例中,共享节点还可以通过共享节点组的形式表征,例如,共享节点可以是包含多个节点的共享节点组。
例如,以图6所示的实施例为例,图7示例性的示出了共享节点再一个实施例的示意图。虽然网关1或网关2不能作为事件片段和动作片段的共享节点,但是通过将网关1和网关2组成共享节点组,可以通过共享节点组实现对设备2和设备4的控制,即共享节点组也可以是该场景的共享节点。例如,共享节点组={网关1,网关2}。
当确定共享节点后,可以根据共享节点确定目标节点。
其中,目标节点的确定原则可以包括以下方式中的一种或多种,在实际应用中,可以对以下方式进行任意的组合使用,本申请实施例对此不作特殊限定。
方式一,在共享节点中优先选取支持目标场景中片段所需业务能力的目标节点。
片段所需的业务能力可以包括但不限于片段的延时、循环执行、定时等能力。可以理解的是,部分节点能力较强,支持片段所需的业务能力,可以优先选取支持所需业务能力的节点作为目标节点;然而部分节点能力较弱,可能不支持片段所需的业务能力,可以不选取不支持所需业务能力的节点作为目标节点。
方式二,在共享节点中优先选取并发上限满足预设条件的目标节点。
一个节点中可能已经部署一个或多个场景,每个场景都具有对应的执行时刻。由于节点的并发能力有限,例如,当有一个场景正在被执行时,具有相同执行时刻的其他场景的执行请求可能会拒绝,由此会影响场景的执行效果,影响用户的使用体验。其中,触发条件可以包括但不限于相同温度、相同时刻、相同天气等。因此,在选取目标节点时,可以在共享节点中优先选取并发上限满足预设条件的节点作为目标节点,例如,该目标节点中与目标场景具有相同执行时刻的场景的数量小于第二并发阈值,该第二并发阈值可以是目标节点的并发上限。
方式三,优先将目标场景中包含关键ECA的所有片段部署在同一个目标节点中。
可以理解的是,如果包含关键ECA的多个片段部署在多个节点中,可能会导致部分关键ECA执行成功,部分关键ECA执行失败,由此会导致整个场景执行失败,影响用户的使用体验。为了保证所有关键ECA执行成功,也就是保证场景的完整性和原子性,可以优先将目标场景中包含关键ECA的所有片段部署在同一个目标节点中。
方式四,在共享节点中优先选取负载低的目标节点。
可以理解的是,待选取节点中的每个节点均有其历史负载信息。其中,待选取节点的历史负载信息的获取方式具体可以参考上述实施例中第一节点和第二节点的历史负载信息的相关描述,在此不再赘述。
通过历史负载信息可以获得与生效时刻对应的负载值,若待选取节点中与目标场景的生效时刻对应的负载值较低,例如,与目标场景的生效时刻对应的负载值小于负载阈值,可以优先将该负载值小于负载阈值的节点作为目标节点;若待选取节点中与目标场景的生效时刻对应的负载值较高,例如,与目标场景的生效时刻对应的负载值大于或等于负载阈值,可以不将该负载值大于或等于负载阈值的节点作为目标节点。
示例性的,若目标场景为早晨起床时的某个场景,然而,待选取的节点可能在早晨需要执行大量的任务,负载较重,则该目标场景不适合部署在该负载较重的待选取节点中。
方式五,在共享节点中优先选取离目标场景控制的设备较近的目标节点。
如前文所述,目标节点离目标场景控制的设备越近,延时越短,执行效率越高,用户的体验越好。因此,可以在共享节点中优先选取离目标场景控制的设备较近的目标节点。其中,目标节点与设备之间的距离的计算方式具体可以参考上述实施例中的相关描述,在此不再赘述。
示例性的,可以预先将智能家居网络拓扑及其空间位置信息存储在第一节点中,当对目标场景进行部署时,可以计算该目标场景控制的设备分别离第一节点和第二节点的距离,由此可以将目标场景部署在离该目标场景控制的设备较近的节点。例如,若网关离该目标场景控制的设备较近,则可以将该目标场景部署在网关,或者,若分机离该目标场景控制的设备较近,则可以将该目标场景部署在分机。
接着,以图2所示的网络拓扑为例,通过举例说明目标节点的确定。
例如,参考图8,假设一个场景包括事件片段和动作片段,其中,事件片段包括事件E,事件E为打开设备2,动作片段包括动作A,动作A为打开设备3。由于事件E对应的设备2受网关1控制,以及动作A对应的设备3受网关1控制,因此,事件片段和动作片段对应的共享节点可以为网关1、主机或分机,即该场景的的共享节点可以为网关1、主机或分机。
假设网关1满足上述方式一-方式五中的原则,例如,网关1是离设备2和设备3距离最近的节点,且设备2和设备3的执行不需要延时、循环等业务能力,且网关1中并未部署其他场景,目标场景的生效时刻对应的负载较低,在这种情况下,可以将网关1作为目标节点,即可以将整个场景部署在网关1,也就是将事件片段和动作片段都部署在网关1。
又例如,参考图9,假设一个场景包括关键事件片段和关键动作片段,其中,关键事件片段包括关键事件E,关键事件E为打开设备2,关键动作片段包括关键动作A,关键动作A为打开设备4。
由于关键事件E对应的设备2受网关1控制,关键动作A对应的设备4受网关2控制。且由于关键条件E和关键动作A均为关键ECA,因此,不能将关键事件片段和关键动作片段部署在不同的节点。具体到本实施例,不能通过共享节点组的方式将关键事件片段部署在网关1,以及不能将关键动作片段部署在网关2。为了将关键事件片段和关键动作片段部署在同一个节点中,可以将关键事件片段和关键动作片段部署在主机或分机等共享节点,也就是将主机或分机作为目标节点。在本实施例中,假设主机满足上述方式一-方式五中的原则,可以将关键事件片段和关键动作片段部署在主机,即将整个场景部署在主机。
再例如,参考图10,假设一个场景包括事件片段和动作片段,其中,事件片段包括事件E,事件E为打开设备2,动作片段包括动作A1和动作A2,动作A1为打开设备3,动作A2为打开设备4。
由于事件E对应的设备2受网关1控制,且动作A1和动作A2对应的设备3和设备4分别受网关1和网关2控制,因此,事件片段和动作片段对应的共享节点可以为主机或分机,或者,事件片段和动作片段对应的共享节点可以为由网关1和主机组成的共享节点组,或者,事件片段和动作片段对应的共享节点可以为由网关1和分机组成的共享节点组。
假设选取主机或分机作为目标节点,则可以将事件片段和动作片段部署在主机或分机,即将整个场景部署在主机或分机。或者,
假设选取由网关1和主机组成的共享节点组作为目标节点,则可以将事件片段部署在网关1,动作片段部署在主机。或者,
假设选取由网关1和分机组成的共享节点组作为目标节点,则可以将事件片段部署在网关1,动作片段部署在分机。
再例如,参考图11,假设一个场景包括事件片段和动作片段,其中,事件片段包括事件E,事件E为打开设备2,动作片段包括动作A,动作A为打开设备4。
由于事件E对应的设备2受网关1控制,动作A对应的设备4受网关2控制,因此,事件片段和动作片段对应的共享节点可以为由共享节点组、主机或分机,其中,共享节点组={网关1,网关2}。假设共享节点组满足上述方式一-方式五中的原则,可以将共享节点组作为目标节点,由此可以将事件片段部署在网关1,以及动作片段部署在网关2。
可以理解的是,上述实施例仅以共享节点组中包含2个节点为例进行了说明,但并不构成对的本申请实施例的限定,在一些实施例中,共享节点组中包含的节点数目也可以大于2个。
步骤403,第一节点将多个片段部署在目标节点中。
具体地,当确定目标节点后,可以将目标场景的多个片段部署在已确定的目标节点中。
其中,目标场景的多个片段的部署方式具体可以参考图8-图11所示实施例中的相关描述,在此不再赘述。
上文通过图4-图11对场景的切分部署进行了示例性说明。接着,下文通过图12和图13对场景的执行进行示例性说明。
图12为本申请提供的场景部署方法再一个实施例的流程示意图,在图12所示的实施例中,一个场景可以包括事件和动作,由于一个场景的事件对应的片段和动作对应的片段可能部署在不同的节点中,因此,当事件发生后,事件对应的片段所在的节点(为说明方便,下文记为事件节点)可以将该事件通知给动作对应的片段所在的节点,以便该动作对应的片段所在的节点(为说明方便,下文记为动作节点)可以执行对应的动作,具体包括以下步骤:
步骤1201,事件节点监测事件。
具体地,该事件节点可以包括第一节点,或者,该事件节点可以包括第二节点,本申请实施例对此不作特殊限定。
其中,事件可以包括目标智能家居设备的状态变化事件,在一些实施例中,事件也还可以包括其他类型的事件,本申请实施例对此不作特殊限定。目标智能家居设备可以为目标场景中由事件节点控制的智能家居设备。
事件节点的数目可以是一个或多个,本申请实施例对此不作特殊限定。
事件节点中可以部署一个或多个事件片段,一个事件片段中可以包括一个或多个事件。事件节点可以监测事件的发生。其中,事件的定义具体可以参考上述实施例中的相关描述,在此不再赘述。
步骤1202,响应于监测到的事件,事件节点将第一信息发送给动作节点。
具体地,该动作节点可以包括第一节点,或者,该动作节点可以包括第二节点,本申请实施例对此不作特殊限定。
动作节点的数目可以是一个或多个,本申请实施例对此不作特殊限定。
可以理解的是,事件节点与动作节点之间可以预先建立订阅关系,由此可以使得事件节点在监测到事件后,可以将该第一信息发送给订阅的动作节点。其中,第一信息用于指示检测到的事件已满足目标场景的事件片段对应的规则。
示例性的,以动作节点1和动作节点2订阅事件节点1和事件节点2为例,当事件节点1监测到事件后,可以将第一信息发送给动作节点1和动作节点2。或者,当事件节点2监测到事件后,可以将第一信息发送给动作节点1和动作节点2。
步骤1203,响应于接收到的第一信息,动作节点执行对应的动作。
具体地,动作节点可以接收事件节点发送的第一信息。响应于接收到的第一信息,动作节点可以执行目标场景对应的动作。
图13为本申请提供的场景部署方法再一个实施例的流程示意图,在图13所示的实施例中,一个场景可以包括事件、条件和动作,由于一个场景的事件对应的片段、条件对应的片段及动作对应的片段可能部署在不同的节点中,因此,当事件节点中的事件发生后,可以将该事件通知给条件节点,当条件节点判断条件满足要求后,可以指示动作节点执行对应动作,具体包括以下步骤:
步骤1301,事件节点监测事件。
本步骤1301的实现方式具体可以参考上述实施例中步骤1201的相关描述,在此不再赘述。
步骤1302,响应于监测到的事件,事件节点将第一信息发送给条件节点。
具体地,该条件节点可以包括第一节点,或者,该条件节点可以包括第二节点,本申请实施例对此不作特殊限定。
条件节点的数目可以是一个或多个,本申请实施例对此不作特殊限定。
可以理解的是,事件节点与条件节点之间可以预先建立订阅关系,由此可以使得事件节点在监测到事件后,可以将第一信息发送给条件节点。
示例性的,以条件节点订阅事件节点1和事件节点2为例,当事件节点1监测到事件后,可以将第一信息发送给条件节点1。或者,当事件节点2监测到事件后,可以将第一信息发送给条件节点。
步骤1303,响应于接收到的第一信息,条件节点判断条件是否满足要求。
具体地,条件节点可以接收事件节点发送的第一信息。响应于接收到的第一信息,条件节点可以判断条件是否满足要求,例如,条件是否满足条件片段中设定的规则。其中,条件的定义具体可以参考上述实施例中的相关描述,在此不再赘述。
步骤1304,响应于判断条件满足要求,条件节点将第二信息发送给动作节点。
具体地,当条件节点确定条件满足要求后,可以将第二信息发送给动作节点。其中,第二信息用于指示条件已满足目标场景的条件片段对应的规则。
可以理解的是,若条件节点通过判断发现条件不满足要求,可以不发送第二信息给动作节点。
示例性的,以动作节点1和动作节点2订阅条件节点为例,,条件节点接收到第一信息后,可以判断条件是否满足要求,若条件节点判断条件满足要求,可以将第二信息发送给动作节点1和动作节点2;或者,若条件节点判断条件不满足要求,可以不将第二信息发送给动作节点1和动作节点2。
步骤1305,响应于接收到的第二信息,动作节点基于该第二信息执行对应的动作。
具体地,动作节点可以接收条件节点发送的第二信息。响应于接收到的第二信息,动作节点可以基于第二信息执行对应的动作。
在一些可选的实施例中,动作节点可以接收多个条件节点发送的第二信息,若动作节点执行动作的判断依据是订阅的所有条件节点均发送第二信息,则动作节点需要接收到订阅的所有条件节点发送的第二信息,动作节点才可以执行对应的动作;或者,
若动作节点执行动作的判断依据是订阅的所有条件节点中任意一个条件节点发送第二信息,则可以在接收到订阅的所有条件节点中任意一个条件节点发送的第二信息后,动作节点执行对应的动作。
示例性的,以动作节点订阅条件节点1和条件节点2为例,,假设动作片段执行的依据是动作节点需要接收到条件节点1和条件节点2的第二信息,才可以执行对应的动作,则动作节点需要等待接收条件节点1和条件节点2的第二信息,若动作节点只接收到条件节点1或条件节点2的第二信息,不可以执行对应的动作。或者,
假设动作片段执行的依据是动作节点接收到条件节点1或条件节点2的第二信息,就可以执行对应的动作,则动作节点在接收到条件节点1或条件节点2的第二信息后,就可以执行对应的动作,无需等待条件节点1和条件节点2的第二信息均接收成功。
图14为本申请智能家居场景的部署装置一个实施例的结构示意图,如图14所示,上述智能家居场景的部署装置1400应用于第一节点,智能家居场景的部署装置1400可以包括:获取模块1410及部署模块1420;其中,
获取模块1410,用于获取目标场景及智能家居网络的架构信息;
部署模块1420,用于基于所述智能家居网络的架构信息将所述目标场景部署在目标节点;
其中,所述目标节点包括所述第一节点和/或第二节点,所述第一节点为所述智能家居网络中的主机,所述第二节点包括所述智能家居网络中的分机和/或网关。
其中一种可能的实现方式中,所述部署模块1420还用于获取所述第一节点的历史负载信息和/或所述第二节点的历史负载信息;
基于所述第一节点的历史负载信息和/或所述第二节点的历史负载信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
其中一种可能的实现方式中,所述目标场景包括生效时刻,所述第一节点的历史负载信息包括所述第一节点中与所述生效时刻对应的负载信息,所述第二节点的历史负载信息包括所述第二节点中与所述生效时刻对应的负载信息。
其中一种可能的实现方式中,所述目标场景包括事件信息,条件信息和动作信息中的多个信息,所述部署模块1420还用于基于所述目标场景,获得多个片段,其中,所述多个片段中的任一个片段包括所述目标场景中的事件片段、条件片段或动作片段;
基于所述智能家居网络的架构信息将所述多个片段部署在目标节点。
其中一种可能的实现方式中,所述目标节点包括事件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述动作节点中部署所述目标场景的动作片段,所述智能家居场景的部署装置1400还包括:
执行模块1430,用于所述事件节点监测事件;
响应于监测到的事件,所述事件节点将第一信息发送给所述动作节点,使得所述动作节点基于所述第一信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则。
其中一种可能的实现方式中,所述目标节点包括事件节点、条件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述条件节点中部署所述目标场景的条件片段,所述动作节点中部署所述目标场景的动作片段,所述执行模块1430还用于所述事件节点监测事件;
响应于监测到的事件,所述事件节点将第一信息发送给所述条件节点,使得所述条件节点基于所述第一信息判断条件是否满足所述目标场景的条件片段对应的规则,并在所述条件满足所述目标场景的条件片段对应的规则后,所述条件节点将第二信息发送给所述动作节点,使得所述动作节点基于所述第二信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则,所述第二信息用于指示所述条件已满足所述目标场景的条件片段对应的规则。
其中一种可能的实现方式中,所述事件包括目标智能家居设备的状态变化事件,所述目标智能家居设备为所述目标场景中由所述事件节点控制的智能家居设备。
其中一种可能的实现方式中,所述部署模块1420还用于获取所述第一节点中已部署的场景信息;
基于所述第一节点中已部署的场景信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
图14所示实施例提供的智能家居场景的部署装置1400可用于执行本申请所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
应理解以上图14所示的智能家居场景的部署装置1400的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit;以下简称:ASIC),或,一个或多个微处理器(Digital Signal Processor;以下简称:DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array;以下简称:FPGA)等。再如,这些模块可以集成在一起,以片上系统(System-On-a-Chip;以下简称:SOC)的形式实现。
图15示例性的示出了电子设备1500的结构示意图。
上述电子设备1500可以包括:至少一个处理器;以及与上述处理器通信连接的至少一个存储器,其中:上述存储器存储有可被上述处理器执行的程序指令,处理器调用上述程序指令能够执行本文所示实施例提供的方法。
图15示出了适用于实现本文实施方式的示例性电子设备1500的框图。图15显示的电子设备1500仅仅是一个示例,不应对本文实施例的功能和使用范围带来任何限制。
如图15所示,电子设备1500的组件可以包括但不限于:一个或者多个处理器1510,存储器1520,连接不同系统组件(包括存储器1520和处理器1510)的通信总线1540以及通信接口1530。
通信总线1540表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备1500典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器1520可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。尽管图15中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read Only Memory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与通信总线1540相连。存储器1520可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本文各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器1520中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本文所描述的实施例中的功能和/或方法。
电子设备1500也可以与一个或多个外部设备(例如键盘、指向设备、显示器等)通信,还可与一个或者多个使得用户能与设备交互的设备通信,和/或与使得该设备能与一个或多个其它设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过通信接口1530进行。并且,电子设备1500还可以通过网络适配器(图15中未示出)与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide AreaNetwork;以下简称:WAN)和/或公共网络,例如因特网)通信,上述网络适配器可以通过通信总线1540与设备的其它模块通信。应当明白,尽管图15中未示出,可以结合电子设备1500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Drives;以下简称:RAID)系统、磁带驱动器以及数据备份存储系统等。
处理器1510通过运行存储在存储器1520中的程序,从而执行各种功能应用以及数据处理,例如实现本文实施例提供的方法。
可以理解的是,本文实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备1500的结构限定。在本文另一些实施例中,电子设备1500也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合
以上各实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units;以下简称:NPU)和图像信号处理器(Image Signal Processing;以下简称:ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请所示实施例提供的方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请所示实施例提供的方法。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
Claims (15)
1.一种智能家居场景的部署方法,其特征在于,应用于第一节点,所述方法包括:
获取目标场景及智能家居网络的架构信息;
基于所述智能家居网络的架构信息将所述目标场景部署在目标节点;
其中,所述目标节点包括所述第一节点和/或第二节点,所述第一节点为所述智能家居网络中的主机,所述第二节点包括所述智能家居网络中的分机和/或网关。
2.根据权利要求1所述的方法,其特征在于,所述基于所述智能家居网络的架构信息将所述目标场景部署在目标节点包括:
获取所述第一节点的历史负载信息和/或所述第二节点的历史负载信息;
基于所述第一节点的历史负载信息和/或所述第二节点的历史负载信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
3.根据权利要求2所述的方法,其特征在于,所述目标场景包括生效时刻,所述第一节点的历史负载信息包括所述第一节点中与所述生效时刻对应的负载信息,所述第二节点的历史负载信息包括所述第二节点中与所述生效时刻对应的负载信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述目标场景包括事件信息,条件信息和动作信息中的多个信息,所述基于所述智能家居网络的架构信息将所述目标场景部署在目标节点包括:
基于所述目标场景,获得多个片段,其中,所述多个片段中的任一个片段包括所述目标场景中的事件片段、条件片段或动作片段;
基于所述智能家居网络的架构信息将所述多个片段部署在目标节点。
5.根据权利要求4所述的方法,其特征在于,所述目标节点包括事件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述动作节点中部署所述目标场景的动作片段,所述方法还包括:
所述事件节点监测事件;
响应于监测到的事件,所述事件节点将第一信息发送给所述动作节点,使得所述动作节点基于所述第一信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则。
6.根据权利要求4所述的方法,其特征在于,所述目标节点包括事件节点、条件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述条件节点中部署所述目标场景的条件片段,所述动作节点中部署所述目标场景的动作片段,所述方法还包括:
所述事件节点监测事件;
响应于监测到的事件,所述事件节点将第一信息发送给所述条件节点,使得所述条件节点基于所述第一信息判断条件是否满足所述目标场景的条件片段对应的规则,并在所述条件满足所述目标场景的条件片段对应的规则后,所述条件节点将第二信息发送给所述动作节点,使得所述动作节点基于所述第二信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则,所述第二信息用于指示所述条件已满足所述目标场景的条件片段对应的规则。
7.根据权利要求5或6所述的方法,其特征在于,所述事件包括目标智能家居设备的状态变化事件,所述目标智能家居设备为所述目标场景中由所述事件节点控制的智能家居设备。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
获取所述第一节点中已部署的场景信息;
基于所述第一节点中已部署的场景信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
9.一种智能家居场景的部署系统,其特征在于,包括第一节点和第二节点,其中,
所述第一节点用于获取目标场景及智能家居网络的架构信息;基于所述智能家居网络的架构信息将所述目标场景部署在目标节点;其中,所述目标节点包括所述第一节点和/或第二节点,所述第一节点为所述智能家居网络中的主机,所述第二节点包括所述智能家居网络中的分机和/或网关。
10.根据权利要求9所述的系统,其特征在于,所述第一节点还用于获取所述第一节点的历史负载信息和/或所述第二节点的历史负载信息;基于所述第一节点的历史负载信息和/或所述第二节点的历史负载信息及所述智能家居网络的架构信息将所述目标场景部署在目标节点。
11.根据权利要求9或10所述的系统,其特征在于,所述目标场景包括事件信息,条件信息和动作信息中的多个信息,所述第一节点还用于基于所述目标场景,获得多个片段,其中,所述多个片段中的任一个片段包括所述目标场景中的事件片段、条件片段或动作片段;基于所述第一节点的历史负负载信息及所述智能家居网络的架构信息将所述多个片段部署在目标节点。
12.根据权利要求11所述的系统,其特征在于,所述目标节点包括事件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述动作节点中部署所述目标场景的动作片段,其中,
所述事件节点用于监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述动作节点;
所述动作节点用于基于所述第一信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则。
13.根据权利要求11所述的系统,其特征在于,所述目标节点包括事件节点、条件节点和动作节点,所述事件节点中部署所述目标场景的事件片段,所述条件节点中部署所述目标场景的条件片段,所述动作节点中部署所述目标场景的动作片段,其中,
所述事件节点用于监测事件;响应于监测到的事件,所述事件节点将第一信息发送给所述条件节点;
所述条件节点用于基于所述第一信息判断条件是否满足所述目标场景的条件片段对应的规则,并在所述条件满足所述目标场景的条件片段对应的规则后,所述条件节点将第二信息发送给所述动作节点;
所述动作节点用于基于所述第二信息执行所述目标场景的动作片段对应的动作;
其中,所述第一信息用于指示监测到的事件已满足所述目标场景的事件片段对应的规则,所述第二信息用于指示所述条件已满足所述目标场景的条件片段对应的规则。
14.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序;所述处理器用于运行所述计算机程序,实现如权利要求1-8任一项所述的智能家居场景的部署方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序在计算机上运行时,实现如权利要求1-8任一所述的智能家居场景的部署方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311164590.7A CN118264498A (zh) | 2023-09-08 | 2023-09-08 | 智能家居场景的部署方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311164590.7A CN118264498A (zh) | 2023-09-08 | 2023-09-08 | 智能家居场景的部署方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118264498A true CN118264498A (zh) | 2024-06-28 |
Family
ID=91606821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311164590.7A Pending CN118264498A (zh) | 2023-09-08 | 2023-09-08 | 智能家居场景的部署方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118264498A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106019957A (zh) * | 2016-05-31 | 2016-10-12 | Tcl集团股份有限公司 | 一种智能终端控制方法及系统 |
CN115524985A (zh) * | 2021-11-29 | 2022-12-27 | 青岛海尔智能家电科技有限公司 | 用于智能家居系统控制的方法、装置、系统及存储介质 |
CN116016584A (zh) * | 2022-12-05 | 2023-04-25 | 浪潮通用软件有限公司 | 一种基于物联网平台的设备数据流转方法、设备及介质 |
CN116339157A (zh) * | 2021-12-23 | 2023-06-27 | 美的集团股份有限公司 | 分布式场景联动的场景规则下发方法、装置及电子设备 |
-
2023
- 2023-09-08 CN CN202311164590.7A patent/CN118264498A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106019957A (zh) * | 2016-05-31 | 2016-10-12 | Tcl集团股份有限公司 | 一种智能终端控制方法及系统 |
CN115524985A (zh) * | 2021-11-29 | 2022-12-27 | 青岛海尔智能家电科技有限公司 | 用于智能家居系统控制的方法、装置、系统及存储介质 |
CN116339157A (zh) * | 2021-12-23 | 2023-06-27 | 美的集团股份有限公司 | 分布式场景联动的场景规则下发方法、装置及电子设备 |
CN116016584A (zh) * | 2022-12-05 | 2023-04-25 | 浪潮通用软件有限公司 | 一种基于物联网平台的设备数据流转方法、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI598744B (zh) | 雲端資源之管理系統及其管理方法 | |
CN107196865B (zh) | 一种负载感知的自适应阈值过载迁移方法 | |
US10033570B2 (en) | Distributed map reduce network | |
US8296760B2 (en) | Migrating a virtual machine from a first physical machine in response to receiving a command to lower a power mode of the first physical machine | |
EP3361703B1 (en) | Load balancing method, related device and system | |
JP5937221B2 (ja) | 通信ネットワークのためのクラウドコンピューティングエンハンストゲートウェイ | |
DE102020132078A1 (de) | Ressourcenzuteilung basierend auf anwendbarem service level agreement | |
CN111464355A (zh) | Kubernetes容器集群的伸缩容控制方法、装置和网络设备 | |
US8554919B2 (en) | Automatic preemption in multiple computer systems | |
US10560372B1 (en) | Request routing based on server software versions | |
US20050022185A1 (en) | Systems and methods for monitoring resource utilization and application performance | |
CN109981405B (zh) | 节点管理方法、装置及计算机可读存储介质 | |
EP3163446A1 (en) | Data storage method and data storage management server | |
CN109189552B (zh) | 虚拟网络功能扩容与缩容方法及系统 | |
CN107317764B (zh) | 流量负载均衡方法、系统、装置和计算机可读存储介质 | |
CN109739614A (zh) | 虚拟机新建方法、装置及设备 | |
CN114024747A (zh) | 基于软件定义nfv的安全服务链编排部署方法及系统 | |
CN107479944A (zh) | 混合云模式下的虚拟机内存自适应热迁移调度方法及系统 | |
CN111418187A (zh) | 云网络中的可伸缩统计和分析机制 | |
CN112511649B (zh) | 多接入边缘计算方法及设备 | |
CN114244642A (zh) | 设备的控制方法及其装置、计算机可读存储介质、处理器 | |
CN118264498A (zh) | 智能家居场景的部署方法、系统、电子设备及存储介质 | |
CN102546652B (zh) | 一种服务器负载平衡系统及方法 | |
CN109697115B (zh) | 用于调度应用的方法、装置以及计算机可读介质 | |
CN116048422A (zh) | 数据处理方法、电子设备及存储介质 |
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 |