创建动作资源以及针对目标资源触发操作的方法和装置与流程

文档序号:23014144发布日期:2020-11-20 12:17阅读:166来源:国知局
创建动作资源以及针对目标资源触发操作的方法和装置与流程

本公开涉及物联网领域,具体涉及一种创建动作资源以及针对目标资源触发操作的方法和装置。



背景技术:

在物联网系统中,作为应用程序的应用实体可以在作为服务平台的通用服务实体上部署服务。在将服务部署到服务平台后,实现该服务的过程可以无需应用程序的参与,而是可以直接在服务平台上实现该服务的操作。例如,服务平台可以为多个不同的应用程序提供公共服务功能。



技术实现要素:

为此,本公开提供了一种创建动作资源以及针对目标资源触发操作的方法和装置。

根据本公开的一方面,提供了一种由通用服务实体执行的创建动作资源的方法,包括:接收第一动作资源的创建请求,其中所述创建请求包括目标资源以及第一规则,所述第一规则用于针对所述目标资源根据第一条件触发第一操作;根据所述目标资源确定第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对所述目标资源根据第二条件触发第二操作;以及基于所述第二条件确定用于第一动作的依赖条件;以及根据所述依赖条件创建所述第一动作资源,其中所述第一动作用于在同时满足所述第一条件和所述依赖条件的情况下,针对所述目标资源触发所述第一操作。

在一些实施例中,根据所述目标资源确定第二动作资源包括:确定包括至少一个候选动作资源的动作资源列表,其中所述至少一个候选动作资源中的每一个包括所述目标资源;从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源。

在一些实施例中,所述第二操作与所述第一操作是不同的。

在一些实施例中,所述第二操作与所述第一操作是相反的。

在一些实施例中,所述第二动作资源的优先级高于所述第一动作资源的优先级。

在一些实施例中,所述第一动作资源的优先级是根据所述目标资源和所述第一规则中的至少一项确定的。

在一些实施例中,所述第二条件是预设变量大于第一阈值,依赖条件是预设变量小于等于第一阈值。

在一些实施例中,所述依赖条件是预设变量小于等于第二阈值,其中所述第二阈值小于第一阈值。

根据本公开的另一方面,还提供了一种针对目标资源触发操作的方法,包括:确定第一主体资源;确定第一动作资源,其中所述第一动作资源用于在同时满足第一条件和依赖条件的情况下,针对目标资源触发第一操作;在所述第一主体资源满足第一条件的情况下,确定与所述依赖条件相关联的第二主体资源;当所述第二主体资源满足所述依赖条件时,针对所述目标资源触发第一操作。

在一些实施例中,所述方法还包括:在当所述第二主体资源不满足所述依赖条件时,确定与所述目标和所述第二主体资源关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作;在所述第二主体资源满足所述第二条件的情况下,针对所述目标资源触发第二操作。

根据本公开的又一方面,还提供了一种由通用服务实体执行的创建动作资源的装置,包括:接收单元,配置成接收第一动作资源的创建请求,其中所述创建请求包括目标资源以及第一规则,所述第一规则用于针对所述目标资源根据第一条件触发第一操作;资源确定单元,配置成根据所述目标资源确定第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作;依赖条件确定单元,配置成基于所述第二条件确定用于第一动作的依赖条件;以及创建单元,配置成根据所述依赖条件创建所述第一动作资源,其中所述第一动作用于在同时满足所述第一条件和所述依赖条件的情况下,针对所述目标资源触发所述第一操作;其中所述依赖条件是根据第二动作资源确定的。

在一些实施例中,所述资源确定单元还配置成:确定包括至少一个候选动作资源的动作资源列表,其中所述至少一个候选动作资源中的每一个包括所述目标资源;从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源。

在一些实施例中,所述第二操作与所述第一操作是不同的。

在一些实施例中,所述第二操作与所述第一操作是相反的。

在一些实施例中,所述第二动作资源的优先级高于所述第一动作资源的优先级。

在一些实施例中,所述第一动作资源的优先级是根据所述目标资源和所述第一规则中的至少一项确定的。

在一些实施例中,所述第二条件是预设变量大于第一阈值,依赖条件是预设变量小于等于第一阈值。

在一些实施例中,所述依赖条件是预设变量小于等于第二阈值,其中所述第二阈值小于第一阈值。

根据本公开的又一方面,还提供了一种针对目标资源触发操作的装置,包括:主体资源确定单元,配置成确定第一主体资源;动作确定单元,配置成确定第一动作资源,其中所述第一动作资源用于在同时满足第一条件和依赖条件的情况下,针对目标资源触发第一操作;依赖确定单元,配置成当所述第一主体资源满足第一条件的时,确定与所述依赖条件相关联的第二主体资源;以及触发单元,配置成当所述第二主体资源满足所述依赖条件时,针对所述目标资源触发第一操作;其中所述依赖条件是根据第二动作资源确定的。

在一些实施例中,当所述第二主体资源不满足所述依赖条件时,所述动作确定单元还配置成确定与所述目标和所述第二主体资源关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作;以及所述触发单元还配置成在所述第二主体资源满足所述第二条件的情况下,针对所述目标资源触发第二操作。

