掌桥专利:专业的专利平台
掌桥专利
首页

应用于IoT设备的事件处理方法及装置

文献发布时间:2023-06-19 16:09:34



技术领域

本文件涉及数据处理技术领域,尤其涉及一种应用于IoT设备的事件处理方法及装置。

背景技术

随着互联网技术发展和移动终端的普及,越来越多的服务开始向线上场景延伸,出现诸如能够搭载多个应用子程序的应用平台软件,避免了用户在移动终端上安装不同类型的应用程序,而是借助应用平台软件内搭载的应用子程序来实现服务的办理,同时,应用子程序也可以充分利用应用平台软件充足的用户流量,以此为应用子程序的服务提升提供助力。

发明内容

本说明书一个或多个实施例提供了一种应用于IoT设备的事件处理方法。所述应用于IoT设备的事件处理方法,包括:获取子程序通过调用接口传入的服务事件的调用数据。在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器。若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器。读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

本说明书一个或多个实施例提供了一种应用于IoT设备的事件处理装置,包括:调用数据获取模块,被配置为获取子程序通过调用接口传入的服务事件的调用数据。执行体标识查询模块,被配置为在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器。若查询到所述执行体标识,则运行调用数据写入模块,所述调用数据写入模块,被配置为拦截所述服务事件,并将所述调用数据写入所述共享容器。事件数据传输模块,被配置为读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

本说明书一个或多个实施例提供了一种应用于IoT设备的事件处理设备,包括:处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:获取子程序通过调用接口传入的服务事件的调用数据。在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器。若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器。读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:获取子程序通过调用接口传入的服务事件的调用数据。在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器。若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器。读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;

图1为本说明书一个或多个实施例提供的一种应用于IoT设备的事件处理方法处理流程图;

图2为本说明书一个或多个实施例提供的一种应用于IoT设备的事件处理方法的处理示意图;

图3为本说明书一个或多个实施例提供的一种在购票导航场景的应用于IoT设备的事件处理方法的处理流程图;

图4为本说明书一个或多个实施例提供的一种在车载IoT设备场景的应用于IoT设备的事件处理方法的处理流程图;

图5为本说明书一个或多个实施例提供的一种应用于IoT设备的事件处理装置示意图;

图6为本说明书一个或多个实施例提供的一种应用于IoT设备的事件处理设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。

本说明书提供的一种应用于IoT设备的事件处理方法实施例:

参照图1,本实施例提供的应用于IoT设备的事件处理方法,应用于IoT设备部署的服务客户端,具体包括步骤S102至步骤S108。

步骤S102,获取子程序通过调用接口传入的服务事件的调用数据。

实际应用中,在设备终端上运行的第三方应用中的子程序在运行时,只能与第三方应用进行交互,使用第三方应用的应用机制,无法和终端设备上运行的设备应用进行联动,影响了设备终端配置的设备应用的灵活性。若利用已有的IPC(Inter-ProcessCommunication,进程间通信)通信方式将子程序的数据传输给IoT设备,需要IoT设备的设备提供方集成子程序的SDK(Software Development Kit,软件开发工具包)扩展配置在IoT设备的设备客户端内,接入成本较高且便捷性低。

本实施例提供的应用于IoT设备的事件处理方法,通过中间客户端,即IoT设备部署的服务客户端,将基于服务客户端运行的子程序的调用数据传输至配置该服务客户端的IoT设备,且为了保证IoT设备能够基于子程序的调用数据进行事件处理,避免由于将子程序的调用数据传输给IoT设备但IoT设备无法基于调用数据进行事件处理影响用户体验,服务客户端在获取到子程序传入的调用数据后,首先判断IoT设备是否具有基于调用数据进行事件处理的能力,若是,则将调用数据中的服务事件数据传输至设备客户端,以通过设备客户端的至少一个目标应用进行事件处理,以此,实现将子程序的数据传输至IoT设备,以通过IoT设备的设备应用进行事件处理,提升IoT设备的设备应用的灵活性。

