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

设备时延调整方法及装置、电子设备及存储介质

文献发布时间:2023-06-19 09:38:30


设备时延调整方法及装置、电子设备及存储介质

技术领域

本公开涉及通信技术领域,尤其涉及一种设备时延调整方法及装置、电子设备及存储介质。

背景技术

目前市场上电子设备种类较多,而设备间由于技术、成本等因素,设备的性能差异较大。

在电子设备参与组网情况下,若组网内的各电子设备的性能差异较大,会使得电子设备之间交互会出现时延,导致交互的一致性差。因而为提升组网内设备交互的一致性,需要调整设备的时延。

发明内容

本公开提供一种设备时延调整方法及装置、电子设备及存储介质。

根据本公开实施例的第一方面,提供一种设备时延调整方法,应用于第一电子设备,所述第一电子设备为分布式设备组网内任一设备,所述方法包括:

获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延;

根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整;

在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,并基于调整后的所述唤醒引擎的所述启动时延与至少一个所述第二电子设备进行唤醒信息交互。

可选的,所述获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延,包括:

若在预设时长内所述第一电子设备存储的所述组网内任一所述第二电子设备的设备标识不发生变化,获取当前所述组网内的各个所述第二电子设备的所述唤醒引擎的所述启动时延;

所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

根据所述第一电子设备的唤醒引擎的启动时延,以及所述组网内各个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延,包括:

若所述组网内所述第二电子设备的设备标识更新,更新已获取的所述组网内至少一个第二电子设备的所述唤醒引擎的所述启动时延;

所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

根据所述第一电子设备的唤醒引擎的启动时延,以及更新后的至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

对比所述第一电子设备的所述唤醒引擎的所述启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,确定所述组网内的设备的唤醒引擎的最大时延;

基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

若所述最大时延与所述第一电子设备的所述唤醒引擎的所述启动时延之间的时延差大于所述预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延需要调整;

所述在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,包括:

在所述第一电子设备的所述启动时延需要调整的情况下,将所述第一电子设备的所述唤醒引擎的所述启动时延至少调整所述时延差与所述预设时延最大容忍值之间的差值。

可选的,在基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整前,所述方法还包括:

获取所述第一电子设备和/或至少一个所述第二电子设备的线上打点日志;

统计所述线上打点日志中关联的所述唤醒引擎启动后传输唤醒数据包的网络传输时间;

基于预设的决策超时时间与所述网络传输时间,确定所述预设时延最大容忍值;其中,所述决策超时时间为预设的表征所述第一电子设备和/或至少一个所述第二电子设备的唤醒引擎收到唤醒事件到决策是否响应所述唤醒事件所需的时间。

根据本公开实施例的第二方面,提供一种设备时延调整装置,应用于第一电子设备,所述第一电子设备为分布式设备组网内任一设备,所述装置包括:

第一获取模块,配置为获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延;

判断模块,配置为根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整;

调整模块,配置为在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,并基于调整后的所述唤醒引擎的所述启动时延与至少一个所述第二电子设备进行唤醒信息交互。

可选的,所述第一获取模块,具体配置为若在预设时长内所述第一电子设备存储的所述组网内任一所述第二电子设备的设备标识不发生变化,获取当前所述组网内的各个所述第二电子设备的所述唤醒引擎的所述启动时延;

所述判断模块,具体配置为根据所述第一电子设备的唤醒引擎的启动时延,以及所述组网内各个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述第一获取模块,具体配置为若所述组网内所述第二电子设备的设备标识更新,更新已获取的所述组网内至少一个第二电子设备的所述唤醒引擎的所述启动时延;

所述判断模块,具体配置为根据所述第一电子设备的唤醒引擎的启动时延,以及更新后的至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述判断模块,具体配置为对比所述第一电子设备的所述唤醒引擎的所述启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,确定所述组网内的设备的唤醒引擎的最大时延;基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述判断模块,具体配置为若所述最大时延与所述第一电子设备的所述唤醒引擎的所述启动时延之间的时延差大于所述预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延需要调整;

所述调整模块,具体配置为在所述第一电子设备的所述启动时延需要调整的情况下,将所述第一电子设备的所述唤醒引擎的所述启动时延至少调整所述时延差与所述预设时延最大容忍值之间的差值。