利用本公开提供的方法和装置,通过根据第一动作的资源的创建请求中包括的目标资源确定针对相同目标资源触发操作的第二动作资源,并根据第二动作资源的触发条件确定第一动作的依赖条件,从能够实现避免不同动作资源的规则之间的相互冲突,提升了动作的执行效率。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员而言,在没有做出创造性劳动的前提下,还可以根据这些附图获得其他的附图。以下附图并未刻意按实际尺寸等比例缩放绘制,重点在于示出本公开的主旨。

图1公开了根据本公开的物联网示意性的架构图;

图2示出了根据本公开的实施例的服务器/客户端设备的示意图;

图3a示出了根据本公开的实施例的在物联网平台中进行动作触发的过程的示意性的示例;

图3b示出了根据本申请的实施例的动作资源的示例;

图4示出了根据本公开的实施例的由通用服务实体执行的创建动作资源的方法的流程图;

图5a示出了根据本公开的实施例的创建动作资源的一种示意性的示例;

图5b示出了根据本公开的实施例的创建动作资源的一种示意性的示例;

图6示出了根据本公开的实施例的针对目标资源触发操作的方法的示意性的流程图;

图7示出了根据本公开的实施例的针对目标资源触发操作的示意性的示例;

图8示出了根据本公开的实施例的由通用服务实体执行的创建动作资源的装置的示意性的框图;以及

图9示出了根据本公开的实施例的针对目标资源触发操作的装置的示意性的框图。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚,以下举实施例对本公开作进一步详细说明。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。

随着信息技术尤其是互联网技术的发展,用于实现信息化、远程管理控制和智能化的网络的物联网技术正逐渐成熟。物联网利用局部网络或互联网等通信技术把传感器、控制器、机器、人员和物等通过新的方式联接在一起,形成人与物、物与物相联。物联网是互联网的延伸,它包括互联网及互联网上所有的资源,兼容互联网所有的应用。随着物联网技术在各个领域的应用,出现了诸如智能家居、智能交通、智慧健康等各种新的应用领域。

图1公开了根据本公开的物联网示意性的架构图。如图1所示,各种终端的客户端设备接入网络,并且通过网络接入到通用服务层,而通用服务层支持各种应用,从而形成了终端+网络+应用的架构。例如,在智能家居领域,各种家用设备可以利用局域网(lan)接入通用服务平台,这样的局域网接入可以采用诸如无线或者有线方式。可选地,所述局域网可以是个域网(pan),例如以无线个域网(wpan)为例,可以采用bluetooth、irda、homerf、zigbee、或uwb(ultra-widebandradio)等各种技术来实现接入。

如前所述,当物联网实体(例如,物联网终端设备或者节点设备中的软件模块)将数据或信息传输到通用服务实体后,该数据或信息可以作为单独的资源进行存储。此外,物联网实体可以向通用服务实体发送请求,从而更新通用服务实体上存储的与该物联网实体对应的资源,以便反映该物联网实体所运行的设备的状态。这种更新可以是实时的或者是周期性的,抑或可以由某一条件进行触发。由此,与该通用服务实体通信的其他物联网实体可以通过访问更新的资源,而获悉该物联网实体所对应的设备的状态;或者,与该通用服务实体通信的其他物联网实体可以对更新的资源进行操作。应注意,这里所称的资源,包括各种实体(例如,可以体现为物联网设备中的软件模块,诸如ae、cse等实体)的资源。实体可以表示一通信设备的软件模块,而通用服务实体可以表示服务平台的软件模块,而服务平台可以是本地的或者是远程的。可选地,对更新的资源进行操作包括,例如,获取更新的资源的信息、删除更新的资源的信息、将更新的资源的信息通知给第三方,或者基于更新的资源的信息对其他资源进行操作。

在本公开中,所描述的实体,例如应用实体ae,通用服务实体cse,以及数据等都可以通过资源进行表示。资源可以具有唯一的标识,其包括属性和子资源,其中属性用来存储资源相关的信息,子资源是资源的下一级资源,资源包括指向子资源的索引。

表1中以智能家居为例示出了该物联网环境中可能存在的动作的示例。

表1

如表1所示,根据不同的使用场景,在不同的情况下可以为同一个目标对象设置多个不同的动作资源。其中,针对同一个目标对象设置的动作资源的触发条件可以是不同的,针对该目标对象设置的操作可以是相同或不同。表1中示出的触发事件仅是一种示意性的示例,事实上,本领域技术人员可以根据实际情况设置任何动作触发事件。在一些实施例中,动作触发事件可以被划分为位置事件(设置某个位置产生事件)、时间时间(设置某个时间产生事件)、操作事件(设置某个操作产生事件)以及用户事件(感知某个用户存在)。

例如,从表1中可以看出,针对小灯的操作可以包括开启和关闭。例如,当检测到夜间或睡眠期间主人起床时,可以开启小灯。当检测到梦后或睡眠期间躺床上,可以关闭小灯。又例如,当检测到晴天、煤气泄露或烟雾报警时,可以开启窗户。当检测到阴天、雨天或雪天时,可以关闭窗户。

在一些实施例中,动作资源也可以是针对多个目标的。例如,当位置传感器检测到一定范围内有人存在时,可以控制多个目标对象(例如空调、灯等)开启。

