CN112540540A - 动作资源的创建方法、执行方法、电子装置和存储介质 - Google Patents
动作资源的创建方法、执行方法、电子装置和存储介质 Download PDFInfo
- Publication number
- CN112540540A CN112540540A CN201910893658.2A CN201910893658A CN112540540A CN 112540540 A CN112540540 A CN 112540540A CN 201910893658 A CN201910893658 A CN 201910893658A CN 112540540 A CN112540540 A CN 112540540A
- Authority
- CN
- China
- Prior art keywords
- action
- attribute
- resource
- state
- value
- 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
- 230000009471 action Effects 0.000 title claims abstract description 1440
- 238000000034 method Methods 0.000 title claims abstract description 142
- 230000001419 dependent effect Effects 0.000 claims description 280
- 230000001960 triggered effect Effects 0.000 claims description 107
- 230000008859 change Effects 0.000 claims description 10
- 230000002441 reversible effect Effects 0.000 claims description 8
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 39
- 229910002091 carbon monoxide Inorganic materials 0.000 description 39
- 238000010586 diagram Methods 0.000 description 32
- 238000007726 management method Methods 0.000 description 28
- 230000000875 corresponding effect Effects 0.000 description 22
- 238000001816 cooling Methods 0.000 description 19
- 238000012806 monitoring device Methods 0.000 description 19
- 238000012544 monitoring process Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 11
- 238000004378 air conditioning Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012795 verification Methods 0.000 description 9
- 239000000779 smoke Substances 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 238000004887 air purification Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000000746 purification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000009423 ventilation Methods 0.000 description 1
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/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5055—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/10—Scheduling measurement reports ; Arrangements for measurement reports
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/26—Pc applications
- G05B2219/2642—Domotique, domestic, home control, automation, smart house
-
- 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]
Abstract
一种动作资源的创建方法、动作的执行方法、电子装置和计算机可读存储介质。动作资源的创建方法包括:接收第一创建请求,其中,第一创建请求包括第一目标资源;根据第一创建请求创建所述第一动作资源,其中,第一动作资源为用于针对第一目标资源触发第一动作的资源,其中,创建第一动作资源包括:创建用于第一动作资源的第一动作状态属性,其中,第一动作状态属性表示第一动作的状态。
Description
技术领域
本公开的实施例涉及一种动作资源的创建方法、动作的执行方法、电子装置和计算机可读存储介质。
背景技术
随着物联网技术在各个应用领域的快速发展,越来越多的设备连接至物联网,出现了诸如智能家居、智能交通、智慧健康等各种新的应用领域。万物互联是物联网发展的趋势。在物联网系统中,作为应用程序的应用实体可以在作为服务平台的通用服务实体上部署服务。在将应用程序的服务部署到服务平台后,实现该应用程序的服务的过程可以无需应用程序的参与,而是可以直接在服务平台上实现该服务的操作。服务平台可以为不同厂商的多个不同的应用程序提供公共服务功能,通过服务平台实现多个不同应用程序之间的网络连接,从而实现万物互联。
发明内容
本公开至少一个实施例提供一种动作资源的创建方法,包括:接收第一创建请求,其中,所述第一创建请求包括第一目标资源;根据所述第一创建请求创建所述第一动作资源,其中,所述第一动作资源为用于针对所述第一目标资源触发第一动作的资源,其中,创建所述第一动作资源包括:创建用于所述第一动作资源的第一动作状态属性,其中,所述第一动作状态属性表示所述第一动作的状态。
例如,在本公开一实施例提供的方法中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一动作时间属性,其中,所述第一动作时间属性用于指示与所述第一动作相关的时间参数。
例如,本公开一实施例提供的方法还包括:接收第二创建请求,其中,所述第二创建请求包括第二目标资源;根据所述第二创建请求创建所述第二动作资源,其中,所述第二动作资源为用于针对所述第二目标资源触发第二动作的资源,在满足第二触发条件的情况下,针对所述第二目标资源触发所述第二动作,其中,创建所述第二动作资源包括:创建用于所述第二动作资源的第二动作状态属性,其中,所述第二动作状态属性表示所述第二动作的状态。
例如,在本公开一实施例提供的方法中,创建所述第二动作资源还包括:创建用于所述第二动作资源的第二动作时间属性,其中,所述第二动作时间属性用于指示与所述第二动作相关的时间参数。
例如,在本公开一实施例提供的方法中,所述第一目标资源和所述第二目标资源为同一个目标资源,所述第一动作和所述第二动作彼此冲突。
例如,在本公开一实施例提供的方法中,所述第一创建请求还包括依赖资源信息,创建所述第一动作资源还包括:根据所述依赖资源信息,创建用于所述第一动作资源的第一依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,在同时满足第一触发条件和所述第一依赖条件的情况下,针对所述第一目标资源触发所述第一动作;或者根据所述依赖资源信息,创建用于所述第一动作资源的第二依赖子资源,其中,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足第一触发条件和所述第二依赖条件的情况下,针对所述第一目标资源触发所述第一动作;或者根据所述依赖资源信息,创建用于所述第一动作资源的第一依赖子资源和第二依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第二依赖子资源包括第二依赖条件,所述第一依赖条件与所述第二动作状态属性相关,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第一依赖条件和所述第二依赖条件至少之一和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作。
例如,在本公开一实施例提供的方法中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一相反动作属性和第一状态控制属性,创建所述第二动作资源还包括:创建用于所述第二动作资源的第二相反动作属性和第二状态控制属性,其中,所述第一相反动作属性表示所述第二动作资源的标识码,且所述第二相反动作属性表示所述第一动作资源的标识码,所述第一状态控制属性表示是否改变所述第一动作状态属性的属性值或所述第二动作状态属性的属性值,所述第二状态控制属性表示是否改变所述第二动作状态属性的属性值或所述第一动作状态属性的属性值。
例如,在本公开一实施例提供的方法中,所述第一依赖条件包括所述第二动作状态属性的属性值和第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
例如,在本公开一实施例提供的方法中,所述第一创建请求还包括冲突策略资源信息,创建所述第一动作资源还包括:基于所述冲突策略资源信息,创建用于所述第一动作资源的冲突策略子资源。
例如,在本公开一实施例提供的方法中,创建所述第一动作资源还包括:基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第一依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,在同时满足所述第一依赖条件和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作;或者创建所述第一动作资源还包括:基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第二依赖子资源,其中,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第二依赖条件和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作;或者创建所述第一动作资源还包括:基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第一依赖子资源和第二依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第一依赖条件和所述第二依赖条件至少之一和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作。
例如,在本公开一实施例提供的方法中,创建用于所述第一动作资源的冲突策略子资源包括:创建用于所述第一动作资源的冲突目标资源标识属性和冲突执行方法属性,其中,所述冲突目标资源标识属性表示所述第一目标资源的标识码,所述冲突执行方法属性表示与所述第一动作相冲突的动作,满足所述匹配条件包括:所述第二目标资源的标识码和所述冲突目标资源标识属性相同,所述第二动作和所述冲突执行方法属性表示的动作相同。
例如,在本公开一实施例提供的方法中,创建用于所述第一动作资源的冲突策略子资源还包括:创建用于所述第一动作资源的冲突状态属性,其中,所述冲突状态属性的属性值包括第一设定值或第二设定值。
例如,在本公开一实施例提供的方法中,所述冲突状态属性的属性值为所述第一设定值,所述第一依赖条件包括所述第二动作状态属性的属性值和所述第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,所述第二动作资源还包括第二动作时间属性,所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
例如,在本公开一实施例提供的方法中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一状态自动控制时间属性,其中,所述第一动作状态属性的属性值包括第一设定值和第二设定值,所述第一设定值和所述第二设定值彼此相反,所述第一状态自动控制时间表示:基于所述第一动作状态属性的属性值为所述第一设定值,且所述第一动作时间属性的属性值大于或等于所述第一状态自动控制时间属性的属性值,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
例如,在本公开一实施例提供的方法中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一状态自动控制时间属性,其中,所述第一动作状态属性的属性值包括第一设定值和第二设定值,所述第一设定值和所述第二设定值彼此相反,所述第一状态自动控制时间表示:基于所述第一动作状态属性的属性值为所述第一设定值,且所述第一状态自动控制时间属性的属性值等于0,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
本公开至少一个实施例还提供一种动作的执行方法,包括:确定第一动作资源,其中,所述第一动作资源为用于针对第一目标资源触发第一动作的资源,所述第一动作资源包括第一动作状态属性,所述第一动作状态属性表示所述第一动作的状态;针对所述第一目标资源触发所述第一动作;在触发所述第一动作后,设置所述第一动作状态属性的属性值为第一设定值。
例如,在本公开一实施例提供的执行方法中,针对所述第一目标资源触发所述第一动作包括:接收第一数据资源;基于所述第一数据资源满足第一触发条件,针对所述第一目标资源触发所述第一动作。
例如,在本公开一实施例提供的执行方法中,所述第一动作资源还包括第一动作时间属性,所述第一动作时间属性用于指示与所述第一动作相关的时间参数,所述执行方法还包括:在触发所述第一动作后,设置所述第一动作时间属性的属性值。
例如,在本公开一实施例提供的执行方法中,所述第一动作资源还包括第一状态自动控制时间属性,所述执行方法还包括:获取所述第一动作时间属性的属性值;判断所述第一动作时间属性的属性值是否大于或等于所述第一状态自动控制时间属性的属性值,且在所述第一动作时间属性的属性值大于或等于所述第一状态自动控制时间属性的属性值时,将所述第一动作状态属性的属性值从所述第一设定值变为第二设定值,其中,所述第一设定值和所述第二设定值彼此相反。
例如,在本公开一实施例提供的执行方法中,所述第一动作资源还包括第一依赖子资源,所述第一依赖子资源包括第一依赖条件,针对所述第一目标资源触发所述第一动作包括:接收第一数据资源;获取第二动作资源的第二动作状态属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作状态属性,所述第二动作状态属性表示所述第二动作的状态;基于所述第一数据资源满足第一触发条件且所述第二动作状态属性的属性值满足所述第一依赖条件,针对所述第一目标资源触发所述第一动作;或者所述第一动作资源还包括第二依赖子资源,所述第二依赖子资源包括第二依赖条件,针对所述第一目标资源触发所述第一动作包括:接收第一数据资源;获取第二动作资源的第二动作时间属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作时间属性,所述第二动作时间属性用于指示与所述第二动作相关的时间参数;基于所述第一数据资源满足第一触发条件且所述第二动作时间属性的属性值满足所述第二依赖条件,针对所述第一目标资源触发所述第一动作。
例如,在本公开一实施例提供的执行方法中,所述第一动作资源还包括第一依赖子资源和第二依赖子资源,所述第一依赖子资源包括第一依赖条件,所述第二依赖子资源包括第二依赖条件,针对所述第一目标资源触发所述第一动作包括:接收第一数据资源;获取第二动作资源的第二动作状态属性和第二动作时间属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作状态属性和所述第二动作时间属性,所述第二动作状态属性表示所述第二动作的状态,所述第二动作时间属性用于指示与所述第二动作相关的时间参数;基于所述第一数据资源满足第一触发条件且所述第二动作状态属性的属性值满足所述第一依赖条件和/或所述第二动作时间属性的属性值满足所述第二依赖条件的情况下,针对所述第一目标资源触发所述第一动作。
例如,在本公开一实施例提供的执行方法中,所述第一依赖条件包括所述第二动作状态属性的属性值和所述第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
例如,在本公开一实施例提供的执行方法中,所述第一目标资源和所述第二目标资源为同一个目标资源,所述第一动作和所述第二动作彼此冲突。
例如,本公开一实施例提供的执行方法还包括:在触发所述第一动作后,设置所述第二动作状态属性的属性值为第二设定值,其中,所述第一设定值和所述第二设定值彼此相反;确定所述第二动作资源;接收第二数据资源;基于所述第二数据资源满足第二触发条件,针对所述第二目标资源触发所述第二动作,且在触发所述第二动作后,将所述第二动作状态属性的属性值从所述第二设定值变为所述第一设定值,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
例如,在本公开一实施例提供的执行方法中,所述第一动作资源还包括第一相反动作属性和第一状态控制属性,所述第二动作资源还包括第二相反动作属性和第二状态控制属性,所述第一相反动作属性表示所述第二动作资源的标识码,且所述第二相反动作属性表示所述第一动作资源的标识码,在执行设置所述第二动作状态属性的属性值为第二设定值的操作之前,所述执行方法还包括:判断所述第一状态控制属性的属性值是否为真,在确定所述第一状态控制属性的属性值为真的情况下,执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在确定所述第一状态控制属性的属性值不为真的情况下,不执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作之前,所述执行方法还包括:判断所述第二状态控制属性的属性值是否为真,在确定所述第二状态控制属性的属性值为真的情况下,执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作,在确定所述第二状态控制属性的属性值不为真的情况下,不执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作;或者在执行设置所述第二动作状态属性的属性值为第二设定值的操作之前,所述执行方法还包括:判断所述第二状态控制属性的属性值是否为真,在确定所述第二状态控制属性的属性值为真的情况下,执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在确定所述第二状态控制属性的属性值不为真的情况下,不执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作之前,所述执行方法还包括:判断所述第一状态控制属性的属性值是否为真,在确定所述第一状态控制属性的属性值为真的情况下,执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作,在确定所述第一状态控制属性的属性值不为真的情况下,不执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作。
例如,在本公开一实施例提供的执行方法还包括:在触发所述第二动作后,设置所述第二动作时间属性的属性值。
例如,在本公开一实施例提供的执行方法中,设置所述第一动作时间属性的属性值包括:在触发所述第一动作后,建立动作执行计时器以开始计时,将所述动作执行计时器的时间值作为所述第一动作时间属性的属性值。
本公开至少一个实施例还提供一种电子装置,包括:存储器,用于非暂时性存储计算机可读指令;以及处理器,用于运行所述计算机可读指令,其中,所述计算机可读指令被所述处理器运行时执行根据上述任一实施例所述的创建方法。
本公开至少一个实施例还提供一种电子装置,包括:存储器,用于非暂时性存储计算机可读指令;以及处理器,用于运行所述计算机可读指令,其中,所述计算机可读指令被所述处理器运行时,使得所述处理器执行根据上述任一实施例所述的执行方法。
本公开至少一个实施例还提供一种计算机可读存储介质,非暂时性地存储计算机可读指令,当所述计算机可读指令由计算机执行时,使得所述计算机执行根据上述任一实施例所述的创建方法或者执行根据上述任一实施例所述的执行方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
图1A公开了根据本公开的物联网示意性的架构图;
图1B示出了根据本公开的实施例的服务器/客户端设备的示意图;
图1C示出了根据本公开一些实施例提供的动作资源的一个示例的示意图;
图2为本公开一些实施例提供的一种物联网环境中的智能家居场景的示意图;
图3A示出了本公开一些实施例提供的一种动作资源的创建方法的流程图;
图3B示出了本公开一些实施例提供的另一种动作资源的创建方法的流程图;
图4A示出了本公开一些实施例提供的一种第一动作资源的示意图;
图4B示出了本公开一些实施例提供的一种第二动作资源的示意图;
图5示出了根据本公开的实施例的创建动作资源的一种示意性的示例;
图6A示出了本公开一些实施例提供的另一种第一动作资源的示意图;
图6B示出了本公开一些实施例提供的另一种第二动作资源的示意图;
图7示出了本公开一些实施例提供的又一种第一动作资源的示意图;
图8A示出了本公开一些实施例提供的再一种第一动作资源的示意图;
图8B示出了本公开一些实施例提供的一种第一动作资源中的冲突策略子资源的示意图;
图9示出了本公开一些实施例提供的一种动作的执行方法的示意图;
图10示出了本公开一些实施例提供的一种动作资源的创建和执行过程的示意图;
图11示出了本公开一些实施例提供的针对目标资源进行触发操作的示意性的一个示例的示意图;
图12为本公开一些实施例提供的一种电子装置的示意图;以及
图13为本公开一些实施例提供的一种计算机可读存储介质的示意图。
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了部分已知功能和已知部件的详细说明。
物联网可以作为互联网的一种延伸,它包括互联网及互联网上所有的资源,兼容互联网所有的应用。物联网利用局部网络或互联网等通信技术把传感器、控制器、机器、人员和物品等通过新的方式联接在一起,形成人与物、物与物之间的连接。
随着物联网技术的发展,越来越多的终端设备(如一氧化碳检测器、烟雾报警器、火灾警报器、空气检测器等)接入到物联网平台。物联网平台例如可以实施为通用服务实体(Common Service Entity,CSE),终端设备可以通过向通用服务实体发送注册信息的方式来与通用服务实体连接,通用服务实体对接入到该通用服务实体的终端设备进行管理。终端设备可以表示为应用实体(Application Entity,AE),接入到通用服务实体的应用实体可以与该通用服务实体进行数据传输和信息交互等操作。
需要注意的是,本文中所描述的应用实体可以是物联网终端设备,或者也可以是设备中的软件模块等。应用实体、通用服务实体是逻辑实体,物理设备包括逻辑实体,简单终端设备可以只包括应用实体,复杂终端设备可包括应用实体和通用服务实体,服务器至少包括通用服务实体,可以包括应用实体。终端设备包括的通用服务实体和服务器包括的通用服务实体的区别在于功能的差异,服务器的通用服务实体包括的功能更多,如包括设备管理等功能。
图1A公开了根据本公开的物联网示意性的架构图。如图1A所示,各种终端的客户端设备接入网络,并且通过网络接入到通用服务层,而通用服务层支持各种应用,从而形成了终端+网络+应用的架构。例如,在智能家居领域,各种家用设备可以利用局域网(LAN)接入通用服务层,这样的局域网接入可以采用诸如无线或者有线方式。可选地,局域网可以是个域网(PAN),例如以无线个域网(WPAN)为例,可以采用Bluetooth、IrDA、Home RF、ZigBee、或UWB(Ultra-Wideband Radio)等各种技术来实现接入。
在本公开中,所描述的实体,例如应用实体AE、通用服务实体CSE以及数据等,都可以通过资源进行表示。资源可以具有唯一的标识,其包括属性,并且根据情况还可以包括子资源,其中属性用来存储资源相关的信息,子资源是资源的下一级资源,资源包括指向子资源的索引。
例如,根据不同的使用场景,在不同的情况下可以为同一个目标资源(即目标对象)设置多个不同的动作资源。针对同一个目标资源设置的动作资源的触发条件可以是不同的,针对该目标资源设置的动作可以是相同或不同。下面的图1C中示出的动作资源仅是一种示意性的示例,事实上,本领域技术人员可以根据实际情况设置任何动作触发事件。在一些实施例中,动作触发事件可以被划分为位置事件(设置某个位置产生事件)、时间事件(设置某个时间产生事件)、操作事件(设置某个操作产生事件)以及用户事件(例如,感知某个用户存在)等。
例如,在一些示例中,针对小灯的操作可以包括开启和关闭。例如,当检测到夜间或睡眠期间主人起床时,可以开启小灯。当检测到梦后或睡眠期间躺床上,可以关闭小灯。又例如,当检测到晴天、煤气泄露或烟雾报警时,可以开启窗户。当检测到阴天、雨天或雪天时,可以关闭窗户。
在一些实施例中,动作资源也可以针对多个目标资源。例如,当位置传感器检测到一定范围内有人存在时,可以控制多个目标资源(例如空调、空气净化器、灯等)开启。
在另一些实施例中,动作资源也可以为针对目标资源的动作设置多个触发条件。例如,当温度传感器检测到温度高于或低于预设的温度阈值,并且人体感应器检测到房间里有人的情况下,可以控制空调开启。
在复杂使用环境(例如,智能家居场景等)中,为了使得用户的使用体验更好,需要针对各个应用设备设置多个不同的动作资源,以使得在不同的使用环境下,各个应用设备都能够执行适当的功能。因此,在智能家居场景中,针对同一目标资源可能存在多个不同的动作资源。从而,可能存在同时或先后针对同一目标资源的互相冲突的动作指令的情形。例如,在阴雨天气的条件下,服务器将控制窗户关闭,然而,如果同时烟雾报警器检测到空气中烟雾含量超标,那么服务器将控制窗户开启。在这种情况下,如果先检测到空气中烟雾含量超标,服务器将控制窗户开启,如果之后又检测到下雨,那么服务器又将将控制窗户关闭。
可以理解的是,如果烟雾报警器检测到空气中烟雾含量超标,那意味着可能房间内可能出现例如着火这样的紧急情况。在这种情况下,如果在服务器因为检测到下雨而控制窗户关闭,那么可能给房间里的人造成危险。此外,如果针对同一目标资源的两个不同动作的触发条件被同时满足,服务器将很难实现对目标资源的有效控制。
图1B示出了根据本公开的实施例的服务器/客户端设备的示意图。在物联网系统中,可以利用服务器实现上述服务平台,利用客户端设备实现上述的终端设备。
图1B所示的计算机设备可以用于实现本公开中披露的服务器设备或客户端设备。这类计算机可以包括个人电脑、笔记本电脑、平板电脑、手机、个人数码助理(personaldigital assistance,PDA)、智能眼镜、智能手表、智能指环、智能头盔及任何智能便携设备或可穿戴设备。在一些实施例中,利用图1B中示出的计算机设备的架构也可以实现物联网系统中各种智能家居的终端设备,例如智能开关、智能网关、智能电饭煲、智能净化器等。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。这种计算机设备可以是一个通用目的的计算机设备,或一个有特定目的的计算机设备。两种计算机设备都可以被用于实现本实施例中的服务器设备或终端的客户端设备。计算机系统可以实施当前描述的提供物联网通信所需要的信息的任何组件。例如:计算机系统能够被计算机设备通过其硬件设备、软件程序、固件以及它们的组合所实现。为了方便起见,图1B中只绘制了一台计算机设备,但是本实施例所描述的提供物联网通信所需要的信息的相关计算机功能是可以以分布的方式、由一组相似的平台所实施的,分散计算机系统的处理负荷。
如图1B所示,计算机系统可以包括通信端口250,与之相连的是实现数据通信的网络。计算机系统还可以包括一个处理器组220,用于执行程序指令。处理器组220可以由至少一个处理器(例如,CPU)组成。计算机系统可以包括一个内部通信总线210。计算机系统可以包括不同形式的程序储存单元以及数据储存单元,例如硬盘270、只读存储器(ROM)230、随机存取存储器(RAM)240,能够用于存储计算机处理和/或通信使用的各种数据文件,以及处理器组220所执行的可能的程序指令。计算机系统还可以包括一个输入/输出组件260,支持计算机系统与其他组件(例如,用户界面280)之间的输入/输出数据流。计算机系统也可以通过通信端口250发送和接收信息及数据。
在一些实施例中,上述计算机系统可以用于组成物联网通信系统中的服务器。物联网通信系统的服务器可以是一个服务器硬件设备,或一个服务器群组。一个服务器群组内的各个服务器可以通过有线的或无线的网络进行连接。一个服务器群组可以是集中式的,例如数据中心。一个服务器群组也可以是分布式的,例如一个分布式系统。
利用图1B中提供的计算系统可以实现本公开中涉及的客户端应用实体AE、客户端通用服务实体CSE、服务器端应用实体AE和/或服务器端通用服务实体CSE。
图1C示出了根据本公开一些实施例提供的动作资源(<action>)的一个示例的示意图。
以oneM2M协议架构为例,实体可以是M2M(Machine to Machine)设备、M2M网关、M2M应用层等。在oneM2M架构下,资源是可以唯一寻址的,为表示这种资源,可以指定资源的结构。如图1C所示,动作资源可以包括至少一个属性和/或子资源。例如,动作资源<action>可以包括:指示该动作资源的优先级的动作优先级属性(actionPriority)、表示该动作资源的待检测对象的主体资源地址属性(actionSubjectResource)、表示该动作资源的待检测对象的主体资源标识属性(SubjectResourceID)、表示该动作资源的动作触发条件的评估规则属性(evalCriteria)、表示该动作资源的触发模式的触发模式属性(evalMode)、表示该动作资源的触发模式的触发模式控制属性(evalControlParam)、表示该动作资源的控制目标的目标标识属性(objectResourceID)、表示该动作资源的动作方式的动作属性(activePrimitive)、表示该动作资源的动作参数的输入属性(input)、表示该动作资源的动作结果的输出资源标识属性(outputResourceID)、表示该动作资源的动作结果的动作结果属性(actionResult)、以及表示该动作资源所执行的动作的依赖条件的依赖子资源(<dependency>)。例如,动作资源还可以包括多个依赖子资源。
需要说明的是,动作优先级表示由同一触发条件触发的多个动作资源之间的优先级。例如,当空气中的一氧化碳浓度大于预设阈值时,可以控制窗户和门均开启,动作优先级表示控制窗户开启对应的动作资源和控制门开启对应的动作资源之间的优先级,即先后顺序,例如,当以窗户作为目标资源的动作资源的动作优先级优先于以门作为目标资源的动作资源的动作优先级,则当空气中的一氧化碳浓度大于预设阈值时,首先,控制窗户开启,然后,控制门开启。
例如,该动作资源的主体资源属性可以以预定义的方式进行更新。例如,注册在服务器上的应用实体可以以定期、实时或响应于预设事件的发生的方式向服务器发送信息,以更新主体资源属性。当从应用实体接收的信息使得动作资源的评估规则满足该动作资源的动作触发条件时,可以针对该动作资源的目标标识属性对应的目标资源执行预设的动作。在本文中,主体资源属性也可以简称为主体资源。
在一些实施例中,评估规则属性可以包括至少一个触发条件,依赖子资源可以包括至少一个依赖条件。图1C示出的动作资源用于在满足评估规则属性中包含的触发条件以及依赖子资源中包括的依赖条件的情况下,可以针对目标标识属性对应的目标资源执行预设的动作,即在动作属性中定义的动作。
尽管本公开中示出了实现动作资源的一种示意性的示例,然而,本领域技术人员可以理解,根据实际情况不同,也可以利用其他方式设置上述动作资源。
图2为本公开一些实施例提供的一种物联网环境中的智能家居场景的示意图。
例如,在一个示例中,如图2所示,以智能家居场景为例,在该智能家居场景中设置有三个应用实体,分别为门窗控制装置、煤气监测装置(例如,由智能安防提供商提供)和空气监测净化装置(例如,由智能家电提供商提供)。可以理解的是,当在智能家居的物联网环境中存在多个智能控制设备的情况下,应用实体可以对同一个目标资源(即目标对象)部署多个服务,即针对同一个目标资源创建多个动作资源,多个动作资源的针对该目标资源执行的多个动作和该多个动作的触发条件可以是不同的。
如图2所示,应用实体对应设置在应用层,通用服务实体设置在服务层(即物联网平台)。煤气监测装置和空气监测净化装置通过服务层提供的动作均作用于门窗控制装置上。
煤气监测装置可以在通用服务实体上注册动作资源1,该动作资源1表示:煤气监测装置通过一氧化碳传感器侦测空气中的一氧化碳浓度,当一氧化碳浓度超过预设阈值(例如20%),则通用服务实体可以触发门窗控制装置开启窗户(或门)以进行通风,降低可燃气体(例如,一氧化碳)的浓度。
空气监测净化装置可以在通用服务实体上注册动作资源2,该动作资源2表示:空气监测净化装置使用空气质量监测传感器(例如雾霾传感器)侦测空气中的PM2.5(雾霾)的浓度,当PM2.5的浓度超过预设阈值,则通用服务实体可以触发门窗控制装置关闭窗户(或门)进行封闭,然后启动空气净化装置,以实现空气中的PM2.5的浓度的降低。
上述两个动作资源都是涉及控制同一个执行单元(即门窗控制装置),然而动作资源1控制门窗控制装置执行开窗操作,动作资源2控制门窗控制装置执行关窗操作,从而动作资源1和动作资源2就有可能产生冲突。这里,冲突可以包括:第一,两个动作资源需要在同一时刻触发,且控制门窗控制装置执行的两个操作是相反的;第二,另一个动作资源在一个动作资源后面触发,但是该另一个动作资源实际所产生的具体效果和一个动作资源需要达到的效果相反。
本公开的实施例提供一种动作资源的创建方法、动作的执行方法、电子装置和计算机可读存储介质,在动作资源的创建方法中,通过在动作资源中增加动作状态属性,从而基于与动作状态属性的相关的依赖条件,则可以解决动作资源的冲突问题。需要说明的是,在本公开的实施例中,动作资源的创建方法和动作的执行方法均例如由通用服务实体执行。
本公开中使用了流程图用来说明根据本公开的实施例的方法的步骤。应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步。
图3A示出了本公开一些实施例提供的一种动作资源的创建方法的流程图,图3B示出了本公开一些实施例提供的另一种动作资源的创建方法的流程图。例如,以智能家居的使用环境为例,通用服务实体可以实现为家庭管理服务器,应用实体(应用程序)可以实现为家庭管理应用(例如、一氧化碳传感器、温度传感器、门窗传感器等)。
例如,如图3A所示,在一些实施例中,动作资源的创建方法可以包括:
S101:接收第一创建请求,其中,第一创建请求包括第一目标资源;
S102:根据第一创建请求创建第一动作资源,其中,第一动作资源为用于针对第一目标资源触发第一动作的资源。
例如,第一创建请求用于请求通用服务实体创建第一动作资源。
例如,第一目标资源可以为窗户、门、空气净化器、灯、空调等。
需要说明的是,在本公开提供的一些实施例中,以针对窗户执行的操作为例,即第一目标资源为窗户,通用服务实体可以向窗户控制器发送通知以控制窗户的开启和关闭。
例如,第一动作可以包括开启操作、关闭操作、调亮灯光操作、调暗灯光操作、调高温度操作、调低温度操作等任意操作。需要说明的是,在本公开中,若第一目标资源是空调时,若需要执行开启空调制冷的动作时,第一动作可以包括开启空调的操作和将空调设置为制冷模式的操作,也就是说,在本公开中,动作资源对应的动作可以包括针对目标资源的多个操作,从而最终达到预设的效果。例如,上述示例中,第一动作可以包括两个操作,即开启空调的操作和将空调设置为制冷模式的操作,从而实现开启空调制冷的效果。
例如,在满足第一触发条件的情况下,针对第一目标资源触发第一动作,第一触发条件可以根据实际情况设定,例如,在一些示例中,第一触发条件可以为一氧化碳的浓度高于预设阈值、PM2.5浓度超过预设阈值、室内灯光亮度大于或小于预设阈值、在一定范围(例如,卧室内、客厅内等)内检测到用户、温度高于/低于预设温度阈值等各种条件。
例如,第一创建请求可以由应用实体(例如,空气监测净化装置)向通用服务实体发送,又或者由用户在通用服务实体针对该应用实体创建。
例如,当应用实体希望在服务平台上部署一个动作时,可以向服务平台发送这个动作的动作资源的创建请求,从而使得部署在服务平台上的通用服务实体可以创建该动作资源。例如,在一些示例中,第一动作资源为用于针对窗户(即第一目标资源)触发关闭窗户(即第一动作)的资源,例如,第一动作资源表示“当检测到空气中的PM2.5浓度高于预设阈值A(例如,100或150等)时,针对窗户执行关闭操作”的资源,第一触发条件为PM2.5浓度高于预设阈值A,第一目标资源为窗户,第一动作为关闭窗户。预设阈值A可以根据实际应用需求设置。例如,应用实体可以向通用服务实体(例如家庭管理服务器)发送第一创建请求,在通用服务实体通过应用实体的身份校验后,在通用服务实体上部署第一动作资源:当检测到空气中的PM2.5浓度高于预设阈值A时,针对窗户执行关闭操作。例如,空气中PM2.5浓度可以由注册到服务平台的空气质量监测传感器检测,针对窗户的关闭操作可以由注册到服务平台的窗户控制器执行。
例如,在步骤S102中,如图3A所示,创建第一动作资源包括S1021:创建用于第一动作资源的第一动作状态属性。
图4A示出了本公开一些实施例提供的一种第一动作资源的示意图。
例如,如图4A所示,第一动作资源(<action1>)可以包括第一动作状态属性(actionStatus)。第一动作状态属性表示第一动作的状态。第一动作状态属性是状态值。
例如,在步骤S102中,第一动作状态属性的属性值包括第一设定值和第二设定值,第一动作的状态包括有效(active)或无效(inactive)。例如,当第一动作状态属性的属性值为第一设定值时,第一动作的状态为有效,即第一设定值为active,表示该第一动作被触发执行;当第一动作状态属性的属性值为第二设定值时,第一动作的状态为无效,即第二设定值为inactive,表示该第一动作未被触发执行。例如,当第一动作资源创建后,但是并未触发第一动作时,第一动作状态属性的属性值为第二设定值,即第一动作的状态为无效;而当第一动作资源创建后,且触发第一动作后时,第一动作状态属性的属性值为第一设定值,即第一动作的状态为有效。
例如,在第一动作资源为用于针对窗户(即第一目标资源)触发开启窗户(即第一动作)的动作的资源的情况下,在第一动作资源创建后,但是并未向窗户控制器发送通知以控制窗户的开启时,第一动作状态属性的属性值为第二设定值,而当向窗户控制器发送通知以控制窗户的开启时,第一动作状态属性的属性值则从第二设定值变为第一设定值。
本公开的实施例以第一设定值表示第一动作的状态为有效,第二设定值表示第一动作的状态为无效为例进行描述,但本公开不限于此,在一些实施例中,第一设定值也可以表示第一动作的状态为无效,相应地,第二设定值表示第一动作的状态为有效。需要说明的是,在任意时刻,第一动作状态属性的属性值为第一设定值或第二设定值,也就是说,第一动作状态属性的属性值不能同时为第一设定值和第二设定值。
需要说明的是,在一些实施例中,第一动作资源还用于针对与第一目标资源(例如,窗户)不同的目标资源(例如,门)根据第一触发条件(例如,PM2.5浓度高于预设阈值A)触发预定义动作(例如,关闭门)。例如,在一个示例中,预定义动作和第一动作可以相同,可以针对窗户根据第一触发条件触发关闭操作和针对门根据第一触发条件触发关闭操作;在另一些示例中,预定义动作与第一动作可以不相同,例如,可以针对窗户根据第一触发条件触发关闭操作和针对空气净化器根据第一触发条件触发开启操作。也就是说,第一动作资源可以包括多个目标资源,并可以在满足触发条件的情况下对多个目标资源中的一个或多个执行预定义动作,多个目标资源各不相同,多个目标资源对应的预定义动作可以各不相同,也可以至少部分目标资源对应的预定义动作相同。
例如,在步骤S102中,创建第一动作资源还包括:创建用于第一动作资源的第一动作时间属性。例如,第一动作时间属性用于指示与第一动作相关的时间参数。
例如,如图4A所示,第一动作资源还包括第一动作时间属性(actionActiveTime)。第一动作时间属性是状态值,第一动作时间属性代表第一动作已被触发执行后经历的时间。例如,第一动作资源建立后,第一动作未被触发执行,该第一动作时间属性的属性值不进行设置,或者为空或者不存在,该第一动作时间属性的属性值不具备相应含义;当第一动作资源建立后,第一动作被触发执行时,可以建立相关计时器,计时器的计时数值(时间值)可以作为第一动作时间属性的属性值。需要说明的是,计时器的计时数值可以包括计时器记录的持续时间、计时器计时的起始时间和/或终止时间等各种可以表示时间的值。
例如,与第一动作相关的时间参数可以包括触发第一动作后的持续时间、执行第一动作的起始时间和执行第一动作的结束时间至少之一。需要说明的是,在一些实施例中,时间参数不一定是直接的时间,也可能是间接的时间,例如执行次数等。
例如,在一些实施例中,如图3B所示,创建方法还可以包括:
S201:接收第二创建请求,其中,第二创建请求包括第二目标资源;
S202:根据第二创建请求创建第二动作资源,其中,第二动作资源为用于针对第二目标资源触发第二动作的资源,在满足第二触发条件的情况下,针对第二目标资源触发第二动作。
例如,第二创建请求用于请求通用服务实体创建第二动作资源。
例如,第一目标资源和第二目标资源为同一个目标资源,例如,在一个示例中,第一目标资源和第二目标资源均为窗户(一扇窗户或房间中的所有窗户)。但本公开不限于此,在另一些示例中,第一目标资源和第二目标资源也可以为不同的目标资源,例如,第一目标资源为客厅的窗户,而第二目标资源为卧室的窗户;或者,第一目标资源为窗户(一扇窗户或房间中的所有窗户),而第二目标资源为门(一扇门或者房间中的所有门)。
例如,第二目标资源可以为窗户、门、空气净化器、灯、空调等。
例如,第二动作可以包括开启操作、关闭操作、调亮灯光操作、调暗灯光操作、调高温度操作、调低温度操作等任意操作。
例如,第二动作与第一动作是不同的,即第二动作可以是不同于第一动作的任何其他动作,例如,在一些示例中,第一动作和第二动作彼此冲突,例如,第一动作可以指的是将空调设置为25℃,第二动作可以指的是将空调设置为18℃。例如,在一个示例中,第一动作和第二动作彼此相反,例如,当第一动作包括对第一目标资源执行开启操作时(例如开启窗户、开启净化器),第二动作可以包括对第二目标资源执行关闭操作(例如关闭窗户、关闭净化器),例如,在一些示例中,第一动作可以是开启窗户,第二动作可以是关闭窗户。
例如,第二触发条件可以根据实际情况设定,例如,在一些示例中,第二触发条件可以为一氧化碳的浓度高于预设阈值、PM2.5浓度超过预设阈值、室内灯光亮度大于或小于预设阈值、在一定范围(例如,卧室内、客厅内等)内检测到用户、温度高于/低于预设温度阈值等各种条件。
例如,在一些示例中,第二触发条件可以与第一触发条件不同。例如,在第一动作资源用于在雾霾参数(即PM2.5的浓度)大于预设阈值A的情况下关闭窗户,第二动作资源用于在空气中的一氧化碳的浓度高于预设阈值B的情况下开启窗户时,第一触发条件可以被设置为雾霾参数大于预设阈值A,第二触发条件可以被设置成一氧化碳的浓度高于预设阈值B。
例如,第二创建请求也可以由应用实体(例如,煤气监测装置)向通用服务实体发送,又或者由用户在通用服务实体针对该应用实体创建。
例如,应用实体可以向通用服务实体发送第二创建请求,在通用服务实体通过应用实体的身份校验后,在通用服务实体上部署第二动作资源:当检测到空气中的一氧化碳的浓度高于预设阈值B时,针对窗户执行开启操作。
例如,在步骤S202中,如图3B所示,创建第二动作资源包括S2021:创建用于第二动作资源的第二动作状态属性。
图4B示出了本公开一些实施例提供的一种第二动作资源的示意图。
例如,如图4B所示,第二动作资源(<action2>)可以包括第二动作状态属性(actionStatus)。第二动作状态属性表示第二动作的状态。第二动作状态属性是状态值。
例如,第二动作状态属性的属性值也包括第一设定值和第二设定值,即第二动作的状态包括有效或无效。例如,当第二动作状态属性的属性值为第一设定值时,第二动作的状态为有效,表示该第二动作被触发执行;当第二动作状态属性的属性值为第二设定值时,第二动作的状态为无效,表示该第二动作未被触发执行。关于第二动作状态属性的详细说明可以参考上述第一动作状态属性的描述,重复之处不再赘述。
例如,在一些示例中,第二动作资源可以为用于针对窗户(即第二目标资源)触发开启窗户(即第二动作)的资源,例如,第二动作资源可以表示“当检测到空气中的一氧化碳的浓度高于预设阈值B(例如,20%)时,针对窗户执行打开操作”的资源,第二触发条件为一氧化碳的浓度高于预设阈值B,第二目标资源为窗户,第二动作为开启窗户。例如,空气中一氧化碳的浓度可以由注册到服务平台的一氧化碳传感器检测,预设阈值B可以根据实际应用需求设置。
例如,创建第二动作资源还包括:创建用于第二动作资源的第二动作时间属性。例如,第二动作时间属性用于指示与第二动作相关的时间参数。例如,与第二动作相关的时间参数包括执行第二动作后的持续时间、执行第二动作的起始时间和执行第二动作的结束时间至少之一。
例如,如图4B所示,第二动作资源还包括第二动作时间属性(actionActiveTime)。第二动作时间属性是状态值,第二动作时间属性代表第二动作已被触发执行后经历的时间。需要说明的是,关于第二动作状态属性的详细说明可以参考上述第一动作时间属性的描述,重复之处不再赘述。在本公开下面的实施例中,如果没有明确说明,则以第一动作时间属性用于指示执行第一动作后的持续时间和第二动作时间属性用于指示执行第二动作后的持续时间为了描述本公开的实施例。
值得注意的是,如图4A和4B所示,第一动作资源或第二动作资源中的每一个还可以包括:指示该动作资源的依赖条件的优先级的依赖优先级属性(evalPriority)、动作优先级属性(actionPriority)、主体资源属性(actionSubjectResource)、主体资源标识属性(SubjectResourceID)、评估规则属性(evalCriteria)、触发模式属性(evalMode)、触发模式控制属性(evalControlParam)、目标标识属性(objectResourceID)、动作方式的动作属性(activePrimitive)、动作参数的输入属性(input)、动作结果的输出资源标识属性(outputResourceID)、动作结果属性(actionResult)、以及依赖条件的依赖子资源(<dependency>)。例如,动作结果是状态值。需要说明的是,第一动作资源的依赖优先级属性表示当第一动作资源具有多个依赖条件时,该多个依赖条件的判断顺序;第二动作资源的依赖优先级属性表示当第二动作资源具有多个依赖条件时,该多个依赖条件的判断顺序。
需要说明的是,在本公开中,第一动作资源或第二动作资源的多个属性值可以基于同一次创建请求而被创建,也可以基于多次创建请求而被创建。例如,在一些示例中,第一动作资源的除了依赖子资源(例如,第一依赖子资源和/或第二依赖子资源)之外的其余的属性可以基于第一创建请求而被创建,而第一动作资源的依赖子资源可以基于向通用服务实体发送的第三创建请求而被创建;或者,第一动作资源的第一动作状态属性和第一动作时间属性可以基于第一创建请求而被创建,而第一动作资源的除了第一动作状态属性和第一动作时间属性之外的其余属性可以基于向通用服务实体发送的第三创建请求而被创建。本公开对第一动作资源和第二动作资源中各个属性的具体创建时间和过程不作具体限制。
例如,在一些实施例中,第一创建请求还包括依赖资源信息。
例如,在一些示例中,创建第一动作资源还包括:根据依赖资源信息,创建用于第一动作资源的第一依赖子资源。例如,第一依赖资源包括第一依赖条件,第一依赖条件与第二动作状态属性相关。例如,在同时满足第一触发条件和第一依赖条件的情况下,针对第一目标资源触发第一动作。
例如,当第一动作资源包括第一依赖子资源时,当满足第一触发条件时,通用服务实体可以根据第二动作状态属性判断第一依赖子资源中的第一依赖条件是否满足,当第二动作状态属性满足第一依赖条件时,则可以针对第一目标资源触发第一动作;当第二动作状态属性不满足第一依赖条件时,则不触发第一动作。
例如,在另一些示例中,创建第一动作资源还包括:根据依赖资源信息,创建用于第一动作资源的第二依赖子资源。例如,第二依赖子资源包括第二依赖条件,第二依赖条件与第二动作时间属性相关。例如,在同时满足第一触发条件和第二依赖条件的情况下,针对第一目标资源触发第一动作。
例如,当第一动作资源包括第二依赖子资源时,当满足第一触发条件时,通用服务实体可以根据第二动作时间属性判断第二依赖子资源中的第二依赖条件是否满足,当第二动作时间属性满足第二依赖条件时,则可以针对第一目标资源触发第一动作;当第二动作时间属性不满足第二依赖条件时,则不触发第一动作。
例如,在又一些示例中,创建第一动作资源还包括:根据依赖资源信息,创建用于第一动作资源的第一依赖子资源和第二依赖子资源。例如,第一依赖资源包括第一依赖条件,第一依赖条件与第二动作状态属性相关,第二依赖子资源包括第二依赖条件,第二依赖条件与第二动作时间属性相关。例如,在同时满足第一依赖条件和第二依赖条件至少之一和第一触发条件的情况下,针对第一目标资源触发第一动作。
例如,在第一动作资源包括多个依赖子资源的情况下,多个依赖子资源之间的关系可以是必要关系,也可以是充分关系。若多个依赖子资源之间的关系是充分关系,当多个依赖子资源中的任意一个被满足时,则可以针对第一目标资源触发第一动作;若多个依赖子资源之间的关系是必要关系,则多个依赖子资源均被满足时,才可以针对第一目标资源触发第一动作。例如,在一个实施例中,第一动作资源包括第一依赖子资源和第二依赖子资源,若第一依赖子资源和第二依赖子资源为充分关系,在第一触发条件被满足的情况下,首先验证第一依赖子资源,若第一依赖子资源验证通过无需第二依赖子资源验证通过,即可以针对第一目标资源触发第一动作,若第一依赖子资源验证不通过,则验证第二依赖子资源,若第二依赖子资源验证通过,则可以针对第一目标资源触发第一动作,若第二依赖子资源验证不通过,则不能针对第一目标资源触发第一动作。若第一依赖子资源和第二依赖子资源为必要关系,在第一触发条件被满足的情况下,首先验证第一依赖子资源,若第一依赖子资源验证通过,则验证第二依赖子资源,若第二依赖子资源验证通过,则可以针对第一目标资源触发第一动作,若第一依赖子资源或第二依赖子资源中的任意一个验证不通过,则不能针对第一目标资源触发第一动作。
例如,当第一动作资源包括第一依赖子资源和第二依赖子资源,且第一依赖子资源和第二依赖子资源为充分关系时,当满足第一触发条件时,通用服务实体可以首先根据第二动作状态属性判断第一依赖子资源中的第一依赖条件是否满足,当第二动作状态属性满足第一依赖条件时,则可以针对第一目标资源触发第一动作;当第二动作状态属性不满足第一依赖条件时,则根据第二动作时间属性判断第二依赖子资源中的第二依赖条件是否满足,当第二动作时间属性满足第二依赖条件时,则可以针对第一目标资源触发第一动作。当第二动作状态属性不满足第一依赖条件,且第二动作时间属性也不满足第二依赖条件时,则不可以触发第一动作。
例如,根据该依赖资源信息,通用服务实体可以为第一动作资源创建第一依赖子资源和/或第二依赖子资源,第一动作资源的依赖子资源的数量可以根据实际应用需求设置,本公开对此不作限制。
例如,第一依赖条件包括第二动作状态属性的属性值和第一设定值满足第一预设逻辑关系,第一设定值为有效或无效。第二依赖条件包括第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
例如,在一些示例中,针对状态,第一预设逻辑关系可以包括等于或不等于,即第一预设逻辑关系可以表示第二动作状态属性的属性值等于第一设定值,或者,第二动作状态属性的属性值不等于第一设定值。若第一设定值为有效,则第一预设逻辑关系可以表示第二动作状态属性的属性值等于有效或者第二动作状态属性的属性值不等于有效;若第一设定值为无效,则第一预设逻辑关系可以表示第二动作状态属性的属性值等于无效或者第二动作状态属性的属性值不等于无效。
例如,在一些示例中,针对时间,第二预设逻辑关系可以包括等于、不等于、大于、小于、大于等于、小于等于、长于、短于、长于等于、短于等于等。例如,在一些示例中,若第二动作时间属性表示触发第二动作后的持续时间,预置动作时间表示第二动作被执行后第二动作资源针对第二目标资源具有独占性的时间范围,此时,第二预设逻辑关系可以表示第二动作时间属性的属性值大于或大于等于或长于等于或长于预置动作时间。例如,在另一些示例中,若第二动作时间属性表示第二动作被执行后第二动作资源针对第二目标资源具有独占性的剩余时间,预置动作时间可以为0,此时,第二预设逻辑关系可以表示第二动作时间属性的属性值等于预置动作时间。
例如,预置动作时间可以根据实际应用需求预先设置,例如,预置动作时间可以为0、5分钟、72小时等。
需要说明的是,在本公开中,如果没有明确说明,则以第一设定值为有效,第一依赖条件表示第二动作状态属性的属性值不等于第一设定值;第二动作时间属性表示触发第二动作后的持续时间,预置动作时间表示第二动作被执行后第二动作资源针对目标资源具有独占性的时间范围,第二依赖条件表示第二动作时间属性大于预置动作时间为例。
例如,第一动作资源的每个依赖子资源可以包括至少一个依赖条件。例如,在一些实施例中,第一动作资源可以仅包括一个依赖子资源,该依赖子资源包括两个依赖条件,两个依赖条件分别为第二动作状态属性的属性值不等于第一设定值和第二动作时间属性的属性值大于预置动作时间。
例如,在一些实施例中,第一动作资源为用于针对窗户(即第一目标资源)触发关闭窗户(即第一动作)的资源,例如,当检测到空气中的PM2.5的浓度高于预设阈值A(例如,150)时,针对窗户执行关闭操作。第二动作资源为用于针对窗户(即第二目标资源)触发开启窗户(即第二动作)的资源,例如,当检测到空气中的一氧化碳的浓度高于预设阈值B(例如,20%)时,针对窗户执行开启操作。下面的表1示出了该实施例的一个示例的第二动作资源的各个属性值,下面的表2示出了该实施例的一个示例中的第一动作资源的各个属性值。
表1:Action2
例如,表1示出了第二动作资源的12个属性值。在表1中,属性值8与属性值7中的content中打包的数据相同。例如,属性值8还可以被表示为resourceID(资源的标识码)或the URI of a resource attribute(资源属性的URI(Universal Resource Identifier,通一资源标志符))等。
表2:Action1
例如,表2示出了第一动作资源的12个属性值、第一依赖子资源1和第二依赖子资源2。在表2中,属性值8与属性值7中的content中打包的数据相同。例如,属性值8还可以被表示为resourceID(资源的标识码)或the URI of a resource attribute(资源属性的URI(Universal Resource Identifier,通一资源标志符))等。
表3示出了第一动作资源的第一依赖子资源1;表4示出了第一动作资源的第二依赖子资源2。
表3
表4
例如,由上面的表格3和4可知,第一依赖子资源1包括三个属性值。第二依赖子资源2也包括三个属性值,第一依赖子资源1或第二依赖子资源2中的三个属性值分别为逻辑属性(logic)、依赖资源标识属性(dependentResourceID)、评估规则属性(evalCriteria)。
第一依赖子资源1或第二依赖子资源2中的logic属性值表示多个依赖子资源之间的相互关系,logic属性值包括充分(SUFFICIENT)和必要(NECESSARY)。当logic属性值为充分(SUFFICIENT)时,则表示只要满足多个依赖子资源中的任意一个,则可以针对目标资源触发相应动作;当logic属性值为必要(NECESSARY)时,则表示需要同时满足多个依赖子资源,才可以针对目标资源触发相应动作。
例如,第一依赖子资源1包括第一依赖条件,第一依赖条件为第二动作状态属性的属性值不等于第一设定值,由上面的表格3和4可知,第一设定值为有效(即Active),即第一依赖条件包括第二动作状态属性的属性值不等于有效;第二依赖子资源2包括第二依赖条件,第二依赖条件为第二动作时间属性的属性值大于预置动作时间,由上面的表格3和4可知,预置动作时间为72小时,即第二依赖条件为第二动作时间属性的属性值大于72小时。
例如,在一些实施例中,第一动作资源为用于在检测到空气中的PM2.5的浓度高于预设阈值时针对窗户触发关闭窗户的动作的资源;第二动作资源为用于在检测到空气中的一氧化碳的浓度高于预设阈值时针对窗户触发开启窗户的动作的资源,在本公开的实施例中,由上述表格1-4可知,当第一动作资源的第一触发条件被满足的情况下,若第二动作未被触发执行或者第二动作被触发执行已经超过72小时,则可以针对窗户触发第一动作。第二动作资源中的第二动作状态属性和第二动作时间属性可以在第一动作资源的依赖子资源中充分发挥作用,避免了动作触发资源的冲突,提升了动作的执行效率。
图5示出了根据本公开的实施例的创建动作资源的一种示意性的示例。如图5所示,通用服务实体中已经存在第二动作2的第二动作资源。第二动作2可以用于在一氧化碳(CO)浓度大于等于预设阈值B的情况下开启窗户。然后,通用服务实体可以接收第一动作1的动作资源创建请求,第一动作1可以用于在PM2.5的浓度大于预设阈值A的情况下关闭窗户。
在图5示出的示例中,根据第二动作2的第二动作资源中的第二动作状态属性可以设置第一动作1的第一依赖条件,例如,第一依赖条件为第二动作状态属性的属性值不等于第一设定值;和/或,根据第二动作2的第二动作资源中的第二动作时间属性可以设置第一动作1的第二依赖条件,例如,第二依赖条件为第二动作时间属性的属性值大于预置动作时间。
根据本公开提供的创建方法可以创建第一动作1的第一动作资源,第一动作1的触发条件(即第一触发条件)是PM2.5的浓度大于预设阈值A,第一依赖条件为第二动作状态属性的属性值不等于第一设定值和/或第二依赖条件为第二动作时间属性的属性值大于预置动作时间。在这种情况下,当同时满足PM2.5的浓度大于预设阈值A以及满足第二动作状态属性的属性值不等于第一设定值和第二动作时间属性的属性值大于预置动作时间中的至少之一时,可以执行对窗户的关闭操作。
例如,在一些实施例中,创建第一动作资源还包括:创建用于第一动作资源的第一相反动作属性和第一状态控制属性。例如,创建第二动作资源还包括:创建用于第二动作资源的第二相反动作属性和第二状态控制属性。
图6A示出了本公开一些实施例提供的另一种第一动作资源的示意图,图6B示出了本公开一些实施例提供的另一种第二动作资源的示意图。
例如,如图6A所示,第一动作资源还包括第一相反动作属性(reverseAction)和第一状态控制属性(statusControl);如图6B所示,第二动作资源还包括第二相反动作属性(reverseAction)和第二状态控制属性(statusControl)。
通过设置第一相反动作属性、第一状态控制属性、第二相反动作属性和第二状态控制属性,可以保证第一动作状态属性的属性值和第二动作状态属性的属性值在任意时刻(初始时刻除外)均彼此相反。
例如,在一些实施例中,可以在满足温度大于27摄氏度(即第一触发条件)的情况下,针对空调触发开启空调制冷的操作,可以在满足温度小于23摄氏度(即第二触发条件)的情况下,针对空调触发关闭空调制冷的操作。可以在通用服务实体上部署第一动作资源:当检测到温度大于27摄氏度时,针对空调执行开启空调制冷的操作。还可以在通用服务实体上部署第二动作资源:当检测到温度小于23摄氏度时,针对空调执行关闭空调制冷的操作。也就是说,第一动作为开启空调制冷,第二动作为关闭空调制冷。此时,第一相反动作属性表示第二动作资源的标识码,且第二相反动作属性表示第一动作资源的标识码,也就是说,在此情况下,第一动作资源对应的第一动作和第二动作资源对应的第二动作互为相反的动作。第一状态控制属性表示是否改变第一动作状态属性的属性值或第二动作状态属性的属性值,第二状态控制属性表示是否改变第二动作状态属性的属性值或第一动作状态属性的属性值。
例如,第一状态控制属性的属性值可以包括真(true)或者假(false),第二状态控制属性的属性值也可以包括真(true)或者假(false)。当第一状态控制属性的属性值为真,则可以表示可以改变第二动作状态属性,例如,可以根据第一动作状态属性的属性值改变第二动作状态属性的属性值;或者也可以表示可以改变第一动作状态属性,例如,可以根据第二动作状态属性的属性值改变第一动作状态属性的属性值。当第二状态控制属性的属性值为真,则可以表示可以改变第一动作状态属性,例如,可以根据第二动作状态属性的属性值改变第一动作状态属性的属性值;或者,也可以表示可以改变第二动作状态属性,例如,可以根据第一动作状态属性的属性值改变第二动作状态属性的属性值。当第一状态控制属性的属性值为假,则表示不能改变第二动作状态属性的属性值,例如,不能根据第一动作状态属性的属性值改变第二动作状态属性的属性值;或者,也可以表示不能改变第一动作状态属性的属性值,例如,不能根据第二动作状态属性的属性值改变第一动作状态属性的属性值;当第二状态控制属性的属性值为假,则表示不能改变第一动作状态属性的属性值,例如,不能根据第二动作状态属性的属性值改变第一动作状态属性的属性值;或者,也可以表示不能改变第二动作状态属性的属性值,例如,不能根据第一动作状态属性的属性值改变第二动作状态属性的属性值。也就是说,在本公开中,动作资源中的状态控制属性可以用于表示是否可以改变该动作资源自身的动作状态属性的属性值,也可以表示是否可以改变与该动作资源互斥的动作资源的动作状态属性的属性值。
例如,在一些示例中,第一状态控制属性的属性值为真,第二状态控制属性的属性值也为真,在第一动作资源和第二动作资源均建立时,在初始时刻,第一动作资源的第一动作状态属性的属性值为第二设定值(即inactive),第二动作资源的第二动作状态属性的属性值为第二设定值(即inactive)。当在t1时刻,触发第二动作后,则第二动作资源的第二动作状态属性的属性值从第二设定值(即inactive)变为第一设定值(即active),此时,由于第二动作状态属性的属性值为第一设定值,而第一动作状态属性的属性值和第二动作状态属性的属性值需要保持互斥,第一动作资源的第一动作状态属性的属性值为第二设定值(实际上并没有变化)。在t1时刻之后的t2时刻,触发第一动作后,则第一动作资源的第一动作状态属性的属性值从第二设定值变为第一设定值,此时,由于第一动作状态属性的属性值为第一设定值,而第一动作状态属性的属性值和第二动作状态属性的属性值需要保持互斥,第二动作资源的第二动作状态属性的属性值则从第一设定值变为第二设定值,以保证第一动作状态属性的属性值和第二动作状态属性的属性值彼此相反。上述过程重复执行,从而在后续时刻,第一动作状态属性的属性值在第一设定值和第二设定值之间交替变化,相应地,第二动作状态属性的属性值在第二设定值和第一设定值之间交替变化,从而保证第一动作状态属性的属性值和第二动作状态属性的属性值彼此相反。
例如,在一些实施例中,第一动作资源为用于针对空调(即第一目标资源)触发开启空调制冷操作(即第一动作包括开启空调制冷操作)的资源,例如,第一动作为当检测到温度高于27摄氏度时,针对空调执行开启空调制冷操作。第二动作资源为用于针对空调(即第二目标资源)触发关闭空调制冷(即第二动作包括关闭空调制冷操作)的资源,例如,第一动作为当检测到温度低于23摄氏度时,针对空调执行关闭空调制冷操作。
下面的表5示出了该实施例的一个示例的第二动作资源的各个属性值,下面的表6示出了该实施例的一个示例中的第一动作资源的各个属性值。
表5:Action2
例如,表5示出了第二动作资源的14个属性值。
表6:Action1
例如,表6示出了第一动作资源的14个属性值、第一依赖子资源1和第二依赖子资源2。
表7示出了第一动作资源的第一依赖子资源1;表8示出了第一动作资源的第二依赖子资源2。
表7
表8
例如,第一依赖子资源1包括第一依赖条件,第一依赖条件为第二动作状态属性的属性值不等于第一设定值,由上面的表格7和8可知,第一设定值为有效(即Active);第二依赖子资源2包括第二依赖条件,第二依赖条件为第二动作时间属性的属性值大于预置动作时间,由上面的表格3和4可知,预置动作时间为5分钟。
例如,在一些示例中,当温度传感器的位置设置不合理时,则会导致空调制冷动作执行准确度不高。例如,若温度传感器位于空调出风口附近,此时,空调虽然设置调节温度至25摄氏度,但是空调出风口附近温度为15摄氏度左右冷风。例如,在t1时刻,温度传感器监测到的温度高于27摄氏度,第二动作被触发执行,即开启空调以实现制冷,空调开始制冷;在t1时刻之后的t2时刻,此时温度传感器监测到的温度则变为15摄氏度左右,从而在t2时刻,第一动作立即被触发,以关闭空调。t1时刻和t2时刻之间的间隔较短(例如,1分钟、2分钟等),从而空间中的温度在t2时刻并未降低至27摄氏度以下,则在t2时刻之后的t3时刻(例如,t2时刻和t3时刻之间的间隔也较短(例如,1分钟、2分钟等)),温度传感器监测到的温度则高于27摄氏度,第二动作再次被触发执行,由此,第一动作和第二动作在短时间反复被触发,达不到降温的目的。
而根据本公开上述表格5-8所示的实施例中,在t1时刻,温度高于27摄氏度,即温度传感器监测到的温度满足第二触发条件(温度高于27摄氏度),第二动作被触发执行,开启空调以实现制冷,同时,第二动作状态属性的属性值变为第一设定值,第一动作状态属性的属性值变为第二设定值;在t1时刻之后的t2时刻,虽然温度传感器监测到的温度则变为15摄氏度左右,即温度传感器监测到的温度满足第一触发条件(温度低于23摄氏度),然而,由于第二动作状态属性的属性值为第一设定值,即第二动作状态属性的属性值不满足第一动作资源的第一依赖子资源中的第一依赖条件,且t2时刻和t1时刻之间的时间间隔为1分钟,即第二动作时间属性的属性值为1分钟,即第二动作时间属性的属性值不满足第一动作资源的第二依赖子资源中的第二依赖条件,从而第一动作无法被触发。而在t1时刻之后的t4时刻,温度传感器监测到的温度(例如,15摄氏度左右)满足第一触发条件(温度低于23摄氏度),虽然第二动作状态属性的属性值(第一设定值)不满足第一动作资源的第一依赖子资源中的第一依赖条件,然而,由于t4时刻和t1时刻之间的时间间隔为6分钟,即第二动作时间属性的属性值为6分钟,从而第二动作时间属性的属性值满足第一动作资源的第二依赖子资源中的第二依赖条件,此时,第一动作被触发执行,空调被关闭,同时,第一动作状态属性的属性值变为第一设定值,第二动作状态属性的属性值变为第二设定值。而且,在t4时刻,由于开启空调制冷的时间较长(例如,6分钟),则此时空间中的温度在t4时刻可能已经降低至27摄氏度以下,从而在关闭空调后,第二动作不会被立即触发,而是在温度传感器监测到的温度则高于27摄氏度后,第二动作再次被触发执行。最终,第一动作资源和第二动作资源不会产生冲突,空调依据第一动作资源和第二动作资源进行恒温设置,而且温度传感器可以设置在任意位置。
需要说明的是,在每次触发第一动作时,可以重置第一动作时间属性的属性值,即将第一动作时间属性的属性值清零;类似地,在每次触发第二动作时,也可以重置第二动作时间属性的属性值,即将第二动作时间属性的属性值清零。
图7示出了本公开一些实施例提供的又一种第一动作资源的示意图。
例如,在一些实施例中,创建第一动作资源还包括:创建用于第一动作资源的第一状态自动控制时间属性。
例如,如图7所示,第一动作资源还包括第一状态自动控制时间属性(StatusAutoControl)。
例如,第一动作状态属性的属性值包括第一设定值和第二设定值,第一设定值和第二设定值彼此相反。
例如,在一些示例中,第一状态自动控制时间可以表示:基于第一动作状态属性的属性值为第一设定值,且第一动作时间属性的属性值大于或等于第一状态自动控制时间属性的属性值,将第一动作状态属性的属性值从第一设定值变为第二设定值。例如,在触发第一动作时,将第一动作态属性的属性值设置为第一设定值,而当第一动作执行后的持续时间大于或等于第一状态自动控制时间属性的属性值时,则可以将第一动作态属性的属性值从第一设定值变为第二设定值。
例如,在另一些示例中,第一状态自动控制时间也可以表示:基于第一动作状态属性的属性值为第一设定值,且第一状态自动控制时间属性的属性值等于0,将第一动作状态属性的属性值从第一设定值变为第二设定值。例如,在触发第一动作时,将第一动作态属性的属性值设置为第一设定值,且此时,基于第一状态自动控制时间属性的属性值开始倒计时,当第一状态自动控制时间属性的属性值等于0时,则表示第一动作执行后的持续时间等于第一状态自动控制时间属性的属性值,从而可以将第一动作态属性的属性值从第一设定值变为第二设定值。
例如,在一些实施例中,创建第二动作资源还包括:创建用于第二动作资源的第二状态自动控制时间属性。
例如,第二动作状态属性的属性值包括第一设定值和第二设定值,第一设定值和第二设定值彼此相反,在一些示例中,第二状态自动控制时间表示:基于第二动作状态属性的属性值为第一设定值,且第二动作时间属性的属性值大于或等于第二状态自动控制时间属性的属性值,将第二动作状态属性的属性值从第一设定值变为第二设定值。在另一些示例中,第二状态自动控制时间属性也可以表示:基于第二动作状态属性的属性值为第一设定值,且第二状态自动控制时间属性的属性值等于0,将第二动作状态属性的属性值从第一设定值变为第二设定值。
例如,在一些实施例中,第一动作资源可以为用于针对窗户(即第一目标资源)触发开启窗户(即第一动作)的资源,例如,当检测到空气中的一氧化碳的浓度高于预设阈值B(例如,20%)时,针对窗户执行开启操作。下面的表9示出了该实施例的一个示例中的第一动作资源的各个属性值。
表9:Action1
例如,表9示出了第二动作资源的15个属性值,其中,属性值13和属性值14设置为空,即该两个属性值指向为空。
例如,在表9示出的示例中,当检测到空气中的一氧化碳的浓度高于预设阈值时,针对窗户触发第一动作,即开启窗户的操作,且设定第一动作状态属性的属性值为第一设定值,当触发第一动作后的持续时间超过第一状态自动控制时间属性的属性值(例如,在表9中,为6小时),则将第一动作态属性的属性值从第一设定值变为第二设定值。
图8A示出了本公开一些实施例提供的再一种第一动作资源的示意图,图8B示出了本公开一些实施例提供的一种第一动作资源中的冲突策略子资源的示意图。
例如,在一些实施例中,第一创建请求还包括冲突策略资源信息。
例如,创建第一动作资源还包括:基于冲突策略资源信息,创建用于第一动作资源的冲突策略子资源。
例如,在第一动作资源包括冲突策略子资源的情况下,创建第一动作资源还可以包括:基于第二目标资源、第二动作和冲突策略子资源满足匹配条件,创建用于第一动作资源的第一依赖子资源。或者,创建第一动作资源还包括:基于第二目标资源、第二动作和冲突策略子资源满足匹配条件,创建用于第一动作资源的第二依赖子资源;或者,创建第一动作资源还包括:基于第二目标资源、第二动作和冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第一依赖子资源和第二依赖子资源。
例如,第一依赖子资源包括第一依赖条件,第一依赖条件与第二动作状态属性相关,第二依赖子资源包括第二依赖条件,第二依赖条件与第二动作时间属性相关。在同时满足第一依赖条件和第二依赖条件至少之一和第一触发条件的情况下,针对第一目标资源触发第一动作。例如,在第一动作资源包括第一依赖子资源的情况下,在同时满足第一依赖条件和第一触发条件的情况下,针对第一目标资源触发第一动作;在第一动作资源包括第二依赖子资源的情况下,在同时满足第二依赖条件和第一触发条件的情况下,针对第一目标资源触发第一动作;在第一动作资源包括第一依赖子资源和第二依赖子资源的情况下,在同时满足第一依赖条件和第二依赖条件至少之一和第一触发条件的情况下,针对第一目标资源触发第一动作。
例如,如图8A所示,第一动作资源还包括冲突策略子资源(conflictPolicy)。
例如,创建用于第一动作资源的冲突策略子资源包括:创建用于第一动作资源的冲突目标资源标识属性和冲突执行方法属性。
例如,如图8B所示,冲突策略子资源包括冲突目标资源标识属性(conflictObjectResourceID)和冲突执行方法属性(conflictInput)。例如,冲突目标资源标识属性表示第一目标资源的标识码,冲突执行方法属性表示与第一动作相冲突的动作。
例如,满足匹配条件包括:第二目标资源的标识码和冲突目标资源标识属性相同,第二动作和冲突执行方法属性表示的动作相同。
例如,在一些实施例中,创建用于第一动作资源的冲突策略子资源还包括:创建用于第一动作资源的冲突状态属性。
需要说明的是,另一些示例中,冲突执行方法属性表示第一动作,此时,满足匹配条件包括:第二动作资源的目标资源的标识码和冲突目标资源标识属性相同,第二动作和冲突执行方法属性表示的动作(即第一动作)相冲突。
例如,如图8B所示,冲突策略子资源包括冲突状态属性(conflictStatus),冲突状态属性的属性值可以包括第一设定值或第二设定值。例如,第一目标资源和第二目标资源为同一个目标资源,且第一动作和第二动作彼此冲突,则表示第二目标资源、第二动作和冲突策略子资源满足匹配条件,此时,若设置冲突状态属性的属性值为第一设定值时,则表示当第二动作状态属性的属性值为第一设定值时,第一动作无法被触发,当第二动作状态属性的属性值为第二设定值时,则第一动作可以被触发;相反,若设置冲突状态属性的属性值为第二设定值时,则表示当第二动作状态属性的属性值为第二设定值时,第一动作无法被触发,当第二动作状态属性的属性值为第一设定值时,则第一动作可以被触发。
例如,当冲突状态属性的属性值为第一设定值时,第一依赖条件包括第二动作状态属性的属性值不等于第一设定值,第一设定值为有效或无效,当冲突状态属性的属性值为第二设定值时,第一依赖条件包括第二动作状态属性的属性值不等于第二设定值。第二依赖条件包括第二动作时间属性的属性值大于预置动作时间。
例如,在一些示例中,若在通用服务实体上已经部署第二动作资源,且第二动作资源为用于针对第二目标资源触发第二动作的资源,第二目标资源为窗户,第二动作包括开启操作,即开启窗户的操作。对于第一动作资源,第一动作资源为用于针对第一目标资源触发第一动作的资源,若第二目标资源和第一目标资源相同,即第一目标资源也为窗户,第一动作包括关闭操作,即关闭窗户的操作,第一动作和第二动作彼此冲突,则为了防止第一动作资源和第二动作资源产生冲突,则在创建第一动作资源时,基于第一动作资源的冲突策略子资源,可以由通用服务实体自动为第一动作资源添加与第二动作资源相关的依赖子资源,即可以在第一动作资源下建立与第二动作资源相关的第一依赖子资源和/或第二依赖子资源。第一依赖子资源可以包括第一依赖条件,当冲突状态属性的属性值为第一设定值时,第一依赖条件包括第二动作状态属性的属性值不等于第一设定值,第二依赖子资源包括第二依赖条件,第二依赖条件包括第二动作时间属性的属性值大于预置动作时间。
例如,在一些实施例中,第一动作资源为用于针对窗户(即第一目标资源)触发关闭窗户(即第一动作)的资源,例如,当检测到空气中的PM2.5的浓度高于预设阈值A时,针对窗户执行关闭操作。第二动作资源为用于针对窗户(即第二目标资源)触发开启窗户(即第二动作)的资源,例如,当检测到空气中的一氧化碳的浓度高于预设阈值B时,针对窗户执行开启操作。
下面的表10示出了该实施例的一个示例的第二动作资源的各个属性值,下面的表11示出了该实施例的一个示例中的第一动作资源的各个属性值。
表10:Action2
表11:Action1
表12示出了第一动作资源的冲突策略子资源。
表12
属性值1 | conflictObjectResourceID | ID of<container2>(目标资源:窗户开关) |
属性值2 | conflictInput | 关闭命令(string) |
属性值3 | conflictStatus | active |
例如,如表格12所示,冲突策略子资源包括三个属性值,且三个属性值分别为冲突目标资源标识属性(conflictObjectResourceID)、冲突执行方法属性(conflictInput)、冲突状态属性(conflictStatus)。
由上述表格10-12所示,当创建第一动作资源时,根据第一动作资源的冲突策略子资源可知,第一动作资源和第二动作资源相匹配,从而通用服务实体自动在第一动作资源下创建与第二动作资源相关的第一依赖子资源1,表13示出了第一动作资源的第一依赖子资源1。
表13
例如,在另一些示例中,若在通用服务实体上还部署有第三动作资源和第四动作资源,且第三动作资源的第三目标资源为窗户,第三动作资源对应的第三动作包括开启操作,第四动作资源的第四目标资源为窗户,第四动作资源对应的第四动作包括开启操作。也就是说,第三动作资源和第四动作资源也与第一动作资源相匹配,从而则为了防止第一动作资源与第三动作资源和第四动作资源的任意一个产生冲突,则在创建第一动作资源时,基于第一动作资源的冲突策略子资源,可以由通用服务实体自动添加与第三动作资源相关的依赖子资源和与第四动作资源相关的依赖子资源,即可以在第一动作资源下建立与第三动作资源相关的第三依赖子资源和/或第四依赖子资源、与第四动作资源相关的第五依赖子资源和/或第六依赖子资源。第三依赖子资源可以包括第三依赖条件,第三依赖条件与第三动作资源的第三动作状态属性相关,当冲突状态属性的属性值为第一设定值时,第三依赖条件包括第三动作状态属性的属性值不等于第一设定值,第四依赖子资源包括第四依赖条件,第四依赖条件与第三动作资源的第三动作时间属性相关,第四依赖条件包括第三动作时间属性的属性值大于预置动作时间。第五依赖子资源可以包括第五依赖条件,第五依赖条件与第四动作资源的第四动作状态属性相关,当冲突状态属性的属性值为第一设定值时,第五依赖条件包括第四动作状态属性的属性值不等于第一设定值,第六依赖子资源包括第六依赖条件,第六依赖条件与第四动作资源的第四动作时间属性相关,第六依赖条件包括第四动作时间属性的属性值大于预置动作时间。
关于第三依赖子资源和第五依赖子资源的详细说明可以参考上述关于第一依赖子资源的描述,关于第四依赖子资源和第六依赖子资源的详细说明可以参考上述关于第二依赖子资源的描述。
当创建第一动作资源时,根据第一动作资源的冲突策略子资源可知,第一动作资源和第三动作资源相匹配,从而通用服务实体自动在第一动作资源下创建与第三动作资源相关的第三依赖子资源,第一动作资源和第四动作资源相匹配,从而通用服务实体自动在第一动作资源下创建与第四动作资源相关的第五依赖子资源。表14示出了第一动作资源的第三依赖子资源,表15示出了第一动作资源的第五依赖子资源。
表14
表15
由上述表格13-15可知,由于第一动作资源的第一依赖子资源、第三依赖子资源和第五依赖子资源之间的关系为必要(NECESSARY),因此,只有当第二动作资源的第二动作状态属性的属性值、第三动作资源的第三动作状态属性的属性值以及第四动作资源的第四动作状态属性的属性值均为第二设定值(即无效)时,第一动作资源对应的第一动作才可以被触发。
需要说明的是,在本公开中,对第一动作资源的描述,在不冲突的情况下,均适用于第二动作资源。也就是说,例如,第二动作资源也可以包括状态自动控制时间属性;第二创建请求也可以包括冲突策略资源信息,第二动作资源也可以包括冲突策略子资源等。
图9示出了本公开一些实施例提供的一种动作的执行方法的示意图。例如,如图9所示,动作的执行方法可以包括:
S301:确定第一动作资源,其中,第一动作资源为用于针对第一目标资源触发第一动作的资源,第一动作资源包括第一动作状态属性,第一动作状态属性表示第一动作的状态;
S302:针对第一目标资源触发第一动作;
S303:在触发第一动作后,设置第一动作状态属性的属性值为第一设定值。
利用本公开提供的动作的执行方法,通过在动作资源中增加动作状态属性,从而基于与动作状态属性的相关的依赖条件,则可以解决动作资源的冲突问题,提升了动作的执行效率。
例如,在一些实施例中,步骤S302可以包括:接收第一数据资源;基于第一数据资源满足第一触发条件,针对第一目标资源触发第一动作。
需要说明的是,在本公开中,“触发第一动作”可以包括执行第一动作;但不限于此,“触发第一动作”还可以包括监测用于第一动作资源的第一数据资源,确定第一数据资源满足第一动作资源中的匹配条件(即动作资源中的评估规则属性(evalCriteria)所表示的条件),针对第一目标资源执行第一动作,即“触发第一动作”可以表示从监测第一数据资源到最终执行第一动作这一完整的过程。“触发第二动作”的含义和“触发第一动作”的含义类似。此外,第一触发条件可以表示所监测的第一数据资源中的数据满足第一动作资源中的匹配条件。
例如,在一些实施例中,可以通过各种传感器接收传感数据以确定第一数据资源(也可以称为第一主体资源,即动作资源的subjectResource这一属性)。例如,第一数据资源可以为一氧化碳浓度、PM2.5浓度、温度等。例如,在智能家居的使用环境中,可以通过例如一氧化碳传感器、雨量传感器、空气质量监测传感器等传感器接收传感数据,并利用接收的传感数据更新第一数据资源。第一动作资源对应的第一动作表示:当检测到空气中的PM2.5的浓度高于预设阈值A(例如100)时,针对窗户执行关闭操作。此时,第一数据资源为空气质量监测传感器检测的PM2.5浓度,在PM2.5浓度高于100的情况下,则可以执行针对窗户执行关闭操作。
例如,应用实体(例如,传感器)可以向通用服务实体传输数据,以更新第一数据资源。这种更新可以是实时的或者是周期性的,抑或可以由某一条件进行触发;例如,可以在应用实体检测的数据到达某一阈值时,将该超过阈值的数据传输至通用服务实体以进行更新,或者由另一应用实体请求获取第一数据资源时,进行更新。
例如,在一些实施例中,第一动作资源还包括第一动作时间属性,第一动作时间属性用于指示与第一动作相关的时间参数。与第一动作相关的时间参数可以包括触发第一动作后的持续时间、执行第一动作的起始时间和执行第一动作的结束时间至少之一。
例如,执行方法还包括:在触发第一动作后,设置第一动作时间属性的属性值。例如,设置第一动作时间属性的属性值包括:在触发第一动作后,建立动作执行计时器以开始计时,将动作执行计时器的时间值作为第一动作时间属性的属性值。例如,动作执行计时器每次从0开始计时。
例如,在一些实施例中,第一动作资源还包括第一状态自动控制时间属性。
例如,在一些示例中,第一状态自动控制时间可以表示:基于第一动作状态属性的属性值为第一设定值,且第一动作时间属性的属性值大于或等于第一状态自动控制时间属性的属性值,将第一动作状态属性的属性值从第一设定值变为第二设定值。例如,在触发第一动作后,执行方法还包括:获取第一动作时间属性的属性值;判断第一动作时间属性的属性值是否大于或等于第一状态自动控制时间属性的属性值,且在第一动作时间属性的属性值大于或等于第一状态自动控制时间属性的属性值时,将第一动作状态属性的属性值从第一设定值变为第二设定值。
例如,在另一些示例中,第一状态自动控制时间也可以表示:基于第一动作状态属性的属性值为第一设定值,且第一状态自动控制时间属性的属性值等于0,将第一动作状态属性的属性值从第一设定值变为第二设定值。例如,在触发第一动作后,执行方法还包括:基于第一状态自动控制时间属性的属性值开始倒计时;获取第一状态自动控制时间属性的属性值;判断第一状态自动控制时间属性的属性值是否等于0,且在第一状态自动控制时间属性的属性值等于0时,将第一动作状态属性的属性值从第一设定值变为第二设定值。
例如,第一设定值和第二设定值彼此相反,在一些示例中,第一设定值可以为有效,相应地,第二设定值可以为无效。
例如,在一些示例中,第一动作资源还包括第一依赖子资源,第一依赖子资源包括第一依赖条件,步骤S302可以包括:接收第一数据资源;获取第二动作资源的第二动作状态属性,其中,第二动作资源为用于针对第二目标资源触发第二动作的资源,第二动作资源包括第二动作状态属性,第二动作状态属性表示第二动作的状态;基于第一数据资源满足第一触发条件且第二动作状态属性的属性值满足第一依赖条件,针对第一目标资源触发第一动作。也就是说,当第一动作资源包括第一依赖子资源时,则需要在第一数据资源满足第一触发条件且第二动作状态属性的属性值满足第一依赖条件的情况下,针对第一目标资源触发第一动作。
例如,在另一些示例中,第一动作资源还包括第二依赖子资源,第二依赖子资源包括第二依赖条件,步骤S302可以包括:接收第一数据资源;获取第二动作资源的第二动作时间属性,其中,第二动作资源为用于针对第二目标资源触发第二动作的资源,第二动作资源包括第二动作时间属性,第二动作时间属性用于指示与第二动作相关的时间参数;基于第一数据资源满足第一触发条件且第二动作时间属性的属性值满足第二依赖条件,针对第一目标资源触发第一动作。也就是说,当第一动作资源包括第一依赖子资源时,则需要在第一数据资源满足第一触发条件且第二动作时间属性的属性值满足第二依赖条件的情况下,针对第一目标资源触发第一动作。
例如,在又一些示例中,第一动作资源还包括第一依赖子资源和第二依赖子资源,第一依赖子资源包括第一依赖条件,第二依赖子资源包括第二依赖条件,步骤S302可以包括:接收第一数据资源;获取第二动作资源的第二动作状态属性和第二动作时间属性,其中,第二动作资源为用于针对第二目标资源触发第二动作的资源,第二动作资源包括第二动作状态属性和第二动作时间属性,第二动作状态属性表示第二动作的状态,第二动作时间属性用于指示与第二动作相关的时间参数;基于第一数据资源满足第一触发条件且第二动作状态属性的属性值满足第一依赖条件和/或第二动作时间属性的属性值满足第二依赖条件的情况下,针对第一目标资源触发第一动作。也就是说,当第一动作资源包括第一依赖子资源和第二依赖子资源时,则在第一数据资源满足第一触发条件,且第二动作状态属性的属性值满足第一依赖条件和第二动作时间属性的属性值满足第二依赖条件中的任意一个成立的情况下,即可以针对第一目标资源触发第一动作。
例如,第一依赖条件包括第二动作状态属性的属性值不等于第一设定值,第一设定值为有效或无效。第二依赖条件包括第二动作时间属性的属性值大于预置动作时间。
例如,第一目标资源和第二目标资源为同一个目标资源。
例如,第一动作和第二动作是不相同的,例如,第一动作和第二动作彼此冲突。
例如,执行方法还可以包括:在触发第一动作后,设置第二动作状态属性的属性值为第二设定值,其中,第一设定值和第二设定值彼此相反;确定第二动作资源;接收第二数据资源;基于第二数据资源满足第二触发条件,针对第二目标资源触发第二动作,且在触发第二动作后,将第二动作状态属性的属性值从第二设定值变为第一设定值,将第一动作状态属性的属性值从第一设定值变为第二设定值。在该实施例中,第一动作和第二动作彼此相反,例如,第一动作为开启操作,则第二动作为关闭操作。需要说明的是,在本公开中,“触发第二动作”可以包括执行第二动作。
例如,在一个实施例中,第一动作资源还包括第一相反动作属性和第一状态控制属性,第二动作资源还包括第二相反动作属性和第二状态控制属性,第一相反动作属性表示第二动作资源的标识码,且第二相反动作属性表示第一动作资源的标识码。
例如,在一些示例中,在执行设置第二动作状态属性的属性值为第二设定值的操作之前,执行方法还包括:判断第一状态控制属性的属性值是否为真,在确定第一状态控制属性的属性值为真的情况下,执行设置第二动作状态属性的属性值为第二设定值的操作,在确定第一状态控制属性的属性值不为真的情况下,不执行设置第二动作状态属性的属性值为第二设定值的操作。也就是说,在触发第一动作后,首先需要判断第一状态控制属性的属性值是否为真,且在确定第一状态控制属性的属性值为真的情况下,则设置第二动作状态属性的属性值为第二设定值,而在确定第一状态控制属性的属性值不为真的情况下,不对第二动作状态属性的属性值进行操作。
例如,在另一些示例中,在执行设置第二动作状态属性的属性值为第二设定值的操作之前,执行方法还包括:判断第二状态控制属性的属性值是否为真,在确定第二状态控制属性的属性值为真的情况下,执行设置第二动作状态属性的属性值为第二设定值的操作,在确定第二状态控制属性的属性值不为真的情况下,不执行设置第二动作状态属性的属性值为第二设定值的操作。也就是说,在触发第一动作后,首先需要判断第二状态控制属性的属性值是否为真,且在确定第二状态控制属性的属性值为真的情况下,则设置第二动作状态属性的属性值为第二设定值,而在确定第二状态控制属性的属性值不为真的情况下,不对第二动作状态属性的属性值进行操作。
例如,在一些示例中,在执行将第一动作状态属性的属性值从第一设定值变为第二设定值的操作之前,执行方法还包括:判断第二状态控制属性的属性值是否为真,在确定第二状态控制属性的属性值为真的情况下,执行将第一动作状态属性的属性值从第一设定值变为所述第二设定值的操作,在确定第二状态控制属性的属性值不为真的情况下,不执行将第一动作状态属性的属性值从第一设定值变为第二设定值的操作。也就是说,在触发第二动作后,首先需要判断第二状态控制属性的属性值是否为真,且在确定第二状态控制属性的属性值为真的情况下,则将第一动作状态属性的属性值从第一设定值变为所述第二设定值,而在确定第二状态控制属性的属性值不为真的情况下,不对第一动作状态属性的属性值进行操作。
例如,在另一些示例中,在执行将第一动作状态属性的属性值从第一设定值变为第二设定值的操作之前,执行方法还包括:判断第一状态控制属性的属性值是否为真,在确定第一状态控制属性的属性值为真的情况下,执行将第一动作状态属性的属性值从第一设定值变为第二设定值的操作,在确定第一状态控制属性的属性值不为真的情况下,不执行将第一动作状态属性的属性值从第一设定值变为所述第二设定值的操作。也就是说,在触发第二动作后,首先需要判断第一状态控制属性的属性值是否为真,且在确定第一状态控制属性的属性值为真的情况下,则将第一动作状态属性的属性值从第一设定值变为所述第二设定值,而在确定第一状态控制属性的属性值不为真的情况下,不对第一动作状态属性的属性值进行操作。
例如,在本公开中,只有在第一状态控制属性的属性值为真的情况下,才可以在执行第一动作后对第二动作状态属性(或第一动作状态属性)的属性值进行操作,只有在第二状态控制属性的属性值为真的情况下,才可以在执行第二动作后对第一动作状态属性(或第二动作状态属性)的属性值进行操作。即在执行第一动作后,需要判断第一状态控制属性的属性值是否为真,若为真,则需要将第二动作状态属性的属性值变为第二设定值(此时,第一动作状态属性的属性值为第一设定值),若不为真(即为假),则不需要执行改变第二动作状态属性的属性值的操作;在执行第二动作后,需要判断第二状态控制属性的属性值是否为真,若为真,则需要将第一动作状态属性的属性值变为第二设定值(此时,第二动作状态属性的属性值为第一设定值),若不为真(即为假),则不需要执行改变第一动作状态属性的属性值的操作。
例如,可以通过各种传感器接收传感数据以确定第二数据资源(也可以被称为第二主体资源)。例如,第二数据资源也可以为一氧化碳浓度、PM2.5浓度、温度等。需要说明的是,第二触发条件可以表示所监测的第二数据资源中的数据满足第二动作资源中的匹配条件。在本公开中,对第一数据资源的描述,在不冲突的情况下,均适用于第二数据资源。
例如,第一数据资源和第二数据资源不相同,在一些示例中,第一数据资源可以为PM2.5浓度,而第二数据资源为一氧化碳浓度。
例如,应用实体(例如,传感器)可以向通用服务实体传输数据,以更新第二数据资源。
需要说明的是,触发第一动作和触发第二动作没有时间顺序,例如,当第一数据资源满足第一触发条件且第二动作状态属性的属性值满足第一依赖条件和/或第二动作时间属性的属性值满足第二依赖条件,即可触发第一动作;当第二数据资源满足第二触发条件时,即可触发第二动作,需要说明的是,当第二动作资源包括相应的依赖条件时,则当第二数据资源满足第二触发条件且第二动作资源的相应的依赖条件被满足时,即可触发第二动作。例如,在一些示例中,可以先触发第二动作,再触发第一动作;在另一些示例中,可以先触发第一动作,再触发第二动作。
例如,第二动作资源还包括第二动作时间属性,第二动作时间属性用于指示与第二动作相关的时间参数。执行方法还包括:在触发第二动作后,设置第二动作时间属性的属性值。设置第二动作时间属性的属性值的方式可以与设置第一动作时间属性的属性值相同,重复之处不再赘述。
需要说明的是,在每次触发第一动作时,可以重置第一动作时间属性的属性值,即将第一动作时间属性的属性值清零;类似地,在每次触发第二动作时,也可以重置第二动作时间属性的属性值,即将第二动作时间属性的属性值清零。
此外,在动作的执行方法的实施例中,关于第一动作资源和第二动作资源的详细说明可以参考动作资源的创建方法的实施例中的相关描述,重复之处在此不再赘述。
图10示出了本公开一些实施例提供的一种动作资源的创建和执行过程的示意图。图10所示的示例以上述表格1-4所示的动作资源的示例为例。
例如,如图10所示,首先,空气监测装置/应用和煤气监测装置/应用分别向通用服务实体发送注册请求,以实现注册,当注册完成后,通用服务实体可以返回注册成功的响应至空气监测装置/应用和煤气监测装置/应用。
然后,空气监测装置/应用向通用服务实体发送第一创建请求,在通用服务实体通过空气监测装置/应用的身份校验后,根据第一创建请求,通用服务实体可以为空气监测装置/应用创建第一动作资源(action1),当第一动作资源创建成功后,通用服务实体可以向空气监测装置/应用返回创建成功的响应,此时,第一动作资源的第一动作状态属性的属性值为第二设定值(即inactive),第一动作资源的第一动作时间属性的属性值可以为空。例如,第一动作资源为用于针对第一目标资源触发第一动作的资源。
煤气监测装置/应用向通用服务实体发送第二创建请求,在通用服务实体通过煤气监测装置/应用的身份校验后,根据第二创建请求,通用服务实体可以为煤气监测装置/应用创建第二动作资源(action2),当第二动作资源创建成功后,通用服务实体可以向煤气监测装置/应用返回创建成功的响应,此时,第二动作资源的第二动作状态属性的属性值为第二设定值(即inactive),第二动作资源的第二动作时间属性的属性值可以为空。例如,第二动作资源为用于针对第二目标资源触发第二动作的资源,第二目标资源和第一目标资源相同。
接着,对于第二动作资源,当第二数据资源满足第二触发条件,然后,判断第二动作资源的依赖条件是否被满足,由于第二动作资源不包括依赖条件,从而在第二数据资源满足第二触发条件时,第二动作则可以被执行,即针对窗户(即第二目标资源)触发开启窗户的操作(即第二动作包括开启操作)。在执行第二动作后,设置第二动作状态属性的属性值为第一设定值(即active),同时,设置第二动作时间属性的属性值开始计时,以记录执行第二动作后的持续时间。
对于第一动作资源,第一动作资源包括两个依赖子资源,一个依赖子资源依赖于第二动作资源的第二动作状态属性的属性值为第二设定值,另一个依赖子资源依赖于第二动作执行后的时间(即第二动作时间属性的属性值)大于预置动作时间。当第一数据资源满足第一触发条件,判断第一动作资源的依赖条件是否被满足,当第二动作资源的第二动作状态属性的属性值为第二设定值时,则确定触发执行成功,从而第一动作被执行;当第二动作资源的第二动作状态属性的属性值为第一设定值时,可以判断第二动作时间属性的属性值是否大于预置动作时间,当第二动作时间属性的属性值大于预置动作时间时,则确定触发执行成功,从而第一动作被执行;当第二动作资源的第二动作状态属性的属性值为第一设定值,且第二动作时间属性的属性值小于或等于预置动作时间时,则确定触发执行失败,从而不执行第一动作。例如,在执行第一动作后,设置第一动作状态属性的属性值为第一设定值(即active),同时,设置第一动作时间属性的属性值开始计时,以记录执行第一动作后的持续时间。
在本公开提供的动作资源的创建方法和动作的执行方法中,通过在动作资源中增加动作状态属性,从而基于与动作状态属性的相关的依赖条件,则可以解决动作资源的冲突问题。
图11示出了本公开一些实施例提供的针对目标资源进行触发操作的示意性的一个示例的示意图。图11所示的示例以上述表格1-4所示的动作资源的实施例为例。
例如,如图11所示,PM 2.5传感器AE1(例如,空气监测装置)、一氧化碳传感器AE2(例如,煤气监测装置)和窗户控制器AE3分别注册到家庭管理服务器CSE(即通用服务实体)。
在创建动作资源的过程中,一氧化碳传感器AE2可以向家庭管理服务器CSE发送第二创建请求,第二创建请求用于请求家庭管理服务器CSE创建第二动作资源,第二创建请求中包括动作触发主体(一氧化碳传感器AE2)、第二目标资源(窗户)、第二触发条件(一氧化碳浓度大于预设阈值B)以及控制动作(开启窗户)。
根据一氧化碳传感器AE2发送的第二创建请求,家庭管理服务器CSE可以创建第二动作资源。在一些实施例中,在创建第二动作资源之前,可以判断家庭管理服务器CSE中是否存在针对相同的第二目标资源的其他动作资源。在不存在针对相同的第二目标资源的其他动作资源的情况下,可以根据家庭管理应用AE1发送的创建请求创建第二动作资源。
PM 2.5传感器AE1可以向家庭管理服务器CSE发送第一创建请求,第一创建请求用于请求家庭管理服务器CSE创建第一动作资源,第一创建请求中包括动作触发主体(PM 2.5传感器AE1)、第一目标资源(窗户)、第一触发条件(PM 2.5浓度大于预设阈值A)、依赖条件(第二动作状态属性的属性值为第二预设值或第二动作时间属性的属性值大于预置动作时间)以及控制动作(关闭窗户)。
根据PM 2.5传感器AE1发送的第一创建请求,家庭管理服务器CSE可以创建第一动作资源。需要说明的是,在第二动作资源已经被创建后,PM 2.5传感器AE1向家庭管理服务器CSE发送第一创建请求,以请求创建第一动作资源,若第一创建请求中不包括依赖条件,则家庭管理服务器CSE判断并确定即将被创建的第一动作资源与已经存在的第二动作资源可能发生冲突,则家庭管理服务器CSE可能拒绝创建第一动作资源,即第一动作资源创建失败。
例如,当创建第一动作资源后,家庭管理服务提CSE可以向PM 2.5传感器AE1返回创建动作资源成功的响应,以表示第一动作资源创建成功;当创建第二动作资源后,家庭管理服务提CSE可以向一氧化碳传感器AE2返回创建动作资源成功的响应,以表示第二动作资源创建成功。
在操作过程中,家庭管理服务器CSE可以从一氧化碳传感器AE2接收更新请求,以更新对应的第二数据资源(即第二主体资源)。该更新请求中可以包括一氧化碳传感器AE2当前检测到的一氧化碳含量的数据。家庭管理服务器CSE可以在接收到一氧化碳传感器AE2发送的更新请求后向一氧化碳传感器AE2发送相应的更新响应。
然后,家庭管理服务器CSE可以判断从一氧化碳传感器AE2接收的数据是否满足第二动作资源的触发条件(即第二触发条件)。如果第二数据资源满足第二动作资源的触发条件,那么家庭管理服务器CSE可以向窗户控制器AE3发送动作请求,并通知窗户控制器AE3执行开启窗户的操作。在开启操作被执行以后,窗户控制器AE3可以向家庭管理服务器CSE发送动作响应。
家庭管理服务器CSE还可以从PM 2.5传感器AE1接收更新请求,以更新对应的第一数据资源(即第一主体资源)。例如,更新请求包括PM 2.5传感器AE1当前检测到的PM 2.5浓度数据。在一些实施例中,这样的更新请求可以是以预设的频率定期发送的,也可以是响应于检测数据的变化而发送的。例如,可以在确定检测数据高于预设阈值A的情况下向家庭管理服务器CSE发送更新请求。家庭管理服务器CSE可以在接收到PM 2.5传感器AE1发送的更新请求后向PM 2.5传感器AE1发送对应的更新响应。
然后,家庭管理服务器CSE可以根据更新后的第一数据资源中的PM 2.5浓度数据判断是否满足第一动作资源的触发条件(即第一触发条件),并根据第二动作状态属性和第二动作时间属性判断是否满足第一动作资源的依赖条件(包括上述实施例描述的第一依赖条件和/或第二依赖条件)。如果第一动作资源的触发条件以及依赖条件均被满足,则可以向窗户控制器AE3发送动作请求。窗户控制器AE3可以根据接收到的操作请求进行关闭窗户的操作。在关闭操作被执行以后,窗户控制器AE3可以向服务器CSE发送动作响应。
需要说明的是,在本公开中,更新请求可以包括请求家庭管理服务器CSE更新或设定第一动作资源或第二动作资源中的任意一个属性值,例如,可以更新或设定第一动作资源中的第一动作状态属性的属性值、第一动作时间属性的属性值、第一相反动作属性的属性值、第一状态控制属性的属性值等任意一个属性的属性值。本公开对此不作限制。
本公开一些实施例还提供一种电子装置。图12为本公开一些实施例提供的一种电子装置的示意图。
例如,如图12所示,电子装置500可以包括:存储器510和处理器520。应当注意,图12所示的电子装置500的组件只是示例性的,而非限制性的,根据实际应用需要,该电子装置500还可以具有其他组件。
例如,存储器510用于非暂时性存储计算机可读指令;处理器520用于运行计算机可读指令,计算机可读指令被处理器520运行时执行根据上述任一实施例所述的动作资源的创建方法。
例如,存储器510和处理器520等组件之间可以通过网络连接进行通信。网络可以包括无线网络、有线网络、和/或无线网络和有线网络的任意组合。网络可以包括局域网、互联网、电信网、基于互联网和/或电信网的物联网(Internet of Things)、和/或以上网络的任意组合等。有线网络例如可以采用双绞线、同轴电缆或光纤传输等方式进行通信,无线网络例如可以采用3G/4G/5G移动通信网络、蓝牙、Zigbee或者WiFi等通信方式。本公开对网络的类型和功能在此不作限制。
例如,处理器520可以控制电子装置500中的其它组件以执行期望的功能。处理器520可以是中央处理单元(CPU)、微处理器等具有数据处理能力和/或程序执行能力的器件。中央处理元(CPU)可以为X86或ARM架构等。
例如,存储器510可以包括一个或多个计算机程序产品的任意组合,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机可读指令,处理器510可以运行所述计算机可读指令,以实现电子装置500的各种功能。在存储介质中还可以存储各种应用程序和各种数据等。
例如,关于电子装置500执行创建动作资源的过程的详细说明可以参考上述动作资源的创建方法的实施例中的相关描述,重复之处不再赘述。
本公开一些实施例还提供一种电子装置。例如,电子装置可以包括:存储器和处理器。存储器用于非暂时性存储计算机可读指令;处理器用于运行计算机可读指令,计算机可读指令被处理器运行时,使得处理器执行根据上述任一实施例所述的动作的执行方法。需要说明的是,关于存储器和处理器的详细说明可以参考上述相关描述,在此不再赘述。关于电子装置执行动作的过程的详细说明可以参考上述动作的执行方法的实施例中的相关描述,重复之处不再赘述。
本公开一些实施例还提供一种计算机可读存储介质。图13为本公开一些实施例提供的一种计算机可读存储介质的示意图。例如,如图13所示,在计算机可读存储介质900上可以非暂时性地存储一个或多个计算机可读指令901。例如,当计算机可读指令901由计算机执行时,可以使得计算机执行根据上述任一实施例所述的动作资源的创建方法或者动作的执行方法中的一个或多个步骤。
例如,该计算机可读存储介质900可以应用于上述任一实施例所述的电子装置中,例如,其可以为电子装置中的存储器。
例如,关于计算机可读存储介质900的说明可以参考上述任一实施例所述的电子装置的实施例中对于存储器的描述,重复之处不再赘述。
对于本公开,还有以下几点需要说明:
(1)本公开实施例附图只涉及到与本公开实施例涉及到的结构,其他结构可参考通常设计。
(2)为了清晰起见,在用于描述本发明的实施例的附图中,层或结构的厚度和尺寸被放大。可以理解,当诸如层、膜、区域或基板之类的元件被称作位于另一元件“上”或“下”时,该元件可以“直接”位于另一元件“上”或“下”,或者可以存在中间元件。
(3)在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合以得到新的实施例。
以上所述仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (30)
1.一种动作资源的创建方法,包括:
接收第一创建请求,其中,所述第一创建请求包括第一目标资源;
根据所述第一创建请求创建所述第一动作资源,其中,所述第一动作资源为用于针对所述第一目标资源触发第一动作的资源,
其中,创建所述第一动作资源包括:
创建用于所述第一动作资源的第一动作状态属性,其中,所述第一动作状态属性表示所述第一动作的状态。
2.根据权利要求1所述的方法,其中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一动作时间属性,
其中,所述第一动作时间属性用于指示与所述第一动作相关的时间参数。
3.根据权利要求2所述的方法,还包括:
接收第二创建请求,其中,所述第二创建请求包括第二目标资源;
根据所述第二创建请求创建所述第二动作资源,其中,所述第二动作资源为用于针对所述第二目标资源触发第二动作的资源,在满足第二触发条件的情况下,针对所述第二目标资源触发所述第二动作,
其中,创建所述第二动作资源包括:
创建用于所述第二动作资源的第二动作状态属性,其中,所述第二动作状态属性表示所述第二动作的状态。
4.根据权利要求3所述的方法,其中,创建所述第二动作资源还包括:创建用于所述第二动作资源的第二动作时间属性,
其中,所述第二动作时间属性用于指示与所述第二动作相关的时间参数。
5.根据权利要求3所述的方法,其中,所述第一目标资源和所述第二目标资源为同一个目标资源,所述第一动作和所述第二动作彼此冲突。
6.根据权利要求4所述的方法,其中,所述第一创建请求还包括依赖资源信息,创建所述第一动作资源还包括:
根据所述依赖资源信息,创建用于所述第一动作资源的第一依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,在同时满足第一触发条件和所述第一依赖条件的情况下,针对所述第一目标资源触发所述第一动作;或者
根据所述依赖资源信息,创建用于所述第一动作资源的第二依赖子资源,其中,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足第一触发条件和所述第二依赖条件的情况下,针对所述第一目标资源触发所述第一动作;或者
根据所述依赖资源信息,创建用于所述第一动作资源的第一依赖子资源和第二依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第二依赖子资源包括第二依赖条件,所述第一依赖条件与所述第二动作状态属性相关,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第一依赖条件和所述第二依赖条件至少之一和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作。
7.根据权利要求6所述的方法,其中,
创建所述第一动作资源还包括:
创建用于所述第一动作资源的第一相反动作属性和第一状态控制属性,
创建所述第二动作资源还包括:
创建用于所述第二动作资源的第二相反动作属性和第二状态控制属性,其中,所述第一相反动作属性表示所述第二动作资源的标识码,且所述第二相反动作属性表示所述第一动作资源的标识码,所述第一状态控制属性表示是否改变所述第一动作状态属性的属性值或所述第二动作状态属性的属性值,所述第二状态控制属性表示是否改变所述第二动作状态属性的属性值或所述第一动作状态属性的属性值。
8.根据权利要求6或7所述的方法,其中,所述第一依赖条件包括所述第二动作状态属性的属性值和第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,
所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
9.根据权利要求3所述的方法,其中,所述第一创建请求还包括冲突策略资源信息,
创建所述第一动作资源还包括:
基于所述冲突策略资源信息,创建用于所述第一动作资源的冲突策略子资源。
10.根据权利要求9所述的方法,其中,
创建所述第一动作资源还包括:
基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第一依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,在同时满足所述第一依赖条件和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作;或者
创建所述第一动作资源还包括:
基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第二依赖子资源,其中,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第二依赖条件和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作;或者
创建所述第一动作资源还包括:
基于所述第二目标资源、所述第二动作和所述冲突策略子资源满足匹配条件,创建用于所述第一动作资源的第一依赖子资源和第二依赖子资源,其中,所述第一依赖子资源包括第一依赖条件,所述第一依赖条件与所述第二动作状态属性相关,所述第二依赖子资源包括第二依赖条件,所述第二依赖条件与所述第二动作时间属性相关,在同时满足所述第一依赖条件和所述第二依赖条件至少之一和第一触发条件的情况下,针对所述第一目标资源触发所述第一动作。
11.根据权利要求9所述的方法,其中,创建用于所述第一动作资源的冲突策略子资源包括:
创建用于所述第一动作资源的冲突目标资源标识属性和冲突执行方法属性,
其中,所述冲突目标资源标识属性表示所述第一目标资源的标识码,所述冲突执行方法属性表示与所述第一动作相冲突的动作,
满足所述匹配条件包括:所述第二目标资源的标识码和所述冲突目标资源标识属性相同,所述第二动作和所述冲突执行方法属性表示的动作相同。
12.根据权利要求11所述的方法,其中,创建用于所述第一动作资源的冲突策略子资源还包括:
创建用于所述第一动作资源的冲突状态属性,
其中,所述冲突状态属性的属性值包括第一设定值或第二设定值。
13.根据权利要求12所述的方法,其中,所述冲突状态属性的属性值为所述第一设定值,所述第一依赖条件包括所述第二动作状态属性的属性值和所述第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,
所述第二动作资源还包括第二动作时间属性,所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
14.根据权利要求2所述的方法,其中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一状态自动控制时间属性,
其中,所述第一动作状态属性的属性值包括第一设定值和第二设定值,所述第一设定值和所述第二设定值彼此相反,
所述第一状态自动控制时间表示:基于所述第一动作状态属性的属性值为所述第一设定值,且所述第一动作时间属性的属性值大于或等于所述第一状态自动控制时间属性的属性值,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
15.根据权利要求1所述的方法,其中,创建所述第一动作资源还包括:创建用于所述第一动作资源的第一状态自动控制时间属性,
其中,所述第一动作状态属性的属性值包括第一设定值和第二设定值,所述第一设定值和所述第二设定值彼此相反,
所述第一状态自动控制时间表示:基于所述第一动作状态属性的属性值为所述第一设定值,且所述第一状态自动控制时间属性的属性值等于0,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
16.一种动作的执行方法,包括:
确定第一动作资源,其中,所述第一动作资源为用于针对第一目标资源触发第一动作的资源,所述第一动作资源包括第一动作状态属性,所述第一动作状态属性表示所述第一动作的状态;
针对所述第一目标资源触发所述第一动作;
在触发所述第一动作后,设置所述第一动作状态属性的属性值为第一设定值。
17.根据权利要求16所述的执行方法,其中,针对所述第一目标资源触发所述第一动作包括:
接收第一数据资源;
基于所述第一数据资源满足第一触发条件,针对所述第一目标资源触发所述第一动作。
18.根据权利要求16所述的执行方法,其中,所述第一动作资源还包括第一动作时间属性,所述第一动作时间属性用于指示与所述第一动作相关的时间参数,
所述执行方法还包括:
在触发所述第一动作后,设置所述第一动作时间属性的属性值。
19.根据权利要求18所述的执行方法,其中,所述第一动作资源还包括第一状态自动控制时间属性,所述执行方法还包括:
获取所述第一动作时间属性的属性值;
判断所述第一动作时间属性的属性值是否大于或等于所述第一状态自动控制时间属性的属性值,且在所述第一动作时间属性的属性值大于或等于所述第一状态自动控制时间属性的属性值时,将所述第一动作状态属性的属性值从所述第一设定值变为第二设定值,
其中,所述第一设定值和所述第二设定值彼此相反。
20.根据权利要求18所述的执行方法,其中,所述第一动作资源还包括第一依赖子资源,所述第一依赖子资源包括第一依赖条件,针对所述第一目标资源触发所述第一动作包括:
接收第一数据资源;
获取第二动作资源的第二动作状态属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作状态属性,所述第二动作状态属性表示所述第二动作的状态;
基于所述第一数据资源满足第一触发条件且所述第二动作状态属性的属性值满足所述第一依赖条件,针对所述第一目标资源触发所述第一动作;或者
所述第一动作资源还包括第二依赖子资源,所述第二依赖子资源包括第二依赖条件,针对所述第一目标资源触发所述第一动作包括:
接收第一数据资源;
获取第二动作资源的第二动作时间属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作时间属性,所述第二动作时间属性用于指示与所述第二动作相关的时间参数;
基于所述第一数据资源满足第一触发条件且所述第二动作时间属性的属性值满足所述第二依赖条件,针对所述第一目标资源触发所述第一动作。
21.根据权利要求18所述的执行方法,其中,所述第一动作资源还包括第一依赖子资源和第二依赖子资源,所述第一依赖子资源包括第一依赖条件,所述第二依赖子资源包括第二依赖条件,
针对所述第一目标资源触发所述第一动作包括:
接收第一数据资源;
获取第二动作资源的第二动作状态属性和第二动作时间属性,其中,所述第二动作资源为用于针对第二目标资源触发第二动作的资源,所述第二动作资源包括所述第二动作状态属性和所述第二动作时间属性,所述第二动作状态属性表示所述第二动作的状态,所述第二动作时间属性用于指示与所述第二动作相关的时间参数;
基于所述第一数据资源满足第一触发条件且所述第二动作状态属性的属性值满足所述第一依赖条件和/或所述第二动作时间属性的属性值满足所述第二依赖条件的情况下,针对所述第一目标资源触发所述第一动作。
22.根据权利要求20或21所述的执行方法,其中,所述第一依赖条件包括所述第二动作状态属性的属性值和所述第一设定值满足第一预设逻辑关系,所述第一设定值为有效或无效,
所述第二依赖条件包括所述第二动作时间属性的属性值和预置动作时间满足第二预设逻辑关系。
23.根据权利要求20或21所述的执行方法,其中,所述第一目标资源和所述第二目标资源为同一个目标资源,所述第一动作和所述第二动作彼此冲突。
24.根据权利要求20或21所述的执行方法,还包括:
在触发所述第一动作后,设置所述第二动作状态属性的属性值为第二设定值,其中,所述第一设定值和所述第二设定值彼此相反;
确定所述第二动作资源;
接收第二数据资源;
基于所述第二数据资源满足第二触发条件,针对所述第二目标资源触发所述第二动作,且在触发所述第二动作后,将所述第二动作状态属性的属性值从所述第二设定值变为所述第一设定值,将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值。
25.根据权利要求24所述的执行方法,其中,所述第一动作资源还包括第一相反动作属性和第一状态控制属性,所述第二动作资源还包括第二相反动作属性和第二状态控制属性,所述第一相反动作属性表示所述第二动作资源的标识码,且所述第二相反动作属性表示所述第一动作资源的标识码,
在执行设置所述第二动作状态属性的属性值为第二设定值的操作之前,所述执行方法还包括:判断所述第一状态控制属性的属性值是否为真,在确定所述第一状态控制属性的属性值为真的情况下,执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在确定所述第一状态控制属性的属性值不为真的情况下,不执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,
在执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作之前,所述执行方法还包括:判断所述第二状态控制属性的属性值是否为真,在确定所述第二状态控制属性的属性值为真的情况下,执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作,在确定所述第二状态控制属性的属性值不为真的情况下,不执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作;或者
在执行设置所述第二动作状态属性的属性值为第二设定值的操作之前,所述执行方法还包括:判断所述第二状态控制属性的属性值是否为真,在确定所述第二状态控制属性的属性值为真的情况下,执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,在确定所述第二状态控制属性的属性值不为真的情况下,不执行设置所述第二动作状态属性的属性值为所述第二设定值的操作,
在执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作之前,所述执行方法还包括:判断所述第一状态控制属性的属性值是否为真,在确定所述第一状态控制属性的属性值为真的情况下,执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作,在确定所述第一状态控制属性的属性值不为真的情况下,不执行将所述第一动作状态属性的属性值从所述第一设定值变为所述第二设定值的操作。
26.根据权利要求24所述的执行方法,还包括:
在触发所述第二动作后,设置所述第二动作时间属性的属性值。
27.根据权利要求18所述的执行方法,其中,设置所述第一动作时间属性的属性值包括:
在触发所述第一动作后,建立动作执行计时器以开始计时,将所述动作执行计时器的时间值作为所述第一动作时间属性的属性值。
28.一种电子装置,包括:
存储器,用于非暂时性存储计算机可读指令;以及
处理器,用于运行所述计算机可读指令,
其中,所述计算机可读指令被所述处理器运行时执行根据权利要求1-15任一项所述的创建方法。
29.一种电子装置,包括:
存储器,用于非暂时性存储计算机可读指令;以及
处理器,用于运行所述计算机可读指令,
其中,所述计算机可读指令被所述处理器运行时,使得所述处理器执行根据权利要求16-27任一项所述的执行方法。
30.一种计算机可读存储介质,非暂时性地存储计算机可读指令,其中,当所述计算机可读指令由计算机执行时,使得所述计算机执行根据权利要求1-15任一项所述的创建方法或者执行根据权利要求16-27任一项所述的执行方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910893658.2A CN112540540A (zh) | 2019-09-20 | 2019-09-20 | 动作资源的创建方法、执行方法、电子装置和存储介质 |
US17/642,976 US20220334841A1 (en) | 2019-09-20 | 2020-09-14 | Method for creating and executing action resource, and electronic device |
PCT/CN2020/115002 WO2021052284A1 (zh) | 2019-09-20 | 2020-09-14 | 动作资源的创建方法及执行方法、电子装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910893658.2A CN112540540A (zh) | 2019-09-20 | 2019-09-20 | 动作资源的创建方法、执行方法、电子装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112540540A true CN112540540A (zh) | 2021-03-23 |
Family
ID=74884542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910893658.2A Pending CN112540540A (zh) | 2019-09-20 | 2019-09-20 | 动作资源的创建方法、执行方法、电子装置和存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220334841A1 (zh) |
CN (1) | CN112540540A (zh) |
WO (1) | WO2021052284A1 (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016122023A1 (ko) * | 2015-01-30 | 2016-08-04 | 전자부품연구원 | 사물인터넷 시스템에서 우선순위 기반 리소스 제어 방법 |
CN104865837A (zh) * | 2015-05-29 | 2015-08-26 | 北京东方海岸物联网科技有限责任公司 | 一种基于物联网的新型智能家居监控系统 |
EP3326410B1 (en) * | 2015-07-23 | 2021-03-24 | Intel IP Corporation | Apparatus, system and method of cellular-assisted wlan regulatory information |
WO2018141090A1 (en) * | 2017-02-04 | 2018-08-09 | Qualcomm Incorporated | Coupling aperiodic channel state information (csi) reference symbol (rs) (csi-rs) structure with feedback content and reporting timing |
WO2019046214A1 (en) * | 2017-08-28 | 2019-03-07 | Sigma Designs, Inc. | EXTERNAL MICROCONTROLLER COMMUNICATIONS |
CN109871218A (zh) * | 2017-12-04 | 2019-06-11 | 北京京东尚科信息技术有限公司 | 管理智能设备的方法和装置 |
CN109901924A (zh) * | 2017-12-08 | 2019-06-18 | 北京元比特科技有限责任公司 | 一种通用的万物互联的软件技术及方法 |
CN108965400B (zh) * | 2018-06-25 | 2020-03-31 | 阿里巴巴集团控股有限公司 | 一种信息的处理方法、装置、设备及系统 |
JP6523589B1 (ja) * | 2018-09-21 | 2019-06-05 | 三菱電機株式会社 | 通信装置、通信システム、通信方法および通信プログラム |
-
2019
- 2019-09-20 CN CN201910893658.2A patent/CN112540540A/zh active Pending
-
2020
- 2020-09-14 WO PCT/CN2020/115002 patent/WO2021052284A1/zh active Application Filing
- 2020-09-14 US US17/642,976 patent/US20220334841A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220334841A1 (en) | 2022-10-20 |
WO2021052284A1 (zh) | 2021-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10147308B2 (en) | Method and system for consolidating events across sensors | |
US10768644B2 (en) | Camera data access based on subscription status | |
US10803717B2 (en) | Security application for residential electrical switch sensor device platform | |
US20160132031A1 (en) | Data Processing Systems and Methods for Smart Hub Devices | |
US20160189513A1 (en) | Situationally Aware Alarm | |
US10009914B2 (en) | Bandwidth throttling based on home occupancy | |
CN104137007A (zh) | 用于针对楼宇自动化和控制系统的访问判决评估的系统和方法 | |
EP3185091B1 (en) | Systems and methods for learning and controlling area zones | |
JP7271799B2 (ja) | Wifi接続を用いたユーザの存在および不在の判断 | |
US9915930B2 (en) | Smart-home control platform having morphable locus of machine intelligence based on characteristics of participating smart-home devices | |
CN112540540A (zh) | 动作资源的创建方法、执行方法、电子装置和存储介质 | |
US11355004B2 (en) | Systems and methods of security system access and sharing temporal event-based notifications and access to devices of designated persons | |
WO2021052273A1 (zh) | 动作资源的创建方法、执行方法、电子装置和存储介质 | |
CN110333663B (zh) | 设置智能家居管理权限的方法、系统及计算机储存介质 | |
US20220197258A1 (en) | Action trigger method and apparatus | |
WO2020233488A1 (zh) | 创建动作资源的方法、装置、电子设备以及存储介质 | |
US20220317913A1 (en) | Systems and methods of attaching data and its lifetime to a relationship between entites | |
KR102074259B1 (ko) | 온톨로지 기반의 상황 추론 기법을 이용한 거주공간관리서비스 제공 장치 및 그 방법 |
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 |