可选的,在所述判断模块基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整前,所述装置还包括:

第二获取模块,配置为获取所述第一电子设备和/或至少一个所述第二电子设备的线上打点日志;

统计模块,配置为统计所述线上打点日志中关联的所述唤醒引擎启动后传输唤醒数据包的网络传输时间;

确定模块,配置为基于预设的决策超时时间与所述网络传输时间,确定所述预设时延最大容忍值;其中,所述决策超时时间为预设的表征所述第一电子设备和/或至少一个所述第二电子设备的唤醒引擎收到唤醒事件到决策是否响应所述唤醒事件所需的时间。

根据本公开实施例的第三方面,提供一种终端,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行如上述第一方面中所述的设备时延调整方法。

根据本公开实施例的第四方面,提供一种存储介质,包括:

当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行如上述第一方面中所述的设备时延调整方法。

本公开的实施例提供的技术方案可以包括以下有益效果:

在本公开的实施例中,第一电子设备通过获取组网内至少一个第二电子设备的唤醒引擎的启动时延,并根据第一电子设备自身的启动时延,判断是否要对自身的启动时延进行调整,并在确定需要进行调整后再进行调整。通过参考组网内第二电子设备的启动时延,即参考了组网的环境来判断是否需要调整,一方面,减少了不必要的调整,节约了功耗;另一方面,可根据组网环境做自适应调整,因而获得的设备时延较精细,时延调整的可靠性高。此外,第一电子设备的时延是根据组网环境动态调整的,而无需固定在设备中,因而扩展性会更好。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是本公开实施例示出的一种设备时延调整方法流程图。

图2为一种固定设备时延的示例图。

图3是本公开实施例示出的一种设备时延调整方法流程示例图。

图4是根据一示例性实施例示出的一种设备时延调整装置图。

图5是本公开实施例示出的一种电子设备的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

图1是本公开实施例示出的一种设备时延调整方法流程图,如图1所示,应用于第一电子设备中,第一电子设备为分布式设备组网内任一设备,所述方法包括以下步骤:

S11、获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延;

S12、根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整;

S13、在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,并基于调整后的所述唤醒引擎的所述启动时延与至少一个所述第二电子设备进行唤醒信息交互。

在本公开的实施例中,第一电子设备和第二电子设备可为智能音箱、扫地机器人以及智能眼镜等可穿戴式电子设备,本公开实施例不做限制。第一电子设备和第二电子设备均为组网内的设备。

在本公开的一种实施例中,当第一电子设备和第二电子设备基于预定账号登录服务端,服务端根据账号做匹配,将属于同一账号的第一电子设备和第二电子设备分到一组即形成一个组网。服务端会将组网内的各电子设备的设备标识推送到组网内的各电子设备,以使各电子设备获知组网内其他电子设备的信息。

在本公开的另一种实施例中,属于同一局域网账号下的各电子设备也可以通过发送组播相互发现从而建立一个组而形成一个组网。

需要说明的是,在本公开的实施例中,电子设备在组网过程中,会去获得组网内各电子设备的设备标识以及唤醒引擎的启动时延,并保存到本地。若组网内任一电子设备的唤醒引擎的启动时延更新,其余电子设备也会接收到更新后的电子设备的启动延时。

在步骤S11中,第一电子设备会获取组网内至少一个第二电子设备的唤醒引擎的启动时延。唤醒引擎的启动时延是指电子设备从接收到指令到响应指令之间的时间差。

在本公开的一种实施例中,在获取至少一个第二电子设备的唤醒引擎的启动时延时,可以根据各第二电子设备与第一电子设备的交互率来确定需要获得的第二电子设备的唤醒引擎的启动时延。例如,仅获取与第一电子设备交互率高于预设交互率阈值的第二电子设备的唤醒引擎的启动时延。因为在调整设备时延时需要额外消耗电量,因而通过该种方式,能提升设备时延调整的必要性,节省功耗。

在本公开的另一种实施例中,在获取至少一个第二电子设备的唤醒引擎的启动时延时,可以默认获取所有第二电子设备的唤醒引擎的启动时延。在该实施例中,通过获取组网内所有第二电子设备的唤醒引擎的启动时延来确定对第一电子设备的时延的调整,能使得对第一电子设备的启动时延的调整适用于与组网内的所有第二电子设备的交互,因而调整更精细。