在另一些实施例中,动作资源也可以为针对目标资源的操作设置多个触发条件。例如,当温度传感器检测到温度高于或低于预设的温度阈值,并且人体感应器检测到房间里有人的情况下,可以控制空调开启。

根据表1可以看出,由于智能家居的操作环境复杂,因此针对同一目标对象可能存在多个不同的动作资源。因此,可能存在针对同一目标对象的互相冲突的操作指令。例如,在阴雨天气的条件下,服务器将控制窗户关闭,然而,如果同时烟雾报警器检测到空气中烟雾含量超标,那么服务器将控制窗户开启。在这种情况下,如果先检测到空气中烟雾含量超标,服务器将控制窗户开启,如果之后又检测到下雨,那么服务器反而将控制窗户关闭。

可以理解的是,如果烟雾报警器检测到空气中烟雾含量超标,那意味着可能房间内可能出现例如着火这样的紧急情况。在这种情况下,如果在服务器因为检测到下雨而控制窗户关闭,那么可能给房间里的人造成危险。

此外,如果针对同一目标资源的两个不同操作的触发条件被同时满足,服务器将很难实现对目标资源的有效控制。

为此,本公开提供了一种新的创建动作资源的方法。

图1示出了根据本公开的实施例的服务器/客户端设备的示意图。在物联网系统中,可以利用服务器实现上述服务平台,利用客户端设备实现上述的终端设备。

图2是根据本公开的一些实施例的计算机设备的架构。这种计算机设备可以用于实现本公开中披露的服务器设备或客户端设备。这类计算机可以包括个人电脑、笔记本电脑、平板电脑、手机、个人数码助理(personaldigitalassistance,pda)、智能眼镜、智能手表、智能指环、智能头盔及任何智能便携设备或可穿戴设备。在一些实施例中,利用图2中示出的计算设备的架构也可以实现物联网系统中各种智能家居的终端设备,例如智能开关、智能网关、智能电饭煲、智能净化器等。本实施例中的特定系统利用功能框图解释了一个包含用户界面的硬件平台。这种计算机设备可以是一个通用目的的计算机设备,或一个有特定目的的计算机设备。两种计算机设备都可以被用于实现本实施例中的服务器设备或终端的客户端设备。计算机系统200可以实施当前描述的提供物联网通信所需要的信息的任何组件。例如:计算机系统200能够被计算机设备通过其硬件设备、软件程序、固件以及它们的组合所实现。为了方便起见,图2中只绘制了一台计算机设备,但是本实施例所描述的提供物联网通信所需要的信息的相关计算机功能是可以以分布的方式、由一组相似的平台所实施的,分散系统的处理负荷。

计算机系统200可以包括通信端口250,与之相连的是实现数据通信的网络。计算机系统200还可以包括一个处理器220,用于执行程序指令。所述处理器220可以由至少一个处理器组成。计算机200可以包括一个内部通信总线210。计算机200可以包括不同形式的程序储存单元以及数据储存单元,例如硬盘270,只读存储器(rom)230,随机存取存储器(ram)240,能够用于存储计算机处理和/或通信使用的各种数据文件,以及处理器220所执行的可能的程序指令。计算机系统200还可以包括一个输入/输出组件260,支持计算机系统200与其他组件(如用户界面280)之间的输入/输出数据流。计算机系统200也可以通过通信端口250发送和接收信息及数据。

在一些实施例中,上述计算机系统200可以用于组成物联网通信系统中的服务器。物联网通信系统的服务器可以是一个服务器硬件设备,或一个服务器群组。一个服务器群组内的各个服务器可以通过有线的或无线的网络进行连接。一个服务器群组可以是集中式的,例如数据中心。一个服务器群组也可以是分布式的,例如一个分布式系统。

利用图2中提供的计算设备可以实现本公开中涉及的客户端应用实体ae、客户端通用服务实体cse、服务器端应用实体ae和/或服务器端通用服务实体cse。

以上概述了提供物联网通信的数据通信所需要的信息的方法的不同方面和/或通过程序实现其他步骤的方法。技术中的程序部分可以被认为是以可执行的代码和/或相关数据的形式而存在的“产品”或“制品”,通过计算机可读的介质所参与或实现的。有形的、永久的储存介质可以包括任何计算机、处理器、或类似设备或相关的模块所用到的内存或存储器。例如,各种半导体存储器、磁带驱动器、磁盘驱动器或者类似任何能够为软件提供存储功能的设备。

图3a示出了根据本公开的实施例的在物联网平台中进行动作触发的过程的示意性的示例。

如图3a所示,在第1步中,检测主体资源的改变,并且主体资源的改变符合定义的触发条件。当该触发条件被满足时,触发针对目标资源的操作以改变目标资源的状态。

在第2步中,在执行操作之前,需要确认是否所有的依赖条件已经被满足。

在第3步中,如果所有依赖条件已经满足,可以确定用于操作的输入参数。这样的输入参数将通过读取动作资源的输入属性而得到。

在第4步中,可以将操作发送至目标资源,该操作可以是创建、更新、删除或通知等任何操作。

在第5步中,在针对目标资源执行操作以后,可以改变目标资源的状态以实现对于特定设备的开/关。

在本公开提供的实施例中,以针对窗户执行的操作为例,利用图3a中示出的过程,服务器可以向窗户控制器发送通知以控制窗户的开启和关闭。在下文的描述中为了描述方便,也可以认为动作资源的目标资源是窗户。