本实施例所述IoT设备,包括不限于下述至少一项:车辆安装的车机终端,车辆外接的终端设备,智能音箱,无人售卖机,自主收音机,互动广告屏,POS设备,以及智能电视、智能冰箱等智能家电产品。可选的,所述IoT设备包括车载IoT设备;所述车载IoT设备包括车辆配置的车机终端,和/或车辆外接的终端设备。所述IoT设备由设备提供方提供,所述设备提供方,包括终端设备的生产方、销售方和/或终端设备的服务运维方。所述子程序(小程序),是指搭载于应用平台或者由应用平台加载安装的应用包或者应用组件,就服务角度而言,所述子程序具有独立提供自闭环服务的能力,比如运行在应用程序内提供车辆相关服务或者点单服务的自闭环能力的子应用。

所述IoT设备部署有设备客户端和服务客户端;所述服务客户端为面向IoT设备提供的运行框架或者运行引擎,通过在IoT设备配置服务客户端,实现在IoT设备的子程序访问,具体包括在IoT设备运行提供相应服务的子程序,换句话说,所述服务客户端用于运行子程序;所述设备客户端,是指终端设备自身运行所依赖的系统应用程序的集合。可选的,所述设备客户端配置所述子程序的访问入口;所述设备客户端在检测到配置的子程序的访问入口被触发的情况下,调用所述IoT设备部署的所述服务客户端提供的服务接口并传入对所述子程序的访问请求,以使所述服务客户端基于所述访问请求加载所述子程序;或者,所述服务客户端配置所述子程序的访问入口。

具体实施时,IoT设备的设备提供方通过服务端(服务客户端对应的服务端)进行设备注册,在进行设备注册后在IoT设备部署服务客户端,以通过服务客户端进行子程序的访问,具体的,服务客户端可作为一个应用程序独立运行在IoT设备,也可作为一个工具包运行在IoT设备部署的宿主应用(设备提供方通过服务端注册的应用),在通过宿主应用配置的子程序的访问入口被触发的情况下调用服务客户端进行子程序的加载。所述服务端用于配合IoT设备部署的服务客户端针对IoT设备进行设备登录处理以及子程序访问处理。

设备提供方通过服务端进行设备注册后,服务端将IoT设备的设备信息进行存储,在IoT设备的使用过程中,需要对IoT设备对服务客户端的使用进行激活,以此确保IoT设备具有通过服务客户端进行子程序访问的权限,基于此,本实施例提供的一种可选实施方式中,采用如下方式对IoT设备进行激活:

根据所述设备客户端提交的设备激活指令,采集待验证数据;

将所述待验证数据向服务端上传,以核验所述待验证数据与所述IoT设备所属设备提供方对所述IoT设备进行设备注册时录入的设备信息是否一致;

接收所述服务端下发的验证结果,并通过回调函数向所述设备客户端返回所述验证结果。

具体的,所述设备客户端部署于所述IoT设备,在对IoT设备进行设备激活的过程中,在获取到设备客户端提交的设备激活指令后,采集录入的待验证数据,将采集到的验证数据上传至服务端,服务端基于服务客户端上传的待验证数据和预先存储的设备提供方的设备数据进行比对,并向设备客户端返回验证结果,设备客户端若接收到服务端下发的验证通过的验证结果,则将待验证数据作为IoT设备的设备信息存储至共享容器;若接收到服务端下发的验证未通过的验证结果,则展示验证失败提醒。

其中,所述待验证信息,包括所述IoT设备对应的产品标识、设备标识和/或设备提供方录入的应用标识(宿主应用的应用标识)。