在步骤S12中,第一电子设备会根据自身的唤醒引擎的启动时延,以及至少一个第二电子设备的唤醒引擎的启动时延,判断第一电子设备的唤醒引擎的启动时延是否需要调整。

在本公开的实施例中,第一电子设备根据自身的唤醒引擎的启动时延,以及至少一个第二电子设备的唤醒引擎的启动时延,判断第一电子设备的唤醒引擎的启动时延是否需要调整时,例如是将第一电子设备的唤醒引擎的启动时延与至少一个第二电子设备的启动时延的时延差,与预设阈值进行比较来判断第一电子设备的唤醒引擎的启动时延是否需要调整。

在步骤S13中,第一电子设备在确定自身的启动时延需要调整的情况下,则对自身的时延进行调整,并基于调整后的唤醒引擎的启动时延与至少一个第二电子设备进行唤醒信息交互。

需要说明的是,在本公开的实施例中,当第一电子设备确定自身的启动时延不需要调整时,则维持唤醒引擎原有的启动时延不变。此外,本公开实施例中,组网内任一设备均可以是第一电子设备,基于组网内第一电子设备之外的第二电子设备的唤醒引擎的启动时延,来判断第一电子设备的唤醒引擎的启动时延是否需要调整。

在一种实施例中,在电子设备出厂(或者软件发版升级)时就会给电子设备固定一个时间补偿值(启动时延),让电子设备在组网时,每次交互都使用固定的时间补偿。即使组网环境发生变化,也仍使用该固定的时间补偿。

图2为一种固定设备时延的示例图,如图2所示,当设备C的固定时延补偿是t1,当设备C需要和组网内的设备A以及设备B交互时,每次都会以固定的时延补偿t1与组内的设备A或设备B进行交互。

可以理解的是,该种方式中,每次均统一采用固定值,且不区分组网环境,因而存在启动时延设置的可靠性不高,无法满足不同场景需求的问题;且上述在设备出厂或软件升级过程中设置启动时延的方式,可能需要针对每一台设备都单独设置,工作量太大,且扩展性和实用性都很有限。

相对的,本公开第一电子设备通过获取组网内至少一个第二电子设备的唤醒引擎的启动时延,并根据第一电子设备自身的启动时延,判断是否要对自身的启动时延进行调整,并在确定需要进行调整后再进行调整。通过参考组网内第二电子设备的启动时延,即参考了组网的环境来判断是否需要调整,一方面,减少了不必要的调整,节约了功耗;另一方面,可根据组网环境做自适应调整,因而获得的设备时延较精细,时延调整的可靠性高。此外,第一电子设备的时延是根据组网环境动态调整的,而无需固定在设备中,因而扩展性会更好。

以第一电子设备和第二电子设备均为智能音箱为例子,组网内的多个智能音箱在接收到语音唤醒事件后,不同智能音箱之间会相互发唤醒数据包,各自根据哪个设备离用户最近做决策判断由哪个音箱响应唤醒事件。例如,音箱A和音箱B,若音箱B判断自身应该唤醒,则答复音箱A,而若音箱A也判断由音箱B响应唤醒事件,则不答复音箱B。而若延时时间内,音箱A没收到唤醒数据包,则会出现音箱A和音箱B同时唤醒,给用户体验不好。因此,本公开根据组网环境获得较高可靠性的时延的方式,能降低设备的同时唤醒率,提升用户使用体验。

在一种实施例中,所述获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延,包括:

若在预设时长内所述第一电子设备存储的所述组网内任一所述第二电子设备的设备标识不发生变化,获取当前所述组网内的各个所述第二电子设备的所述唤醒引擎的所述启动时延;

所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

根据所述第一电子设备的唤醒引擎的启动时延,以及所述组网内各个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

如前所述的,电子设备在组网过程中,会去获得组网内各电子设备的设备标识以及唤醒引擎的启动时延,并保存到本地。在本公开的实施例中,若预设时长内第一电子设备存储的组网内的任一第二电子设备的设备标识不发生变化,则获取当前组网内各第二电子设备的唤醒引擎的启动时延。