图3b示出了根据本申请的实施例的动作(<action>)资源的示例。

如图3b所示,动作资源可以包括至少一个属性和/或子资源。例如,动作资源<action>可以包括指示该动作资源的优先级的优先级属性(priority)、表示该动作资源的待检测对象的主体资源属性(actionsubjectresource)、表示该动作资源的动作触发条件的过滤规则属性(filtercriteria)、表示该动作资源的触发模式的触发控制属性(evalcontrol)、表示该动作资源的控制目标的目标属性(objectresource)、表示该动作资源的操作方式的操作属性(operation)、表示该操作的操作参数的输入属性(input)、表示该动作资源的操作结果的输出资源属性(outputresource)、表示该动作资源的动作结果的动作结果属性(actionresult)以及表示该动作资源所执行的动作的依赖条件的依赖子资源(<dependency>)。

其中,该动作资源的主体资源属性可以以预定义的方式进行更新。例如,注册在服务器上的应用实体可以以定期或响应于预设事件的发生的方式向服务器发送信息,以更新所述主体资源属性。当从应用实体接收的信息使得动作资源的主体资源满足该动作资源的动作触发条件时,可以针对该动作资源的目标属性执行预设的操作。在本文中,主体资源属性也可以简称为主体资源。

在一些实施例中,过滤规则属性可以包括至少一个触发条件,依赖子资源可以包括至少一个依赖条件。图3b示出的动作资源用于在满足过滤规则属性中包含的触发条件以及依赖子资源中包括的依赖条件的情况下,可以针对目标属性中包括的目标执行预设的操作,即在操作属性中定义的操作。

图3b中示出的各属性和子资源之前的数字表示该属性或子资源是否是可选的。例如,目标属性之前的数字1表示该目标资源属性是必选的。也就是说,所有的动作资源中都需要定义目标属性,即该动作资源实现的动作的目标对象。又例如,优先级属性之前的数字0..1表示该优先级属性是可选的。也就是说,并非所有的动作资源中都必需包括优先级属性。再例如,依赖子资源之前的数字0..n表示该依赖子资源也是可选的。

尽管本公开中示出了实现动作资源的一种示意性的示例,然而,本领域技术人员可以理解,根据实际情况不同,也可以利用其他方式设置上述动作资源。

图4示出了根据本公开的实施例的由通用服务实体执行的创建动作资源的方法的流程图。图4中示出的方法400可以由前述通用服务实体执行。例如。以智能家居的使用环境为例,上述通用服务实体可以实现为家庭管理服务器,应用实体可以实现为家庭管理应用(例如人体感应器、温度传感器、门窗传感器等)。

如图4所示,在步骤s402中,可以接收第一动作资源的创建请求,其中所述创建请求包括目标资源以及第一规则,所述第一规则用于根据第一条件针对所述目标资源触发第一操作。

其中,第一动作资源可以是用于实现第一动作的资源。例如,当应用程序希望在服务平台上部署一个动作时,可以向服务平台发送这样的动作资源的创建请求。例如,家庭管理应用可以在家庭管理服务器上部署这样一个动作:当检测到空气中的一氧化碳的浓度高于阈值a时,针对窗户执行打开操作。其中空气中一氧化碳的浓度可以由注册到服务平台的一氧化碳传感器检测,针对窗户的打开操作可以由注册到服务平台的窗户控制器执行。

在步骤s404中,可以根据所述目标资源确定第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对所述目标资源根据第二条件触发第二操作。以智能家居的使用环境为例,可以理解的是,当在智能家居的物联网环境中存在多个智能控制设备的情况下,应用程序可以对同一个目标对象部署多个服务,即针对同一个目标对象创建多个动作资源,其中每个动作资源的针对该目标对象执行的操作和该操作的触发条件可以是不同的。

在接收到动作资源的创建请求时,可以根据动作资源中的目标资源在服务器存储的多个资源中确定具有相同目标资源的其他动作资源作为第二动作资源。根据第二动作资源中涉及的针对相同目标资源的触发条件,可以确定要创建的动作资源的依赖条件。

在一些实施例中,可以确定包括至少一个候选动作资源的动作资源列表,其中所述至少一个候选动作资源中的每一个包括所述目标资源。然后,可以从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源。

在一种实现方式中,在从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源时,可以根据候选动作资源中针对目标资源的操作进行选择。例如,如果候选动作资源针对目标资源执行的第二操作与上述第一操作不同,那么可以选择该候选动作资源作为第二动作资源。在一个示例中,第一操作可以指的是将空调设置为25℃,第二操作可以指的是将空调设置为18℃。又例如,如果候选动作资源针对目标资源执行的第二操作与上述第一操作相反,那么可以选择该候选动作资源作为第二动作资源。在一个示例中,第一操作可以是开启窗户,第二操作可以是关闭窗户。

在另一种实现方式中,在从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源时,也可以根据候选动作资源的优先级进行选择。例如,可以将优先级高于第一动作资源的优先级的候选动作资源确定为第二动作资源。也就是说,第二动作资源的优先级高于第一动作资源的优先级。

在创建动作资源时,可以根据动作资源的创建请求中包括的目标资源和规则确定动作资源的优先级。在一个示例中,可以将安全类设备对应的动作资源的优先级设置为最高,防护类设备对应的动作资源的优先级设置为次高,以及将健康类设备对应的动作资源的优先级设置为最低。