以车载IoT设备为例对上述设备激活的过程进行说明,车载IoT设备在出厂时根据车辆提供方在服务端的注册,配置有设备客户端和服务客户端,车主在首次使用车载IoT设备的时候,需要对车载IoT设备进行激活,车主通过车载IoT设备配置的设备客户端提交设备激活指令,设备客户端根据设备激活指令采集包括设备标识等数据的待验证数据,并将待验证数据通过服务端提供的IPC上传至服务端,以使服务端在接收到待验证数据后,核验待验证数据与车辆提供方在服务端进行设备注册时存储的设备信息是否匹配;并通过IPC向设备客户端发送匹配结果;服务客户端在接收到验证通过的验证结果,则将待验证数据作为车载IoT设备的设备信息进行存储;若接收到验证未通过的验证结果,则通过车载IoT设备展示验证失败提醒。

在进行子程序的访问过程中,若涉及其他服务(例如票务服务涉及导航服务),需要调用其他应用与子程序配合进而完成服务,因此,需要调用其他服务。本实施例中,子程序若需要调用其他应用配合完成服务,则向服务客户端传入调用数据。

具体实施时,用户在访问子程序的过程中,通过子程序提交对服务事件的事件处理指令,子程序通过调用其他服务进行事件处理,但在调用其他服务进行事件处理的过程中,需要传入调用数据以使对应的服务进行事件处理,本实施例提供的一种可选实施方式中,子程序采用如下方式确定服务事件的调用数据:

根据用户通过所述子程序输入的服务数据进行服务处理,获得服务处理结果;

若接收到所述用户通过所述子程序提交的对所述服务事件的事件处理指令,根据所述事件处理指令,在所述服务处理结果中确定所述调用数据。

具体的,用户通过子程序输入服务数据或者服务指令进行服务处理,并获得服务处理结果,在向用户展示服务处理结果时,可基于子程序的配置展示可选服务事件的事件访问入口,若接收到用户通过子程序对展示的可选服务事件中任一服务事件的事件访问入口的访问指令,则根据该服务事件在服务处理结果中确定进行事件处理的调用数据,并通过调用该服务事件对应的调用接口的方式传入该调用数据。

例如,用户通过车载IoT设备的设备客户端配置的票务子程序的访问入口进行票务子程序的访问,设备客户端在检测到票务子程序的访问入口被触发的情况下,向车载IoT设备配置的服务容器(服务客户端)提供的服务接口传入对票务子程序的访问指令,服务容器基于该访问指令加载票务子程序;用户通过票务子程序买票后,购买的票务信息中包含位置数据和票务时间等相关的信息;在向用户展示票务信息时,为了提升用户对子程序提供的服务的感知程度,向用户展示导航服务的访问入口,子程序在检测到导航服务的访问入口被触发的情况下,将位置数据和票务时间确定为进行导航事件处理的调用数据,并通过导航接口传入服务容器。

步骤S104,在共享容器中查询所述调用接口的接口类型对应的执行体标识。

所述共享容器,包括能在进程间进行数据交互和数据共享的存储容器,例如ContentProvider(内容提供者)。

为了提升设备客户端配置的目标应用的灵活性,提升对目标应用的使用率,本实施例中,在获取到子程序通过调用接口传入的服务事件的调用数据后,将调用数据传输至设备客户端,以使设备客户端调用多个目标应用进行事件处理,以此,提升对目标应用的使用率。

在此基础上,为了避免由于IoT设备或者IoT设备的设备客户端不具有事件处理的能力导致服务客户端在将调用数据传输至设备客户端后无法进行事件处理,且未调用第三方应用进行事件处理导致事件处理失败,影响对子程序的访问体验,在获取到子程序通过调用接口传入的服务事件的调用数据后,在共享容器中查询调用接口的接口类型对应的执行体标识。其中,所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器;本实施例提供的一种可选实施实施方式中,采用如下方式进行执行体标识的注册:

获取所述设备客户端传入的配置所述执行体标识对应的执行体的配置信息;

基于所述配置信息的获取,将所述执行体标识写入所述共享容器。

具体的,设备客户端在配置执行体后将执行体标识通过服务客户端提供的服务接口传入服务客户端,服务客户端在获取到携带执行体标识的配置信息后,将该执行体标识与IoT设备的设备信息对应地存储至共享容器。