需要说明的是,预设时长内组网中任一第二电子设备的设备标识不发生变化,说明组网已经稳定。在组网稳定后再确定是否要调整,收集齐组内所有设备的唤醒引擎的启动时延,然后再做是否需要调整时延的判断,能提升判断是否要调整的有效性。此外,本公开获取组网内各个第二电子设备的唤醒引擎的启动时延,并结合第一电子设备的唤醒引擎的启动时延来判断第一电子设备的唤醒引擎的启动时延是否需要调整,能提升对第一电子设备时延调整的精准度。

在一种实施例中,所述获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延,包括:

若所述组网内所述第二电子设备的设备标识更新,更新已获取的所述组网内至少一个第二电子设备的所述唤醒引擎的所述启动时延;

所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

根据所述第一电子设备的唤醒引擎的启动时延,以及更新后的至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

在本公开的实施例中,当第一电子设备所在组网内的设备有更新,即组网内第二电子设备的设备标识有更新,则第一电子设备需更新已获取的组网内至少一个第二电子设备的唤醒引擎的启动时延。并基于更新后的至少一个第二电子设备的启动时延来判断第一电子设备的启动时延是否需要调整。

可以理解的是,本公开通过更新第二电子设备的启动时延可动态调整对第一电子设备的启动时延的调整,在有新的第二电子设备接入或第二电子设备退网时,也能基于当前更新的组网环境进行自适应调整,而无需逐个通过软件升级的方式进行修改,具有灵活性高的特点。

在一种实施例中,所述根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

对比所述第一电子设备的所述唤醒引擎的所述启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,确定所述组网内的设备的唤醒引擎的最大时延;

基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

在本公开实施例中,在根据第一电子设备的唤醒引擎的启动时延,以及至少一个第二电子设备的唤醒引擎的启动时延,判断第一电子设备的唤醒引擎的启动时延是否需要调整时,先对比第一电子设备的唤醒引擎的启动时延,以及至少一个第二电子设备的唤醒引擎的启动时延,确定组网内的设备的唤醒引擎的最大时延,并基于最大时延以及预设时延最大容忍值,判断第一电子设备的唤醒引擎的启动时延是否需要调整。其中,预设时延最大容忍值是指设备之间发送数据包允许的时延。

可以理解的是,在该过程中,因组网内最大时延是基于组网内所有电子设备的启动时延获得,因而考虑到了组网内所有电子设备的性能。而针对组网内当前的第一电子设备,基于第一电子设备自身的启动时延,以及最大时延和预设时延最大容忍值来判断是否要对第一电子设备的启动时延进行调整,即参考了第一电子设备自身的性能,以及组网环境中各电子设备的性能,通过该种方式,能综合组网环境确定第一电子设备的启动时延,因而具有精准度高的特点。

如前所述的,组网内的任一设备均可为第一电子设备,因而组网内的每个设备会根据计算出的结果判断自己是否需要延迟以等待组内别的设备。这样,可以让性能好、前端延迟小的设备等待性能差、前端延迟大的设备,达到自动调整一致性的目的。

在一种实施例中,所述基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整,包括:

若所述最大时延与所述第一电子设备的所述唤醒引擎的所述启动时延之间的时延差大于所述预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延需要调整;

所述在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,包括:

在所述第一电子设备的所述启动时延需要调整的情况下,将所述第一电子设备的所述唤醒引擎的所述启动时延至少调整所述时延差与所述预设时延最大容忍值之间的差值。

在本公开的实施例中,最大时延表征的是组网内性能最差的电子设备的时延,因而性能好的电子设备需要等待性能差的电子设备,若最大时延与第一电子设备的唤醒引擎的启动时延之间的时延差大于预设时延最大容忍值,则说明第一电子设备的启动时延很小,需要对第一电子设备的启动时延进行调整。

具体在调整时,可以将第一电子设备的唤醒引擎的启动时延调整为时延差与预设时延最大容忍值之间的差值。