例如,安全类设备可以指的是一氧化碳传感器、烟雾报警器等。防护类设备可以指的是雾霾传感器等,健康类设备可以指的是温度传感器等。

在步骤s406中,可以基于所述第二条件确定用于第一动作的依赖条件。

在一些实施例中,可以将不满足第二条件的条件确定为第一动作的依赖条件。在一种实现方式中,可以确定不同于第二条件的候选依赖条件集合,并将候选依赖条件集合中的至少一个确定为第一动作的依赖条件。例如,可以将与第二条件相反的条件设置为依赖条件。

例如,当所述第二条件是预设变量大于第一阈值a时,依赖条件可以被确定为预设变量小于等于第一阈值a。进一步地,依赖条件也可以是与第二条件相反的条件的任意条件,例如依赖条件可以被确定为预设变量小于等于第二阈值b,其中b<a。又例如,当第二条件是主人在家时,依赖条件可以被确定为主人不在家。

此外,依赖条件也可以是与第二条件不同的任意其他条件。当第二条件是天气是晴天时,依赖条件可以被确定为天气是雨天或天气是阴天。

在步骤s408中,可以根据所述依赖条件创建所述第一动作资源,其中所述第一动作用于在同时满足所述第一条件和所述依赖条件的情况下,针对所述目标资源触发所述第一操作。

利用本申请提供的创建动作资源的方法,可以根据针对相同目标的动作资源的触发条件确定将创建的动作资源的依赖条件,使得创建的动作资源涉及的动作需要在同时满足其本身的触发条件和依赖条件的情况下触发相应的动作,从而使得例如低优先级的规则不影响高优先级的规则的执行,避免了不同动作资源的规则之间的相互冲突,提升了动作的执行效率。

图5a示出了根据本公开的实施例的创建动作资源的一种示意性的示例。如图5a所示,服务器中已经存在动作1,其优先级被设置成7。动作1可以用于在一氧化碳(co)浓度大于等于阈值a的情况下开启窗户。

然后,服务器可以接收动作2的动作资源创建请求,其中动作2可以用于在雨量大于阈值b的情况下关闭窗户。

如前所述,根据动作2的目标资源(窗户)以及动作2的触发条件(雨量大于阈值b)可以将动作2的优先级设置成6。

在图5a示出的示例中,优先级的数值越小,表示优先级越低。本领域技术人员可以理解,在不脱离本公开原理的情况下,可以通过任何方式设置优先级的大小。例如,可以将优先级设置成数值越大,其优先级越低。

在图5a示出的示例中,根据动作2针对的目标资源窗户,可以将针对同样目标资源(窗户)的动作1确定为候选动作资源。然后,由于动作1的优先级高于动作2的优先级,因此,可以根据动作1的触发条件(一氧化碳浓度大于等于阈值a)确定动作2的依赖条件。例如,可以将动作1的触发条件取反,得到新的触发条件一氧化碳浓度小于阈值a,并将新的触发条件设置成动作2的依赖条件。

根据前述方法可以创建动作2的动作资源,其中动作2的触发条件是雨量大于阈值b,依赖条件是一氧化碳浓度小于阈值a。在这种情况下,当同时满足量大于阈值b、一氧化碳浓度小于阈值a的条件时,可以执行对窗户的关闭操作。

图5b示出了根据本公开的实施例的创建动作资源的一种示意性的示例。如图5b所示,服务器中已经存在动作1和动作2,其中动作1的优先级被设置成7,动作2的优先级被设置成6。动作1可以用于在一氧化碳(co)浓度大于等于阈值a的情况下开启窗户。动作2可以用于在雨量大于阈值b的情况下关闭窗户。

然后,服务器可以接收动作3的动作资源创建请求,其中动作3可以用于在雾霾参数大于阈值c的情况下关闭窗户,并同时开启净化器。根据动作3的目标资源(窗户和净化器)以及动作3的触发条件(雾霾参数大于阈值c)可以将动作3的优先级设置成5。

在图5b示出的示例中,根据动作3针对的目标资源窗户,可以将针对同样目标资源(窗户)的动作1和动作2确定为候选动作资源。然后,由于动作1针对窗户的操作和动作3针对窗户的操作相反,而动作2针对窗户的操作和动作3针对窗户的操作相同,并且动作1的优先级高于动作3,因此,可以根据动作1的触发条件(一氧化碳浓度大于等于阈值a)确定动作2的依赖条件。例如,可以将动作1的触发条件取反,得到新的触发条件一氧化碳浓度小于阈值a,并将新的触发条件设置成动作3的依赖条件。又例如,也可以根据触发条件“一氧化碳浓度大于等于阈值a”得到新的触发条件“一氧化碳浓度小于阈值d,其中d小于a”,并将所得到的新的触发条件设置成动作3的依赖条件。

针对动作3的另一目标资源净化器,如图5b所示,服务器中不存在另一同样针对净化器执行操作的动作资源,因此,不针对净化器设置相应的依赖条件。

在另一些实施例中,如果服务器中存在另一同样针对净化器执行操作的动作资源,那么可以利用本公开图4中提供的方法确定针对净化器执行操作的另一依赖条件。