具体实施时,子程序通过调用接口传入的服务事件的调用数据被写入共享容器,在检测到共享容器被写入调用数据后,在共享容器中查询调用接口的接口类型对应的执行体标识。

例如,子程序通过调用接口向ContentProvider传入服务事件的调用数据,服务客户端在ContentObserver(内容观察者)检测到ContentProvider中被写入调用数据的情况下,根据检测结果读取该调用数据,并在ContentProvider中查询是否存在调用接口的接口类型对应的执行体标识,即查询设备客户端是否具有基于该调用数据进行事件处理的能力。

若在共享容器中查询到调用接口的接口类型对应的执行体标识,则拦截该服务事件,也即是拦截该调用数据,并将该调用信息写入共享容器。本实施例提供的一种可选实施方式中,若未查询到所述执行体标识,执行如下操作:

基于所述服务事件确定目标服务应用,并在所述目标服务应用基于所述调用数据进行所述服务事件的事件处理;

所述至少一个目标应用配置所述服务客户端的服务接口;所述目标服务应用为所述IoT设备配置的第三方应用。

具体的,在共享容器中查询调用接口的接口类型对应的执行体标识,若查询到该执行体标识,则表明设备客户端具有进行事件处理的处理能力,则拦截该服务事件;若未查询到执行体标识,则基于预先的事件处理流程进行事件处理,即基于服务事件确定目标服务应用,设备客户端调用目标服务应用基于调用数据进行服务事件的事件处理。

沿用上例,由于票务子程序无法提供导航服务,则调用服务客户端的导航接口并向ContentProvider传入进行导航服务的票务时间和票务机构的位置数据,服务客户端在ContentObserver检测到ContentProvider写入票务时间和位置数据后,在ContentProvider中查询导航标识,若未查询到导航标识,则调用车载IoT设备配置的第三方导航应用或者集成在服务客户端的导航应用进行至票务机构的导航;若查询到导航标识,则拦截票务信息和票务机构的位置数据。

步骤S106,若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器。

具体实施时,若在共享容器中查询到调用接口的接口类型对应的执行体标识,则拦截服务事件,即拦截服务客户端调用第三方应用(目标服务应用)进行事件处理,并将共享容器中的调用数据与执行体标识进行对应存储。

为了提升对调用数据管理的有效性,将所述调用数据以与所述执行体标识对应的方式写入共享容器,本实施例提供的一种可选实施方式中,采用如下方式将调用数据写入共享容器:

以所述执行体标识为主键、所述调用数据为键值构建键值对;

将所述键值对写入所述共享容器。

具体的,将执行体标识和调用数据以键值对的形式写入共享容器。

例如,在拦截票务信息和票务机构的位置数据之后,以导航标识(导航应用的应用标识)为主键,以票务信息和票务信息的位置数据为键值构建键值对,并将键值对写入ContentProvider。

步骤S108,读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

所述设备客户端部署于所述IoT设备。所述目标应用,包括所述IoT设备在出厂时配置的且配置所述服务客户端的服务接口的设备应用;此外,还可包含非出厂时配置的但配置所述服务客户端的服务接口的第三方应用;所述目标应用配置所述服务客户端的服务接口。

具体实施时,为了提升数据传输效率,提升事件处理效率,避免将调用数据中其他数据传输至设备客户端导致设备客户端基于目标应用进行服务事件的事件处理过程中需要进行数据筛选进而影响处理效率,本实施例中,首先读取调用数据中与执行体匹配的事件数据,再将事件数据传输至设备客户端,以使设备客户端基于部署服务客户端的服务接口的导航应用进行事件处理。

本实施例提供的一种可选实施方式中,以导航事件为例,在读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输中,读取所述调用数据中与导航执行体匹配的位置数据,并将所述位置数据向所述IoT设备的设备客户端传输;进一步,在设备服客户端调用至少一个目标应用进行事件处理的过程中,执行如下操作:

加载所述设备客户端配置的导航应用,将所述位置数据传输至所述导航应用,以使所述导航应用以所述IoT设备的设备位置数据为起始位置数据,以所述位置数据为终止位置数据进行导航处理;

其中,所述导航应用配置所述服务客户端的服务接口。

具体的,在服务事件为导航事件的情况下,读取调用数据中与导航执行体匹配的位置数据并向设备客户端发送,设备客户端接收到位置数据后,加载设备客户端配置的已配置服务客户端的服务接口的导航应用采集IoT设备的设备位置数据,并基于设备位置数据和位置数据进行导航处理。

例如,在ContentObserver检测到ContentProvider写入导航标识为主键,票务信息和票务机构的位置数据为键值的键值对时,读取键值对中的事件数据,将事件数据传输给设备客户端,以使设备客户端基于导航标识加载对应的导航服务,并基于导航服务对票务机构的位置数据进行导航处理。

设备客户端在接收到事件数据后,可调用多个目标应用进行事件处理。本实施例中,为了避免读取调用数据中与执行体匹配的事件数据并向设备客户端传输后设备客户端基于不执行该执行体的目标应用进行事件处理导致数据缺失,在将调用数据写入共享容器后,将调用数据向设备客户端传输,以通过设备客户端调用至少一个目标应用进行事件处理。

需要说明的是,在向设备客户端传输调用数据或者事件数据的过程中,通过共享容器进行服务客户端至设备客户端的数据传输,即通过共享容器实现将调用数据或者事件数据从服务客户端对应的进程传输至设备客户端对应的进程。

本实施例中,将事件数据传输至设备客户端后,设备客户端可基于多个目标应用进行事件处理;本实施例提供的一种可选实施方式中,设备客户端通过如下方式调用至少一个目标应用进行事件处理:

确定加载所述事件数据的第一目标应用和第二目标应用;

将所述事件数据输入所述第一目标应用和所述第二目标应用,以基于所述第一目标应用的应用属性加载所述事件数据,以及,基于所述第二目标应用的应用属性加载所述事件数据。

例如,车载IoT设备的设备客户端调用第一目标应用和第二目标应用进行事件处理的过程中,设备客户端在获取到位置数据的情况下,调用设备客户端配置的导航服务和天气服务,将位置数据传入导航服务,以使导航服务基于位置数据和车机终端的终端位置数据进行导航处理,以及将位置数据传入天气服务,以使天气服务播报位置数据对应的位置的天气。

需要说明的是,上述仅仅是以调用两个目标应用进行事件处理为例对设备客户端进行事件处理的过程进行说明,还可调用三个或者三个以上的目标应用进行事件处理,因为设备客户端在获取到事件数据后可基于任意目标应用进行事件处理;针对调用三个或者三个以上的目标应用进行事件处理的过程与上述调用两个目标应用进行事件处理的方式类似,本实施例在此不再赘述。

还需要说明的是,设备客户端可针对执行体配置至少一个目标应用,在获取到该执行体匹配的事件数据或者该执行体的执行体标识(键值对)关联的调用数据的情况下,读取针对该执行体配置的多个目标应用,基于各目标应用的应用属性和事件数据(或者调用数据)进行各目标应用的事件处理。

服务客户端在将事件数据向设备客户端传输后,为了提升子程序对数据传输的感知程度,通过回调函数向子程序同步数据传输结果。

下述以本实施例提供的一种应用于IoT设备的事件处理方法在购票导航场景的应用为例,结合图2,对本实施例提供的应用于IoT设备的事件处理方法进行进一步说明,参见图3,在购票导航场景的应用于IoT设备的事件处理方法,具体包括下述步骤S302至步骤S316。