示例性的,若组网内有三个电子设备,分别是第一电子设备A、第二电子设备B和第二电子设备C。若第一电子设备A的唤醒引擎的启动时延为10毫秒(ms),第二电子设备B的唤醒引擎的启动时延为100ms,第二电子设备C的唤醒引擎的启动时延为150ms,预设时延最大容忍值为100ms。那么第一电子设备A的启动时延与最大时延150ms之间的时延差为140ms,该时延差大于预设时延最大容忍值100ms,因而至少需要再将第一电子设备的时延调整40ms(140ms-100ms),使得第一电子设备A与性能最差的第二电子设备C之间的时延差在预设时延最大容忍值的范围内。

需要说明的是,在本公开的实施例中,若最大时延与第一电子设备的唤醒引擎的启动时延之间的时延差小于或等于预设时延最大容忍值,则说明第一电子设备的启动时延与性能最差的电子设备之间的时延差在可允许的时延范围内,因而可维持第一电子设备的启动时延,无需做调整。

在一种实施例中,在基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整前,所述方法还包括:

获取所述第一电子设备和/或至少一个所述第二电子设备的线上打点日志;

统计所述线上打点日志中关联的所述唤醒引擎启动后传输唤醒数据包的网络传输时间;

基于预设的决策超时时间与所述网络传输时间,确定所述预设时延最大容忍值;其中,所述决策超时时间为预设的表征所述第一电子设备和/或至少一个所述第二电子设备的唤醒引擎收到唤醒事件到决策是否响应所述唤醒事件所需的时间。

在本公开的实施例中,预设时延最大容忍值可通过对历史数据的统计分析获得。第一电子设备可记录自身工作时的线上打点日志,还可获得至少一个第二电子设备的线上打点日志,并统计线上打点日志中关联的唤醒引擎启动后传输唤醒数据包的网络传输时间。网络传输时间可以是打点日志中关联的传输唤醒数据包的网络传输时间的平均值,例如为t1。

需要说明的是,本公开的预设的决策超时时间,是表征第一电子设备和/或至少一个第二电子设备的唤醒引擎收到唤醒事件到决策是否响应唤醒事件所需的时间。以第一电子设备和第二电子设备均为智能音箱为例,第一电子设备和第二电子设备在收到唤醒事件后,会相互发送唤醒数据包再做决策确定由哪个智能音箱给出响应,决策超时时间包括了发送唤醒数据包的时间以及给出决策的时间。本公开实施中,预设的决策超时时间可以是根据用户体验情况预设的时间,例如为t2。

本公开,可基于预设的决策超时时间与网络传输时间,确定预设时延最大容忍值。例如,可以将预设的决策超时时间与网络传输时间的差值的一半确定为预设时延最大容忍值,即(t2-t1)/2。

图3为本公开实施例示出的一种设备时延调整方法流程示例图,如图3所示,所述方法包括以下步骤:

S21、智能设备在接入时,会接收配置的性能参数。

在该实施例中,智能设备接入可以是指智能设备接入网络,在接入时,技术人员会对智能设备的性能进行测试,从而设置智能设备的性能参数。其中,性能参数至少包括唤醒引擎的启动时延。

S22、智能设备存储性能参数,并在性能参数有更新时,更新存储的性能参数。

在该实施例中,智能设备每次启动时,都会获取到自身的性能参数,且检测性能参数是否有变化,若有变化则更新存储的性能参数。

S23、当智能设备参与组网,与组内设备间会互相发送设备相关信息。

在该实施例中,智能设备在参与组网时,会与组内设备间互相发送包括性能参数的设备相关信息,即获取组网内至少一个第二电子设备的唤醒引擎的启动时延。例如,每台设备将自身的性能参数发送给别的设备,设备存储组内其他每台设备的性能参数。

S24、当组网稳定,智能设备收齐了组内其他设备的性能参数后计算自身延迟补偿值。

例如:组内设备唤醒引擎相对最大延迟为max_delay_time,可接受最大相对延迟accept_delay_time(固定值),本设备的相对延迟self_delay_time。则:

a)当"(max_delay_time-self_delay_time)<=accept_delay_time"时,本设备可以不用延迟;

b)当"(max_delay_time-self_delay_time)>accept_delay_time"时,本设备唤醒数据包延迟"(max_delay_time-self_delay_time)-accept_delay_time"发送。

其中,max_delay_time即组网内的设备的唤醒引擎的最大时延,accept_delay_time为预设时延最大容忍值,self_delay_time为第一电子设备的唤醒引擎的启动时延。