根据前述方法可以创建动作2的动作资源,其中动作2的触发条件是雨量大于阈值b,依赖条件是一氧化碳浓度小于阈值a。在这种情况下,当同时满足量大于阈值b、一氧化碳浓度小于阈值a的条件时,可以执行对窗户的关闭操作。

图6示出了根据本公开的实施例的针对目标资源触发操作的方法的示意性的流程图。

如图6所示,在步骤s602中,可以确定第一主体资源。在一些实施例中,可以通过各种传感器接收传感数据以确定第一主体资源。例如,在智能家居的使用环境中,可以通过例如一氧化碳传感器、雨量传感器、雾霾传感器等传感器接收传感数据,并利用接收的传感数据更新第一主体资源。

在步骤s604中,可以根据所步骤s602中确定的主体资源确定第一动作资源,其中所述第一动作资源用于在同时满足第一条件和依赖条件的情况下,针对目标资源触发第一操作。其中所述依赖条件是根据第二动作资源确定的。

以第一主体资源为雨量传感器检测的雨量参数为例,可以基于雨量参数确定第一动作资源,其中所述第一动作资源用于在同时满足雨量大于阈值b、一氧化碳含量小于阈值a的情况下关闭窗户。

在步骤s606中,可以在所述第一主体资源满足第一条件的情况下,确定与所述依赖条件相关联的第二主体资源。例如,在雨量大于阈值b的情况下,可以确定与依赖条件(一氧化碳含量小于阈值a)相关联的第二主体资源,即一氧化碳含量。

在步骤s608中,当所述第二主体资源满足所述依赖条件时,针对所述目标资源触发第一操作。例如,当确定一氧化碳含量小于阈值a时,可以针对窗户触发关闭操作。

进一步地,在步骤s608中,当所述第二主体资源不满足所述依赖条件时,确定与所述目标和所述第二主体资源关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作。例如,当确定一氧化碳含量大于等于阈值a时,可以确定与窗户和一氧化碳相关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于在一氧化碳含量大于等于阈值a时针对窗户执行开启操作。

因此,当所述第二主体资源不满足所述依赖条件时,可以判断第二主体资源是否满足第二动作资源的第二条件,并且当第二主体资源满足第二动作资源的第二条件的情况下,可以针对所述目标资源触发第二操作。也就是说,即使在雨量大于阈值b的情况下,也需要判断第一动作资源的依赖条件,即一氧化碳含量小于阈值a的条件是否被满足。如果一氧化碳含量大于阈值a,那么可以判断一氧化碳含量是否满足第二动作资源的触发条件。如果一氧化碳含量满足第二动作资源的触发条件,那么根据第二动作资源针对窗户执行开启操作。

利用本公开提供的针对目标资源触发操作的方法,能够根据依赖条件判断动作的执行,避免使得例如低优先级的规则不影响高优先级的规则的执行,避免了不同动作资源的规则之间的相互冲突,提升了动作的执行效率。

图7示出了根据本公开的实施例的针对目标资源触发操作的示意性的示例。如图7所示,家庭管理应用ae1、一氧化碳传感器ae2、雨量传感器ae3以及窗户控制器ae4分别注册到家庭管理服务器cse。

家庭管理应用ae1可以向服务器cse发送动作资源(<action>)的创建请求,其中所述创建请求中包括动作触发主体(ae3)、目标资源(窗户)、触发条件(雨量大于阈值b)以及控制动作(关闭)。

根据家庭管理应用ae1发送的创建请求,服务器cse可以判断是否存在与该创建请求中包括的目标资源相同的其他动作资源。如果存在针对相同目标资源的另一动作资源,服务器cse可以利用本公开提供的方法根据另一动作资源的触发条件为ae1要创建的动作资源确定依赖条件。

例如,服务器cse可以比较ae1要创建的动作资源和针对相同目标资源的另一动作资源的优先级。如果针对相同目标资源的另一动作资源的优先级大于ae1要创建的动作资源的优先级,那么可以将另一动作资源针对目标资源执行操作的触发条件的反条件设置为ae1要创建的动作资源的依赖条件,并根据确定的依赖条件创建动作资源。

然后,服务器cse可以向ae1发送创建动作资源成功的响应。

在创建了动作资源之后,cse可以以定期的方式从ae3接收用于更新主体资源的更新请求。根据更新请求并向ae3发送更新响应。例如,cse可以从雨量传感器接收雨量信息,并向雨量传感器发送响应。然后cse可以判断从ae3接收的信息是否满足动作的触发条件以及动作的依赖条件。在满足动作的触发条件以及动作的依赖条件的情况下,可以向目标资源发送操作请求。例如,在满足雨量大于阈值b的触发条件以及一氧化碳小于阈值a的依赖条件的情况下,cse可以向窗户控制器发送操作请求以控制窗户关闭。窗户控制器可以根据接收的操作请求执行操作,并向cse发送操作响应信号。

图8示出了根据本公开的实施例的由通用服务实体执行的创建动作资源的装置的示意性的框图。

如图8所示,装置800可以包括接收单元810、动作资源确定单元820、依赖条件确定单元830以及创建单元840。

接收单元810可以配置成接收第一动作资源的创建请求,其中所述创建请求包括目标资源以及第一规则,所述第一规则用于根据第一条件针对所述目标资源触发第一操作。