如图2所示,提供车载IoT设备的设备厂商,通过AMPE(Alipay Mini-ProgramEngine,支付宝小程序引擎)平台,注册车载IoT设备并选择向车载IoT设备开放的子程序,设备厂商可以选择的子程序为子程序提供方注册至AMPE平台的子程序池的子程序;在设备厂商选择向车载IoT设备配开放的子程序后,基于设备厂商选择的子程序集成AMPE客户端(服务客户端),以使设备厂商在配置车载IoT设备时在车载IoT设备配置该AMPE客户端,以使用户通过车载IoT设备配置的AMPE客户端访问子程序。

需要说明的是,AMPE客户端配置于车载IoT设备的设备客户端配置的第三方应用,具体的,第三方应用配置有子程序的访问入口。

用户在通过车载IoT设备访问子程序的过程中,首先通过车载IoT设备配置的设备客户端触发子程序的访问入口;设备客户端在检测到子程序的访问入口被触发的情况下向AMPE客户端提供的服务接口传入对子程序的访问指令,AMPE客户端在接收到对子程序的访问指令后,在车载IoT设备加载子程序;

用户通过访问子程序进行服务处理获得服务处理结果后,通过子程序提交对服务事件的事件处理指令,子程序根据事件处理指令确定服务处理结果中的调用数据后,基于服务事件对应的事件类型的调用接口向AMPE客户端传入调用数据;AMPE客户端在接收到调用数据后在共享容器中查询事件类型对应的执行体标识;若查询到执行体标识,则拦截调用数据,并将调用数据和执行体标识写入共享容器,读取调用数据中与执行体标识对应的执行体匹配的事件数据并传输至设备客户端,设备客户端在接收到事件数据后基于事件数据中包含的执行体标识对应的目标应用进行事件处理。

步骤S302,设备客户端获取用户对票务子程序的访问入口的触发操作,并向服务客户端提供的服务接口传入对票务子程序的访问请求。

步骤S304,服务客户端基于访问请求在车载IoT设备加载票务子程序。

步骤S306,购票子程序根据用户提交的购票请求,对用户进行购票处理,获得购票结果。

步骤S308,购票子程序获取用户在购票结果展示页面提交的对导航事件的导航请求。

步骤S310,购票子程序基于导航请求将购票结果中包含的票务位置数据和票务时间确定为调用数据,并调用导航接口向服务客户端传入调用数据。

步骤S312,若服务客户端在共享容器中查询到导航应用标识,则拦截调用数据并将导航应用标识和调用数据以键值对的形式存储至共享容器。

若服务客户端未在共享容器中查询到导航应用标识,则基于服务客户端中集成的导航应用进行导航服务处理。

步骤S314,将导航应用标识和调用数据传输至设备客户端。

步骤S316,设备客户端基于导航应用标识对应的导航应用对调用数据中的票务位置数据进行导航处理。

其中,该导航应用为设备客户端配置的应用。

下述以本实施例提供的一种应用于IoT设备的事件处理方法在车载IoT设备场景的应用为例,对本实施例提供的应用于IoT设备的事件处理方法进行进一步说明,参见图4,在车载IoT设备场景的应用于IoT设备的事件处理方法,具体包括下述步骤S402至步骤S422。

步骤S402,根据车载IoT设备部署的设备客户端提交的设备激活指令,获取待验证数据并将待验证数据向服务端发送,以进行设备验证。

步骤S404,根据服务端下发的验证通过结果,将待验证信息作为车载IoT设备的设备信息存储至共享容器。

步骤S406,执行回调函数向设备客户端返回激活成功的激活结果。

步骤S408,获取设备客户端通过调用服务客户端配置的服务接口传入的配置执行体标识对应的执行体的配置信息。

步骤S410,基于配置信息,将执行体标识写入共享容器,以完成对执行体的注册。

步骤S412,在将执行体标识写入共享容器后,执行回调函数向设备客户端返回注册成功的注册结果。

步骤S414,若检测到共享容器中写入子程序通过调用接口传入的服务事件的调用数据,则在共享容器中查询调用接口的接口类型对应的执行体标识。