上述a)中,即最大时延与第一电子设备的唤醒引擎的启动时延之间的时延差小于或等于预设时延最大容忍值,则维持第一电子设备的启动时延。

上述b)中,即若最大时延与第一电子设备的所唤醒引擎的所述启动时延之间的时延差大于预设时延最大容忍值,判断所第一电子设备的唤醒引擎的所启动时延需要调整,并将第一电子设备的唤醒引擎的启动时延至少调整所时延差与所预设时延最大容忍值之间的差值。

可以理解的是,在该实施例中,通过参考组网内各电子设备的启动时延,即参考了组网的环境来判断是否需要调整,一方面,减少了不必要的调整,节约了功耗;另一方面,可根据组网环境做自适应调整,因而获得的设备时延较精细,时延调整的可靠性高。此外,第一电子设备的时延是根据组网环境动态调整的,而无需固定在设备中,因而扩展性会更好。

图4是根据一示例性实施例示出的一种设备时延调整装置图。参照图4,设备时延调整装置应用于第一电子设备,所述第一电子设备为分布式设备组网内任一设备,所述装置包括:

第一获取模块101,配置为获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延;

判断模块102,配置为根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整;

调整模块103,配置为在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,并基于调整后的所述唤醒引擎的所述启动时延与至少一个所述第二电子设备进行唤醒信息交互。

可选的,所述第一获取模块101,具体配置为若在预设时长内所述第一电子设备存储的所述组网内任一所述第二电子设备的设备标识不发生变化,获取当前所述组网内的各个所述第二电子设备的所述唤醒引擎的所述启动时延;

所述判断模块102,具体配置为根据所述第一电子设备的唤醒引擎的启动时延,以及所述组网内各个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述第一获取模块101,具体配置为若所述组网内所述第二电子设备的设备标识更新,更新已获取的所述组网内至少一个第二电子设备的所述唤醒引擎的所述启动时延;

所述判断模块102,具体配置为根据所述第一电子设备的唤醒引擎的启动时延,以及更新后的至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述判断模块102,具体配置为对比所述第一电子设备的所述唤醒引擎的所述启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,确定所述组网内的设备的唤醒引擎的最大时延;基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整。

可选的,所述判断模块102,具体配置为若所述最大时延与所述第一电子设备的所述唤醒引擎的所述启动时延之间的时延差大于所述预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延需要调整;

所述调整模块103,具体配置为在所述第一电子设备的所述启动时延需要调整的情况下,将所述第一电子设备的所述唤醒引擎的所述启动时延至少调整所述时延差与所述预设时延最大容忍值之间的差值。

可选的,在所述判断模块基于所述最大时延以及预设时延最大容忍值,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整前,所述装置还包括:

第二获取模块104,配置为获取所述第一电子设备和/或至少一个所述第二电子设备的线上打点日志;

统计模块105,配置为统计所述线上打点日志中关联的所述唤醒引擎启动后传输唤醒数据包的网络传输时间;

确定模块106,配置为基于预设的决策超时时间与所述网络传输时间,确定所述预设时延最大容忍值;其中,所述决策超时时间为预设的表征所述第一电子设备和/或至少一个所述第二电子设备的唤醒引擎收到唤醒事件到决策是否响应所述唤醒事件所需的时间。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图5是根据一示例性实施例示出的一种电子设备装置800的框图。例如,装置800可以是智能音箱等。

参照图5,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。

处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如Wi-Fi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行设备时延调整方法,所述方法应用于第一电子设备,所述第一电子设备为分布式设备组网内任一设备,包括:

获取所述组网内至少一个第二电子设备的唤醒引擎的启动时延;

根据所述第一电子设备的唤醒引擎的启动时延,以及至少一个所述第二电子设备的所述唤醒引擎的所述启动时延,判断所述第一电子设备的所述唤醒引擎的所述启动时延是否需要调整;

在所述第一电子设备的所述启动时延需要调整的情况下,调整所述唤醒引擎的所述启动时延,并基于调整后的所述唤醒引擎的所述启动时延与至少一个所述第二电子设备进行唤醒信息交互。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

相关技术
  • 设备时延调整方法及装置、电子设备及存储介质
  • 时延数据的调整方法和装置、电子设备和存储介质
技术分类

06120112240649