其中,第一动作资源可以是用于实现第一动作的资源。例如,当应用程序希望在服务平台上部署一个动作时,可以向服务平台发送这样的动作资源的创建请求。例如,家庭管理应用可以在家庭管理服务器上部署这样一个动作:当检测到空气中的一氧化碳的浓度高于阈值a时,针对窗户执行打开操作。其中空气中一氧化碳的浓度可以由注册到服务平台的一氧化碳传感器检测,针对窗户的打开操作可以由注册到服务平台的窗户控制器执行。

动作资源确定单元820可以配置成根据所述目标资源确定第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对所述目标资源根据第二条件触发第二操作。以智能家居的使用环境为例,可以理解的是,当在智能家居的物联网环境中存在多个智能控制设备的情况下,应用程序可以对同一个目标对象部署多个服务,即针对同一个目标对象创建多个动作资源,其中每个动作资源的针对该目标对象执行的操作和该操作的触发条件可以是不同的。

在接收到动作资源的创建请求时,可以根据动作资源中的目标资源在服务器存储的多个资源中确定具有相同目标资源的其他动作资源作为第二动作资源。

在一些实施例中,可以确定包括至少一个候选动作资源的动作资源列表,其中所述至少一个候选动作资源中的每一个包括所述目标资源。然后,可以从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源。

在一种实现方式中,在从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源时,可以根据候选动作资源中针对目标资源的操作进行选择。可以根据候选动作资源针对目标资源所执行的动作进行选择。例如,如果候选动作资源针对目标资源执行的第二操作与上述第一操作不同,那么可以选择该候选动作资源作为第二动作资源。在一个示例中,第一操作可以指的是将空调设置为25℃,第二操作可以指的是将空调设置为18℃。又例如,如果候选动作资源针对目标资源执行的第二操作与上述第一操作相反,那么可以选择该候选动作资源作为第二动作资源。在一个示例中,第一操作可以是开启窗户,第二操作可以是关闭窗户。

在另一种实现方式中,在从所述动作资源列表中选择至少一个候选动作资源作为第二动作资源时,也可以根据候选动作资源的优先级进行选择。例如,可以将优先级高于第一动作资源的优先级的候选动作资源确定为第二动作资源。也就是说,第二动作资源的优先级高于第一动作资源的优先级。

依赖条件确定单元830可以配置成基于所述第二条件确定用于第一动作的依赖条件。

在一些实施例中,可以将不满足第二条件的条件确定为第一动作的依赖条件。在一种实现方式中,可以确定不同于第二条件的候选依赖条件集合,并将候选依赖条件集合中的至少一个确定为第一动作的依赖条件。例如,可以将与第二条件相反的条件设置为依赖条件。

例如,当所述第二条件是预设变量大于第一阈值a时,依赖条件可以被确定为预设变量小于等于第一阈值a。进一步地,依赖条件也可以是与第二条件相反的条件的任意条件,例如依赖条件可以被确定为预设变量小于等于第二阈值b,其中b<a。又例如,当第二条件是主人在家时,依赖条件可以被确定为主人不在家。

此外,依赖条件也可以是与第二条件不同的任意其他条件。当第二条件是天气是晴天时,依赖条件可以被确定为天气是雨天或天气是阴天。

创建单元840可以配置成根据所述依赖条件创建所述第一动作资源,其中所述第一动作用于在同时满足所述第一条件和所述依赖条件的情况下,针对所述目标资源触发所述第一操作。

利用本申请提供的创建动作资源的装置,可以根据针对相同目标的动作资源的触发条件确定将创建的动作资源的依赖条件,使得创建的动作资源涉及的动作需要在同时满足其本身的触发条件和依赖条件的情况下触发相应的动作,从而使得例如低优先级的规则不影响高优先级的规则的执行,避免了不同动作资源的规则之间的相互冲突,提升了动作的执行效率。

图9示出了根据本公开的实施例的针对目标资源触发操作的装置的示意性的框图。如图9所示,装置900可以包括主体资源确定单元910、动作确定单元920、依赖确定单元930以及触发单元940。

主体资源确定单元910可以配置成确定第一主体资源。在一些实施例中,可以通过各种传感器接收传感数据以确定第一主体资源。例如,在智能家居的使用环境中,可以通过例如一氧化碳传感器、雨量传感器、雾霾传感器等传感器接收传感数据,并利用接收的传感数据更新第一主体资源。

动作确定单元920可以配置成根据主体资源确定单元910所确定的的主体资源确定第一动作资源,其中所述第一动作资源用于在同时满足第一条件和依赖条件的情况下,针对目标资源触发第一操作。其中所述依赖条件是根据第二动作资源确定的。

以第一主体资源为雨量传感器检测的雨量参数为例,可以基于雨量参数确定第一动作资源,其中所述第一动作资源用于在同时满足雨量大于阈值b、一氧化碳含量小于阈值a的情况下关闭窗户。

依赖确定单元930可以配置成在所述第一主体资源满足第一条件的情况下,确定与所述依赖条件相关联的第二主体资源。例如,在雨量大于阈值b的情况下,可以确定与依赖条件(一氧化碳含量小于阈值a)相关联的第二主体资源,即一氧化碳含量。