步骤S416,若查询到执行体标识,则拦截服务事件。

步骤S418,基于执行体标识和调用数据构建键值对,将该键值对写入共享容器。

步骤S420,读取调用数据中与执行体匹配的事件数据并基于共享容器向设备客户端传输,以使设备客户端基于第一目标应用和第二目标应用基于事件数据进行事件处理。

其中,步骤S420在执行过程中还可被替换为基于共享容器向设备客户端传输调用数据。

步骤S422,执行回调函数向子程序返回数据传输结果。

综上所述,本实施例提供的应用于IoT设备的事件处理方法,一方面,通过配置共享容器,实现服务客户端和设备客户端之间的数据传输,即实现服务客户端对应的进行核设备客户端对应的进程之间的数据传输;另一方面,设备客户端在接收到传输的数据后可通过多个配置服务客户端的服务接口的目标应用进行事件处理,以此,实现小程序和IoT设备配置的设备应用的联动,解决了子程序一对一数据传输的限制,提升了IoT设备的设备提供方的服务感知程度,提升设备应用的灵活性。

本说明书提供的一种应用于IoT设备的事件处理装置实施例如下:

在上述的实施例中,提供了一种应用于IoT设备的事件处理方法,与之相对应的,还提供了一种应用于IoT设备的事件处理装置,下面结合附图进行说明。

参照图5,其示出了本实施例提供的一种应用于IoT设备的事件处理装置示意图。

由于装置实施例对应于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。

本实施例提供一种应用于IoT设备的事件处理装置,包括:

调用数据获取模块502,被配置为获取子程序通过调用接口传入的服务事件的调用数据;

执行体标识查询模块504,被配置为在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器;

若查询到所述执行体标识,则运行调用数据写入模块506,所述调用数据写入模块506,被配置为拦截所述服务事件,并将所述调用数据写入所述共享容器;

事件数据传输模块508,被配置为读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

本说明书提供的一种应用于IoT设备的事件处理设备实施例如下:

对应上述描述的一种应用于IoT设备的事件处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种应用于IoT设备的事件处理设备,该应用于IoT设备的事件处理设备用于执行上述提供的应用于IoT设备的事件处理方法,图6为本说明书一个或多个实施例提供的一种应用于IoT设备的事件处理设备的结构示意图。

本实施例提供的一种应用于IoT设备的事件处理设备,包括:

如图6所示,应用于IoT设备的事件处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器601和存储器602,存储器602中可以存储有一个或一个以上存储应用程序或数据。其中,存储器602可以是短暂存储或持久存储。存储在存储器602的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括应用于IoT设备的事件处理设备中的一系列计算机可执行指令。更进一步地,处理器601可以设置为与存储器602通信,在应用于IoT设备的事件处理设备上执行存储器602中的一系列计算机可执行指令。应用于IoT设备的事件处理设备还可以包括一个或一个以上电源603,一个或一个以上有线或无线网络接口604,一个或一个以上输入/输出接口605,一个或一个以上键盘606等。

在一个具体的实施例中,应用于IoT设备的事件处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对应用于IoT设备的事件处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:

获取子程序通过调用接口传入的服务事件的调用数据;

在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器;

若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器;

读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

本说明书提供的一种存储介质实施例如下:

对应上述描述的一种应用于IoT设备的事件处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种存储介质。

本实施例提供的存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:

获取子程序通过调用接口传入的服务事件的调用数据;

在共享容器中查询所述调用接口的接口类型对应的执行体标识;所述执行体标识在设备客户端配置对应执行体的情况下注册至所述共享容器;

若查询到所述执行体标识,则拦截所述服务事件,并将所述调用数据写入所述共享容器;

读取所述调用数据中与所述执行体匹配的事件数据并向所述设备客户端传输,以通过所述设备客户端调用至少一个目标应用进行事件处理。

需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于应用于IoT设备的事件处理方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

在20世纪30年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

技术分类

06120114720635