触发单元940可以配置成当所述第二主体资源满足所述依赖条件时,针对所述目标资源触发第一操作。例如,当确定一氧化碳含量小于阈值a时,可以针对窗户触发关闭操作。

进一步地,当所述第二主体资源不满足所述依赖条件时,触发单元840可以配置成确定与所述目标和所述第二主体资源关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作。例如,当确定一氧化碳含量大于等于阈值a时,可以确定与窗户和一氧化碳相关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于在一氧化碳含量大于等于阈值a时针对窗户执行开启操作。

因此,当所述第二主体资源不满足所述依赖条件时,动作确定单元920还配置成动作确定单元还配置成确定与所述目标和所述第二主体资源关联的第二动作资源,其中所述第二动作资源包括第二规则,所述第二规则用于针对目标资源根据第二条件触发第二操作。可以判断第二主体资源是否满足第二动作资源的第二条件,并且当第二主体资源满足第二动作资源的第二条件的情况下,触发单元940还可以配置成针对所述目标资源触发第二操作。也就是说,即使在雨量大于阈值b的情况下,也需要判断第一动作资源的依赖条件,即一氧化碳含量小于阈值a的条件是否被满足。如果一氧化碳含量大于阈值a,那么可以判断一氧化碳含量是否满足第二动作资源的触发条件。如果一氧化碳含量满足第二动作资源的触发条件,那么根据第二动作资源针对窗户执行开启操作。

利用本公开提供的针对目标资源触发操作的装置,能够根据依赖条件判断动作的执行,避免使得例如低优先级的规则不影响高优先级的规则的执行,避免了不同动作资源的规则之间的相互冲突,提升了动作的执行效率。

一个计算机可读的介质可能有多种形式,包括有形的存储介质,载波介质或物理传输介质等。稳定的储存介质可以包括:光盘或磁盘,以及其他计算机或类似设备中使用的,能够实现图中所描述的系统组件的存储系统。不稳定的存储介质可以包括动态内存,例如计算机平台的主内存等。有形的传输介质可以包括同轴电缆、铜电缆以及光纤,例如计算机系统内部形成总线的线路。载波传输介质可以传递电信号、电磁信号、声波信号或光波信号等。这些信号可以由无线电频率或红外数据通信的方法所产生。通常的计算机可读介质包括硬盘、软盘、磁带、任何其他磁性介质;cd-rom、dvd、dvd-rom、任何其他光学介质;穿孔卡、任何其他包含小孔模式的物理存储介质;ram、prom、eprom、flash-eprom,任何其他存储器片或磁带;传输数据或指令的载波、电缆或传输载波的连接装置、任何其他可以利用计算机读取的程序代码和/或数据。这些计算机可读介质的形式中,会有很多种出现在处理器在执行指令、传递一个或更多结果的过程之中。

本申请中的“模块”指的是存储在硬件、固件中的逻辑或一组软件指令。这里所指的“模块”能够通过软件和/或硬件模块执行,或被存储于任何一种计算机可读的非临时媒介或其他存储设备中。在一些实施例中,一个软件模块可以被编译并连接到一个可执行的程序中。显然,这里的软件模块可以对自身或其他模块传递的信息做出回应,并且/或者可以在检测到某些事件或中断时做出回应。可以在一个计算机可读媒介上提供软件模块,该软件模块可以被设置为在计算设备上(例如处理器220)执行操作。这里的计算机可读媒介可以是光盘、数字光盘、闪存盘、磁盘或任何其他种类的有形媒介。也可以通过数字下载的模式获取软件模块(这里的数字下载也包括存储在压缩包或安装包内的数据,在执行之前需要经过解压或解码操作)。这里的软件模块的代码可以被部分的或全部的储存在执行操作的计算设备的存储设备中,并应用在计算设备的操作之中。软件指令可以被植入在固件中,例如可擦可编程只读存储器(eprom)。显然,硬件模块可以包含连接在一起的逻辑单元,例如门、触发器,以及/或包含可编程的单元,例如可编程的门阵列或处理器。这里所述的模块或计算设备的功能优选的作为软件模块实施,但是也可以被表示在硬件或固件中。一般情况下,这里所说的模块是逻辑模块,不受其具体的物理形态或存储器的限制。一个模块能够与其他的模块组合在一起,或被分隔成为一系列子模块。

所有软件或其中的一部分有时可能会通过网络进行通信,如互联网或其他通信网络。此类通信可以将软件从一个计算机设备或处理器加载到另一个。例如:从物联网通信系统的一个服务器或主机计算机加载至一个计算机环境的硬件平台,或其他实现系统的计算机环境,或与提供物联网通信系统所需要的信息相关的类似功能的系统。因此,另一种能够传递软件元素的介质也可以被用作局部设备之间的物理连接,例如光波、电波、电磁波等,通过电缆、光缆或者空气等实现传播。用来载波的物理介质如电缆、无线连接或光缆等类似设备,也可以被认为是承载软件的介质。在这里的用法除非限制了有形的“储存”介质,其他表示计算机或机器“可读介质”的术语都表示在处理器执行任何指令的过程中参与的介质。

除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。

上面是对本发明的说明,而不应被认为是对其的限制。尽管描述了本发明的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本发明的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本发明范围内。应当理解,上面是对本发明的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本发明由权利要求书及其等效物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1