CN114449491A - 一种通信方法、装置和电子设备 - Google Patents

一种通信方法、装置和电子设备 Download PDF

Info

Publication number
CN114449491A
CN114449491A CN202011193802.0A CN202011193802A CN114449491A CN 114449491 A CN114449491 A CN 114449491A CN 202011193802 A CN202011193802 A CN 202011193802A CN 114449491 A CN114449491 A CN 114449491A
Authority
CN
China
Prior art keywords
message
detection
request message
online
response message
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
Application number
CN202011193802.0A
Other languages
English (en)
Inventor
林大伟
陈登
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011193802.0A priority Critical patent/CN114449491A/zh
Priority to EP21885221.8A priority patent/EP4224898A4/en
Priority to US18/034,507 priority patent/US20230396974A1/en
Priority to PCT/CN2021/126777 priority patent/WO2022089494A1/zh
Publication of CN114449491A publication Critical patent/CN114449491A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • H04W48/10Access restriction or access information delivery, e.g. discovery data delivery using broadcasted information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

本申请实施例提供一种通信方法、装置和电子设备。方法包括:基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为包含在线设备探测所针对的设备组网的网络标识的BLE广播报文;基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文为,所述在线设备探测所针对的设备组网中在线的设备,在接收到所述探测请求报文后,根据所述探测请求报文所生成的应答报文;根据所述探测应答报文确定所述设备组网中的在线设备。根据本申请一实施例的方法,可以确认指定设备网络中,包含休眠设备在内的,所有在线设备。

Description

一种通信方法、装置和电子设备
技术领域
本申请实施例涉及通信领域,特别涉及一种通信方法、装置和电子设备。
背景技术
物联网(The Internet of Things,IOT)是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。物联网通过各类可能的网络接入,实现物与物、物与人的泛在连接,以实现对物品和过程的智能化感知、识别和管理。在物联网中,各种设备通过短距离通信方式进行组网(例如,家庭内部的登录同一账号的所有设备组成一设备网络)以协同实现物联网的应用功能。
随着物联网技术的不断发展,物联网的应用领域不断拓展,物联网的应用功能不断丰富。在物联网的某些应用场景中,为了能够实现多设备协同工作,需要应用发起设备在执行应用功能前首先确认网络中其他设备的在线状态,判断设备是否在网络中。这就需要一种在物联网环境下探测在线设备的方法。
发明内容
针对现有技术下如何在物联网环境中探测在线设备问题,本申请提供了一种通信方法、装置和电子设备。
本申请实施例采用下述技术方案:
第一方面,本申请提供一种通信方法,包括:
基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文为,所述在线设备探测所针对的设备组网中在线的设备,在接收到所述探测请求报文后,根据所述探测请求报文所生成的应答报文;
根据所述探测应答报文确定所述设备组网中的在线设备。
在上述第一方面的一种可行的实现方式中,所述探测请求报文以及所述探测应答报文的数据内容类型被设定为自定义类型,所述探测请求报文以及所述探测应答报文的数据内容中被写入所述网络标识。
在上述第一方面的一种可行的实现方式中,所述探测应答报文包含所述探测应答报文的发送设备的设备标识。
在上述第一方面的一种可行的实现方式中,所述基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,包括,基于蓝牙低能耗技术,接收广播发布的,包含有所述在线设备探测所针对的设备组网的网络标识以及当前设备的报文标识的探测应答报文。
在上述第一方面的一种可行的实现方式中,所述探测请求报文包含所述当前设备的报文标识。
在上述第一方面的一种可行的实现方式中,所述基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识以及所述当前设备的报文标识的探测应答报文,包括:
基于预设的第一过滤条件接收蓝牙低能耗报文以接收所述探测应答报文,其中,所述第一过滤条件包括:
所述探测应答报文为BLE广播报文;
所述探测应答报文包含所述当前设备的报文标识;
所述探测应答报文包含所述在线设备探测所针对的设备组网的网络标识。
在上述第一方面的一种可行的实现方式中,基于可在休眠状态下启用的功能模块生成所述探测请求报文,和/或确定所述设备组网中的在线设备。
在上述第一方面的一种可行的实现方式中,按照预设的第一时间间隔,定期发布所述探测请求报文、接收所述探测应答报文、以及确定所述设备组网中的在线设备。
在上述第一方面的一种可行的实现方式中,所述方法还包括:
基于蓝牙低能耗技术,接收广播发布的,包含有当前设备所属设备组网的网络标识的在线报文,其中:所述在线报文为BLE广播报文;所述在线报文为,所述当前设备所属的设备组网中在线的设备,按照预设的第二时间间隔,定期发布的报文;
根据所述在线报文确定所述当前设备所属的设备组网中的在线设备。
第二方面,本申请一实施例提供一种通信方法,包括:
基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:
所述探测请求报文为BLE广播报文;
所述探测应答报文为BLE广播报文;
所述探测应答报文中包含的网络标识与所述探测请求报文一致,所述探测应答报文中的网络标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令接收所述探测应答报文的设备确认所述探测应答报文与所述探测请求报文是否对应。
在上述第二方面的一种可行的实现方式中,所述探测应答报文还包含当前设备的设备标识,所述探测应答报文中的设备标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令发布所述探测请求报文的设备识别所述当前设备的身份。
在上述第二方面的一种可行的实现方式中,所述探测请求报文包含发布所述探测请求报文的设备的报文标识,所述探测请求报文中的报文标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令发布所述探测请求报文的设备确认所述探测应答报文与发布所述探测请求报文的设备是否对应。
在上述第二方面的一种可行的实现方式中,所述基于蓝牙低能耗技术接收广播报文,包括:
基于预设的第二过滤条件接收蓝牙低能耗报文以接收所述探测请求报文,其中,所述第二过滤条件包括:
所述探测请求报文为BLE广播报文;
所述探测应答报文包含所述当前设备所属的设备组网的网络标识。
在上述第二方面的一种可行的实现方式中,基于可在休眠状态下启用的功能模块生成所述探测应答报文。
在上述第二方面的一种可行的实现方式中,所述方法还包括:
按照预设的第二时间间隔,定期基于蓝牙低能耗技术广播发布在线报文,其中:
所述在线报文为BLE广播报文;
所述在线报文包含当前设备所属设备组网的网络标识。
第三方面,本申请一实施例提供一种通信装置,包括:
报文广播模块,其用于基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
报文接收模块,其用于基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文为,所述在线设备探测所针对的设备组网中在线的设备,在接收到所述探测请求报文后,根据所述探测请求报文所生成的应答报文;
在线状态判定模块,其用于根据所述探测应答报文确定所述设备组网中的在线设备。
第四方面,本申请一实施例提供一种通信装置,包括:
报文广播模块,其用于基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:
所述探测请求报文为BLE广播报文;
所述探测应答报文为BLE广播报文;
所述探测应答报文中包含的网络标识与所述探测请求报文一致,所述探测请求报文中的网络标识用于,令发布所述探测请求报文的设备确认所述探测应答报文与所述探测请求报文是否对应。
第五方面,本申请一实施例提供一种通信方法,包括:
当设备组网中的第一设备存在在线设备探测需求时,所述第一设备基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
所述设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,其中,当所述设备组网中在线的第二设备接收到所述探测请求报文时,所述第二设备根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文中包含的网络标识与所述探测请求报文一致;
所述第一设备基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当所述第一设备接收到所述探测应答报文时,所述第一设备判定所述第二设备在线。
第六方面,本申请一实施例提供一种通信方法,包括:
当设备组网中的第一设备存在在线设备探测需求时,所述第一设备向所述设备组网中的第二设备发送在线设备探测请求;
当所述第二设备接收到所述在线设备探测请求时,所述第二设备基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
所述设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,其中,当所述设备组网中在线的第三设备接收到所述探测请求报文时,所述第三设备根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文中包含的网络标识与所述探测请求报文一致;
所述第二设备基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当所述第二设备接收到所述探测应答报文时,所述第二设备判定所述第三设备在线;
所述第一设备从所述第二设备处获取所述在线设备探测结果。
第七方面,本申请提供了一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如上述第一方面的方法步骤。
第八方面,本申请提供了一种电子设备,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如上述第二方面的方法步骤。
根据本申请实施例所提出的上述技术方案,至少可以实现下述技术效果:
根据本申请一实施例的方法,可以确认指定设备网络中,包含休眠设备在内的,所有在线设备;根据本申请一实施例的方法可以有效避免在探测在线设备时遗漏在线休眠设备,从而大大提高在线设备探测结果的准确性;根据本申请一实施例的方法可以避免占用设备蓝牙空口能力,从而避免影响设备正常蓝牙功能。
附图说明
图1所示为根据本申请一实施例的应用场景示意图;
图2所示为根据本申请一实施例的应用场景示意图;
图3所示为根据本申请一实施例的应用场景示意图;
图4所示为根据本申请一实施例的探测在线设备的方法流程图;
图5所示为根据本申请一实施例的回应在线状态的方法流程图;
图6所示为根据本申请一实施例的应用场景的时序图;
图7所示为根据本申请一实施例的应用场景的时序图;
图8所示为根据本申请一实施例的设备功能结构示意图;
图9所示为根据本申请一实施例的设备功能结构示意图;
图10所示为根据本申请一实施例的设备功能结构示意图;
图11所示为根据本申请一实施例的设备功能结构示意图;
图12所示为根据本申请一实施例的应用场景示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
本申请实施例可以应用于智能家居领域,本申请实施例可以为手机、平板电脑、可穿戴设备(例如,手表、手环、头盔、耳机等)、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、智能家居设备(例如智能台灯、智能音箱、智能网关)等电子设备。可以理解的是,本申请实施例对电子设备的具体类型不作任何限制。
针对如何在物联网环境中探测在线设备问题,一种可行的方案是通过无线(Wi-Fi)技术进行设备在线的探测。例如,当用户指令智能音箱A00建立立体声组网时,智能音箱A00通过Wi-Fi模块向周边设备发送广播报文,通过周边设备是否有应答判定设备是否在线。智能音箱A00将周边设备的在线状态反馈给用户,使得用户可以选择使用哪些在线设备组建立体声组网,或者,使得用户明确需要令哪些设备上线以组建立体声组网。
在本申请的实施例中,设备在线指的是设备处于开机状态,并且,设备连接到设备组网,可以与设备组网上的其他设备进行数据交互。
例如,在用户回家后,用户使用手机接入家庭局域网。在用户使用手机接入家庭局域网时,手机为该家庭局域网中的在线设备,当手机关机或者用户离家,用户手机断开与家庭局域网的连接后,用户的手机就不是该家庭局域网中的在线设备。
又例如,在连接到家庭局域网中的,正在播放音乐的智能音箱以及正在播放视频的智能电视,均为家庭局域网中的在线设备。
进一步的,在设备接入设备组网后,设备可能会进入休眠状态。在休眠状态下,设备保留基于设备组网的通信功能,可被快速唤醒。休眠状态下的设备被视为在线设备。
例如,用户手机接入家庭局域网后,用户关闭手机屏幕,或者,用户长时间未使用手机,手机自动关闭屏幕。
又例如,接入家庭局域网中的智能音箱,当其不需要播放音频时,其自动进入休眠模式。其中,用户按动智能音箱的关机按钮,智能音箱关机;不同于关机,休眠模式下的智能音箱并未切断电源,休眠状态下的智能音箱保持通信功能以便被快速唤醒。
又例如,接入家庭局域网中的智能电视,当用户不需要观看视频时,按动遥控器上的休眠按钮,智能电视在用户操控下进入休眠模式。其中,用户按动关机按钮,智能电视关机;不同于关机,休眠模式下的智能电视并未完全关闭电源,只是关闭屏幕以及部分功能模块,休眠状态下的智能电视保持通信功能以便被快速唤醒。
在一些可能的实施例中,在线设备指通电且接入局域网的电子设备,离线设备指未通电和/或未接入局域网的电子设备。
在实际应用场景中,对于某些处于休眠状态下的设备,虽然其保留自身的通信功能以便被快速唤醒,但其Wi-Fi芯片基于省电考虑,会过滤掉广播报文,这就导致这些处于休眠状态下的设备无法对设备A00的广播报文进行应答,从而使得设备A00判定这些处于休眠状态下的设备并不在线。
如图1所示,设备A1、设备B1、设备C1以及设备D1同属一个设备组网(IOT网络)。在某一时刻,设备A1以及设备B1在线并处于非休眠状态(例如,设备A1以及设备B1为手机,均处于亮屏状态),设备C1处于在线休眠状态(例如,设备C1为笔记本电脑,处于休眠状态),设备D1关机下线(例如,设备C1为台式机电脑,台式机电脑处于断电关机状态)。当设备A1需要确定物联网环境中的在线设备时,由设备A1通过Wi-Fi向周边设备发送广播报文。设备B1处于工作状态,其接收到设备A1的广播报文并向设备A1反馈回应报文;设备D1处于关机下线状态,设备A1的广播报文无法发送到设备D1;设备C1处于在线休眠状态(例如,主处理器进入节能状态,但未关闭设备电源以及通信接口,处于可随时被唤醒的状态),虽然设备A1的广播报文可以发送到设备C1,但在休眠状态下,设备C1的Wi-Fi芯片基于省电考虑,会过滤掉广播报文,因此设备C1无法接收设备A1的广播报文并向设备A1反馈回应报文。最终,设备A1发布广播报文后,仅接收到了设备B1的回应报文。因此,设备A1判定在线设备为设备B1,漏掉了在线休眠的设备C1。
针对上述问题,一种可行的方案是通过蓝牙低能耗(Bluetooth Low Energy,BLE)技术进行设备在线的探测。例如,设备A0通过蓝牙BLE扫描发现新加入的设备B0、设备C0,当设备B0、设备C0断开连接时,设备A0通过蓝牙空口报文变化能感知到设备B0、设备C0下线。由于蓝牙BLE的耗电量很小,很多设备的休眠状态下也支持蓝牙BLE的开启,因此,基于蓝牙BLE,可以有效探测物联网环境中的在线设备。
基于蓝牙BLE技术,设备虽然可以通过蓝牙空口报文变化能感知周边设备的下线,但是,上述方案的实现需要在设备间建立蓝牙长连接,如果设备之间点对点连接有多个,连接之间就会有冲突。并且,设备间的蓝牙长连接占用设备空口能力,会影响设备正常蓝牙功能。
针对上述问题,在本申请一实施例中,并不基于蓝牙空口报文变化来感知周边设备的下线,而是基于BLE广播报文,主动探测物联网环境中的在线设备。具体的,由在线设备探测发起方设备基于BLE技术广播发布探测请求报文;设备组网中的在线设备接收到探测请求报文后,基于BLE技术广播发布探测回应报文;在线设备探测发起方设备接收到探测回应报文后,就可以确认探测回应报文的发布设备为在线设备。在上述过程中,探测请求报文以及探测回应报文均为BLE广播报文(不可连接通用广播报文),因此,在线设备探测发起方设备与设备组网中的其他在线设备之间就不需要建立蓝牙长连接,也就不会占用设备空口能力,不会影响设备的正常蓝牙功能。
如图2所示,手机A2、智能音箱B2、平板电脑C2以及台式电脑D2同属一个设备组网(IOT网络)。在某一时刻,手机A2处于工作状态(亮屏状态),智能音箱B2处于工作状态(正在播放音乐),平板电脑C2处于在线休眠状态(屏幕关闭以节省耗电,但未关机),台式电脑D2关机下线。当用户需要通过手机A2外放音乐时,由于手机A2可以基于IOT网络中其他在线设备的喇叭构成立体声组网进行音乐播放,因此手机A2会请求用户选择是否采用立体声组网进行音乐播放。而在手机A2向用户请求选择是否采用立体声组网进行音乐播放之前,手机A2需要确定IOT网络中的在线设备,以确定是否可以构建立体声组网,以及,可以基于哪些设备构建立体声组网。
针对上述应用场景,当用户需要通过手机A2外放音乐时,手机A2通过BLE技术向周边设备(智能音箱B2、平板电脑C2以及台式电脑D2)发送BLE广播报文(探测请求报文)。智能音箱B2处于工作状态,其可以基于BLE技术接收到手机A2的探测请求报文并向手机A2反馈探测应答报文;台式电脑D2处于关机下线状态,其无法接收手机A2的探测应答报文并向手机A2反馈探测应答报文;平板电脑C2处于在线休眠状态,在休眠状态下,平板电脑C2依然可以启用BLE,因此平板电脑C2也可以接收手机A2的探测请求报文并向手机A2反馈探测应答报文。最终,手机A2发布探测请求报文后,接收到了智能音箱B2以及平板电脑C2的探测应答报文。因此,手机A2判定在线设备为智能音箱B2以及平板电脑C2,没有漏掉在线休眠的平板电脑C2。在手机A2判定在线设备为智能音箱B2以及平板电脑C2后,手机A2请求用户选择是否采用立体声组网进行音乐播放,并且,手机A2向用户展示,当前可以构成立体声组网的设备为智能音箱B2以及平板电脑C2。
进一步的,在图2所示的应用场景中,手机A2发布的探测请求报文以及智能音箱B2、平板电脑C2间回应的探测应答报文均为BLE广播报文,因此,在手机A2与智能音箱B2、手机A2与平板电脑C2之间不需要建立蓝牙长连接,也就不会占用手机A2、智能音箱B2、平板电脑C2的设备空口能力,不会影响手机A2、智能音箱B2、平板电脑C2的正常蓝牙功能。
进一步的,在实际应用场景中,同一设备可能同时从属于多个不同的设备网络,根据应用场景的不同,在需要进行在线设备探测时,所针对的设备网络也不同。为了区别不同的在线设备探测应用场景所针对的设备网络,在本申请一实施例中,基于BLE技术广播发布的探测请求报文包含在线设备探测所针对的设备组网的网络标识。在线设备只有在接收到包含自身所属设备网络的设备标识的探测请求报文时才针对该探测请求报文生成对应的探测回应报文,并广播发布该探测回应报文。
具体的,设备组网的网络标识用于区分不同的设备组网,不同设备组网的网络标识不同。例如,设备组网的网络标识可以是由用户命名的、具有唯一性的设备组网名称(例如:XXX家私人网络);又例如,设备组网的网络标识可以是设备组网的唯一网络接入接口地址;又例如,设备组网的网络标识可以是在设备组网建立时由网络管理系统所分配的唯一组网编号。
如图3所示,手机A3、笔记本电脑B3、平板电脑C3以及台式电脑D3同属设备组网Z31(用户针对个人办公组建的设备组网),手机A3、智能音箱E3以及智能电视F3同属设备组网Z32(用户的智能家电设备组网)。假设,在某一时刻,手机A3、笔记本电脑B3处于工作状态(亮屏状态),智能音箱E3处于工作状态(正在播放音乐),平板电脑C3以及智能电视F3处于在线休眠状态,台式电脑D3关机下线。
在一应用场景中,用户需要通过手机A3向设备组网Z31中的某一在线设备发送手机A3上的文档文件以实现数据备份,手机A3需要向用户展示设备组网Z31中的在线设备以供用户选择发送文档文件的发送目标,此时,手机A3就需要确定设备组网Z31中的在线设备。
针对上述应用场景,在用户在手机A3上针对文档文件选择外部设备备份选项时,手机A3通过BLE技术向周边设备发送包含设备组网Z31的网络标识的探测请求报文Q31。笔记本电脑B3以及智能音箱E3处于工作状态,其可以基于BLE技术接收到手机A3的探测请求报文Q31;由于B3从属于设备组网Z31,笔记本电脑B3向手机A3反馈包含设备组网Z31的网络标识的探测应答报文Y31;由于E3不从属于设备组网Z31,智能音箱E3不向手机A3反馈探测应答报文。台式电脑D3处于关机下线状态,其无法接收手机A3的探测请求报文Q31并向手机A3反馈探测应答报文。平板电脑C3以及智能电视F3处于在线休眠状态,在休眠状态下,平板电脑C3以及智能电视F3依然可以启用BLE,因此平板电脑C3以及智能电视F3也可以接收手机A3的探测请求报文Q31。并且,由于C3从属于设备组网Z31,平板电脑C3向手机A3反馈包含设备组网Z31的网络标识的探测应答报文Y32;由于F3不从属于设备组网Z31,智能电视F3不向手机A3反馈探测应答报文。
最终,手机A3发布探测请求报文后,接收到了笔记本电脑B3以及平板电脑C3的探测应答报文。因此,手机A3判定在设备组网Z31中笔记本电脑B3以及平板电脑C3在线。手机A3向用户展示当前可供备份的外部设备为笔记本电脑B3以及平板电脑C3,用户可以选择向笔记本电脑B3或平板电脑C3发送文档文件以实现文档文件的备份。
在一应用场景中,用户需要通过手机A3控制家中的智能家电。在用户进行控制之前,手机A3需要向用户展示设备组网Z32中在线的智能家电设备以供用户选择控制对象。因此,手机A3需要确定设备组网Z32中的在线设备。
手机A3通过BLE技术向周边设备发送包含设备组网Z32的网络标识的探测请求报文Q32。笔记本电脑B3以及智能音箱E3处于工作状态,其可以基于BLE技术接收到手机A3的探测请求报文Q32;由于E3从属于设备组网Z32,智能音箱E3向手机A3反馈包含设备组网Z32的网络标识的探测应答报文Y33;由于B3不从属于设备组网Z32,笔记本电脑B3不向手机A3反馈探测应答报文。台式电脑D3处于关机下线状态,其无法接收手机A3的探测应答报文并向手机A3反馈探测请求报文Q32。平板电脑C3以及智能电视F3处于在线休眠状态,在休眠状态下,平板电脑C3以及智能电视F3依然可以启用BLE,因此平板电脑C3以及智能电视F3也可以接收手机A3的探测请求报文Q32。并且,由于F3从属于设备组网Z32,智能电视F3向手机A3反馈包含设备组网Z32的网络标识的探测应答报文Y34;由于C3不从属于设备组网Z32,平板电脑C3不向手机A3反馈探测应答报文。
最终,手机A3发布探测请求报文后,接收到了智能电视F3以及智能音箱E3的探测应答报文。因此,手机A3判定在设备组网Z32中智能音箱E3以及智能电视F3在线。
具体的,本申请一实施例提出了一种通信方法,该通信方法用于探测在线设备。方法由在线设备探测的发起方设备执行。当设备需要探测在线设备时(例如,当手机需要确认物联网中的在线设备以向用户展示可以组建立体声网络的设备时,或者,当手机需要确认物联网中的在线设备以向用户展示可以接收文档文件备份数据的设备时),设备作为在线设备探测的发起方设备,执行如图4所示的下述步骤:
步骤410,基于蓝牙低能耗技术广播发布探测请求报文,其中,探测请求报文为BLE广播报文;探测请求报文中包含在线设备探测所针对的设备组网的网络标识;探测请求报文中的网络标识用于,令接收到探测请求报文的设备确认探测请求报文所针对的设备组网是否为自身所属的设备组网;
步骤420,基于蓝牙低能耗技术,接收广播发布的,包含有在线设备探测所针对的设备组网的网络标识的探测应答报文,其中:探测应答报文为BLE广播报文;探测应答报文为,在线设备探测所针对的设备组网中在线的设备,在接收到探测请求报文后,根据探测请求报文所生成的应答报文;
步骤430,根据探测应答报文确定设备组网中的在线设备。
在步骤430之后,作为在线设备探测的发起方设备的设备就可以根据已确认的在线设备探测结果执行后续操作,例如,手机向用户展示可以组建立体声网络的设备,或者,手机向用户展示可以接收文档文件备份数据的设备。
在本申请一实施例中,当设备需要进行在线设备探测时发起步骤410。例如,当设备上的应用程序执行过程中需要确认设备组网中的在线设备时发起步骤410(例如,在智能音箱组建立体声组网的过程中,其需要向用户展示可用于组建立体声组网的在线设备以便用户选择);又例如,设备被设定为周期性进行在线设备探测以在设备上保存并更新在线设备列表,以便设备上的应用程序执行过程中需要确认设备组网中的在线设备时可以直接调用在线设备列表,此时,设备周期性发起步骤410;又例如,在设备解锁屏幕时,设备发起在线设备探测,满足设备及时更新其他设备是否在线的需求;又例如,在某一特定时间点,例如闹钟响起时,设备发起在线设备探测;又例如,在某一事件触发下,例如手机收到通知消息时,为了及时更新其他设备的在线状态,手机发起在线设备探测。
进一步的,本申请一实施例提出了一种通信方法,该通信方法用于回应在线状态。该方法由在线设备探测的发起方设备的设备组网中的在线设备执行。设备组网中的在线设备执行如图5所示的下述步骤以回应在线状态:
步骤510,基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据探测请求报文生成包含网络标识的探测应答报文,其中:
探测请求报文为BLE广播报文;
探测应答报文为BLE广播报文;
探测应答报文中包含的网络标识与探测请求报文一致,探测请求报文中的网络标识用于,令发布探测请求报文的设备确认探测应答报文与探测请求报文是否对应;
步骤520,基于蓝牙低能耗技术广播发布探测应答报文。
进一步的,基于图4所示实施例的方法,本申请一实施例还提出了一种通信装置,该装置用于探测在线设备。装置包括:
报文广播模块,其用于基于蓝牙低能耗技术广播发布探测请求报文,其中,探测请求报文为BLE广播报文;探测请求报文中包含在线设备探测所针对的设备组网的网络标识;探测请求报文中的网络标识用于,令接收到探测请求报文的设备确认探测请求报文所针对的设备组网是否为自身所属的设备组网;
报文接收模块,其用于基于蓝牙低能耗技术,接收广播发布的,包含有网络标识的探测应答报文,其中:探测应答报文为BLE广播报文;探测应答报文为,在线设备探测所针对的设备组网中在线的设备,在接收到探测请求报文后,根据探测请求报文所生成的应答报文;
在线状态判定模块,其用于根据探测应答报文确定设备组网中的在线设备。
进一步的,基于图5所示实施例的方法,本申请一实施例还提出了一种通信装置,该装置用于回应在线状态。装置包括:
报文广播模块,其用于基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据探测请求报文生成包含网络标识的探测应答报文,基于蓝牙低能耗技术广播发布探测应答报文,其中:
探测请求报文为BLE广播报文;
探测应答报文为BLE广播报文;
探测应答报文中包含的网络标识与探测请求报文一致,探测请求报文中的网络标识用于,令发布探测请求报文的设备确认探测应答报文与探测请求报文是否对应。
进一步的,基于图4以及图5所示实施例的方法,本申请一实施例还提出了一种通信方法,该方法用于探测在线设备,该探测方法由设备组网执行,其包括:
当设备组网中的设备A16存在在线设备探测需求时,设备A16基于蓝牙低能耗技术广播发布探测请求报文,其中,该探测请求报文为BLE广播报文;探测请求报文中包含在线设备探测所针对的设备组网的网络标识;探测请求报文中的网络标识用于,令接收到探测请求报文的设备确认探测请求报文所针对的设备组网是否为自身所属的设备组网;
设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,当设备组网中在线的设备B000接收到探测请求报文时,设备B16根据探测请求报文生成包含网络标识的探测应答报文,基于蓝牙低能耗技术广播发布探测应答报文,其中:探测应答报文为BLE广播报文;探测应答报文中包含的网络标识与探测请求报文一致;
设备A16基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当设备A16接收到设备B16发布的探测应答报文时,设备A16判定设备B16在线。
以一具体的应用场景为例,假设设备A6与设备B6为设备组网Z6中的两个在线设备。如图6所示,步骤601,设备A6基于蓝牙低能耗技术接收广播报文;以及,步骤602,设备B6基于蓝牙低能耗技术接收广播报文;
当设备A6需要确认设备组网Z6中的在线设备时,执行下述步骤:
步骤610,设备A6基于蓝牙低能耗技术广播发布探测请求报文,其中,探测请求报文为BLE广播报文,探测请求报文中包含设备组网Z6的网络标识;
步骤612,当设备B6接收到包含有设备组网Z6的网络标识的探测请求报文时,设备B6根据探测请求报文生成包含设备组网Z6的网络标识的探测应答报文;
步骤613,设备B6基于蓝牙低能耗技术广播发布探测应答报文;
步骤621,当设备A6接收到包含有设备组网Z6的网络标识的探测应答报文时,确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
根据本申请一实施例的方法,可以确认指定设备网络中,包含休眠设备在内的,所有在线设备;根据本申请一实施例的方法可以有效避免在探测在线设备时遗漏在线休眠设备,从而大大提高在线设备探测结果的准确性;根据本申请一实施例的方法可以避免占用设备蓝牙空口能力,从而避免影响设备正常蓝牙功能。
进一步的,BLE广播报文总体结构为前导码(preamble)+接入地址(AccessAddress)+协议数据字段(Protocol Data Unit,PDU)+循环冗余校验(Cyclic RedundancyCheck,CRC)。其中,PDU部分包括头信息(Header Info)+设备地址(AdvA)+数据字段(AdvData)。
按照蓝牙协议的规定,在广播数据中,PDU中AdvData由一个或多个基本数据结构(AD Structure)组成。其中,如果AdvData中所有的AD Structure之和少于31Octet,剩下会用000…000b补全,补全部分称为Non-significant part。
AD Structure的基本格式为:数据长度(Length)+数据类型(AD TYPE)+数据内容(AD Data)。在本申请一实施例中,使用BLE广播报文的AD Structure数据中的数据字段(AdvData)携带网络标识。
具体的,设置BLE广播报文的AD Structure的数据类型为自定义类型,在ADStructure的数据内容中写入网络标识。
例如,如表1所示,一段AD Structure数据至少包含以下内容:
Figure BDA0002753434370000111
表1
在表1中,设定AD Structure的AD TYPE字段为0x16,在AD Structure的AD Data字段写入:网络标识符(NetWorkId)以及报文类型(Pkttype)。Pkttype用于区别报文是请求报文还是应答报文。
这里需要说明的是,在实际应用场景中,根据实际应用需要,AD Data字段也可以写入Pkttype、NetWorkId以外的其他内容。例如,在某些应用场景中,为便于在设备间构建组网,在不同的设备间建立通信链路,在AD Data字段中写入设备的通用唯一识别码(Universally Unique Identifier,UUID)。
进一步的,在BLE广播报文中,设备地址(AdvA)包括多种类型,某些类型的设备地址(AdvA)可以用于识别设备身份。即,在步骤621的一种实现方式中,设备A6根据探测应答报文中的设备地址(AdvA)识别设备B6的身份,从而确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
具体的,在BLE广播报文中,设备地址(AdvA)的类型包括通用设备地址(PublicDevice Address)。Public Device Address由24-bit的公司识别码(Company_id)和24-bit的公司分配码(Company_assigned_)组成。针对单一设备,Public Device Address是唯一的且不变的,其不需要解读就可以直接用于识别设备身份。
由于Public Device Address可以用于直接识别设备身份,因此,在步骤612的一种实现方式中,设备B6所生成的探测应答报文中的设备地址(AdvA)采用Public DeviceAddress;相应的,设备A6中保存有设备组网中设备与其Public Device Address间的映射关系,在步骤621中,设备A6根据探测应答报文中的设备地址(Public Device Address)识别设备B6的身份,从而确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
进一步的,设备A6中也可以不保存设备组网中设备与其Public Device Address间的映射关系,那样,在步骤621中,设备A6仅能确认设备组网中存在一个在线设备,并不能获取该在线设备的设备描述。
进一步的,在BLE广播报文中,设备地址(AdvA)的类型还包括随机设备地址(Random Device Address)。不同于Public Device Address,Random Device Address并不是固定分配的,而是在设备启动后随机生成的。即,针对不同的设备,其Random DeviceAddress是不同的;但针对单一设备,Random Device Address是可变的。基于RandomDevice Address,不能直接识别设备身份。
根据不同的目的,BLE广播报文的Random Device Address分为静态地址(StaticDevice Address)和私有地址(Private Device Address)两类。
Static Device Address是设备在上电时随机生成的地址,其在一个上电周期内保持不变。在下一次上电的时候Static Device Address可以改变。但不是强制的,因此也可以保持不变。如果改变,上次保存的连接等信息,将不再有效。
在一应用场景中,在设备上电生成Static Device Address时,可以在设备所在的设备组网中向其他设备同步Static Device Address,从而在其他设备中保存StaticDevice Address与设备的对应关系。这样,在设备的本次上电期间,就可以通过StaticDevice Address识别设备身份。
因此,在步骤612的一种实现方式中,设备B6所生成的探测应答报文中的设备地址(AdvA)采用Static Device Address,其中,设备B6的Static Device Address与设备B6间的映射关系已在设备A6中保存;在步骤621中,设备A6根据探测应答报文中的设备地址(Static Device Address)识别设备B6的身份,从而确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
在BLE广播报文的Private Device Address的定义当中,又包含了两个子类:不可解析私有地址(Non-resolvable Private Address)和可解析私有地址(ResolvablePrivate Address)。
ResolvablePrivate Address通过一个随机数和一个身份解析密钥(IdentityResolving Key,IRK)生成,因此,ResolvablePrivate Address只能被拥有相同IRK的设备所解析,从而防止被未知设备扫描和追踪。
因此,在步骤612的一种实现方式中,设备B6所生成的探测应答报文中的设备地址(AdvA)采用ResolvablePrivate Address,其中,设备A6中已保存有设备B6的ResolvablePrivate Address的IPK;在步骤621中,设备A6根据探测应答报文中的设备地址(ResolvablePrivate Address)识别设备B6的身份,从而确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
Non-resolvable Private Address是周期性变化的地址数据,Non-resolvablePrivate Address无法被其他设备所解析,其可以视为一个随机数。Non-resolvablePrivate Address可以保护用户的隐私,因为不断变化的Non-resolvable PrivateAddress使得任何设备都无法通过记录蓝牙设备地址的方式来对用户进行跟踪,但这样的保护方式也意味着可信任的设备也无法识别这个蓝牙设备的真实身份。也就是说,如果设备B6所生成的探测应答报文中的设备地址(AdvA)采用Non-resolvable Private Address,设备A6就无法根据探测应答报文中的设备地址识别设备B6的身份。
进一步的,在实际应用场景中,除Non-resolvable Private Address类型外,其他类型的设备地址(AdvA)也存在无法被解析的情况。例如,针对Static Device Address,当A6中并未保存设备B6的Static Device Address与设备B6之间的映射关系时,设备A6就无法解析设备B6的Static Device Address以识别设备B6的身份;又例如,针对ResolvablePrivate Address,当A6中并未保存设备B6的ResolvablePrivate Address的IPK时,设备A6就无法解析设备B6的ResolvablePrivate Address以识别设备B6的身份。
针对设备A6无法根据探测应答报文中的设备地址(AdvA)识别设备B6的身份的问题,在步骤612的一种实现方式中,设备B6所生成的探测应答报文中携带有设备B6设备标识,该设备标识可用于识别设备B6的身份;在步骤621中,设备A6根据探测应答报文中的ADData字段的设备标识识别设备B6的身份,从而确认发送探测应答报文的设备B6为设备组网Z6中的在线设备。
具体的,在本申请一实施例中,在探测应答报文中的AD Structure数据的AD Data字段中写入探测应答报文发送设备的设备标识(DeviceId)。
例如,如表2所示,设备B6所生成的探测应答报文中的AD Structure数据至少包含以下内容:
Figure BDA0002753434370000131
表2
在表2中,设定AD Structure的AD TYPE字段为0x16,在AD Structure的AD Data字段写入:网络标识符(NetWorkId)、报文类型(Pkttype)以及设备B6的设备标识(DeviceId)。
进一步的,在实际应用场景中,可以根据实际需求选用任意可与设备绑定的、设备网络中唯一的数据作为设备标识。
例如,为设备组网中的设备预设唯一编号,使用设备的唯一编号作为设备的设备标识。假设某一设备组网中存在(A、B、C、D、E)5台设备,即可为这5台设备分配1~5的编号。在该设备组网中,编号1的设备即指设备A。
又例如,可以将设备的通用设备地址(Public Device Address)直接作为设备的设备标识。
又例如,可以使用通用设备地址(Public Device Address)的哈希值作为设备的设备标识。
进一步的,在实际应用场景中,在一个设备组网中,存在多个设备同时或在一较短时间间隔内先后发起在线设备探测的情况。此时,就会导致单个在线设备接收到多个探测请求报文,并且,该在线设备会针对接收到的多个探测请求报文生成多个探测应答报文,进而最终会导致发起在线设备探测的单个设备会接收到来自同一在线设备的多个探测应答报文。而来自同一在线设备的多个探测应答报文,很容易令发起在线设备探测的设备在确定设备是否在线时发生判定逻辑混乱。例如,在某些应用场景下,针对同一在线设备多次重复判定其在线,会导致发起在线设备探测的设备生成存在多个相同的在线设备的判断结果(正确判断结果是,上述多个相同的在线设备为同一设备)。
例如,设备A8、B8以及C8同属一个设备组网中。当设备A8以及设备B8均需要确认在线设备时,设备A8广播发布探测请求报文Q81,设备B8广播发布探测请求报文Q82。
在线设备C8接收到探测请求报文Q81时,其生成探测应答报文Y81并广播发布;当在线设备C8接收到探测请求报文Q82时,其生成探测应答报文Y82并广播发布。那么,设备A8以及设备B8就会接收到均指向设备C8的探测应答报文Y81以及Y82。
在设备A8根据探测应答报文Y81以及Y82判断在线设备时,其可能会生成在线设备探测结果:存在两个在线设备(发布探测应答报文Y81的C8以及发布探测应答报文Y82的C8)。将设备C8识别为两个设备。
针对上述情况,一种可行的方案是,当发起在线设备探测的设备接收到来自同一设备的多个探测应答报文时,仅记录一个探测应答报文为有效报文(例如,针对某一在线设备,按照接收时间顺序,记录来自该在线设备的第一个探测应答报文为有效报文),并根据该有效探测应答报文判定对应的设备在线。
例如,假设设备A8首先接收到来自设备C8的探测应答报文Y81,那么设备A8将探测应答报文Y81标记为有效报文,并根据探测应答报文Y81判断设备C8为在线设备。当后续接收到来自设备C8的探测应答报文Y82时,由于针对设备C8已标记探测应答报文Y81为有效报文,因此,设备A8不会针对探测应答报文Y82进行进一步的数据处理。这样就有效避免了重复的对设备C8进行在线设备判定。
上述方案虽然避免了在确认在线设备时出现判定混乱,但是,由于在线设备探测的发起设备依然会接收到来自同一在线设备的多个探测应答报文,并且,在线设备探测的发起设备还需要标识有效报文,因此,判定流程被大大复杂化。
因此,在本申请一实施例中,在探测应答报文中携带报文标识,该报文标识用于标记其所属的探测应答报文所针对的探测请求报文发送设备,从而使得接收到探测应答报文的探测请求报文发送设备判断该探测应答报文是否是用于回应自身所发出的探测请求报文。从而使得探测请求报文发送设备仅基于针对自身的探测应答报文进行在线设备判定,有效避免探测请求报文发送设备对同一在线设备进行多次在线设备判定。
例如,设备A9、B9以及C9同属一个设备组网中。当设备A9以及设备B9均需要确认在线设备时,设备A9广播发布探测请求报文Q91,设备B9广播发布探测请求报文Q92。
在线设备C9接收到探测请求报文Q91时,其生成包含报文标识W91的探测应答报文Y91,报文标识W91对应探测请求报文Q91;当在线设备C9接收到探测请求报文Q92时,其生成包含报文标识W92的探测应答报文Y92,报文标识W92对应探测请求报文Q92。
设备A9以及设备B9在接收广播发布的探测应答报文时,其可以根据探测应答报文中是否包含自身发出的探测请求报文所对应的报文标识来判断该探测应答报文是否是回应自身所发布的探测请求报文。
例如,当设备A9接收到探测应答报文Y91时,探测应答报文Y91包含报文标识W91,报文标识W91对应设备A9所发出的探测请求报文Q91,因此设备A9判断探测应答报文Y91为针对自身的探测应答报文;当设备A9接收到探测应答报文Y92时,探测应答报文Y92包含报文标识W92,报文标识W92不对应设备A9所发出的探测请求报文Q91,因此设备A9判断探测应答报文Y92不是针对自身的探测应答报文。
进一步的,在实际应用场景中,可以采用任意可区分不同的探测请求报文发送设备的数据作为报文标识。
例如,为设备组网中的设备预设唯一编号,使用设备的唯一编号作为设备对应的报文标识。假设某一设备组网中存在(A、B、C、D、E)5台设备,即可为这5台设备分配1~5的编号。在该设备组网中,报文标识编号1即对应设备A。
又例如,可以将设备的设备标识直接作为设备对应的报文标识。
又例如,可以将设备的通用设备地址(Public Device Address)直接作为设备对应的报文标识。或者,使用通用设备地址(Public Device Address)的哈希值作为设备对应的报文标识。
具体的,在本申请一实施例中,以探测请求报文的发送设备的设备标识作为对应该探测请求报文的报文标识。即,在线设备C9接收到探测请求报文Q91时,其生成包含设备A9的设备标识的探测应答报文Y91;当在线设备C9接收到探测请求报文Q92时,其生成包含设备B9的设备标识的探测应答报文Y92。设备A9以及设备B9在接收广播发布的探测应答报文时,就可以根据探测应答报文中是否包含自身的设备标识来判断该探测应答报文是否是回应自身所发布的探测请求报文。
具体的,设备组网中的单个设备保存有组网中的其他设备的设备标识与设备地址间的映射关系。探测应答报文的发送设备解析探测请求报文中的设备地址(AdvA)以识别探测请求报文的发送设备,根据已保存的设备标识与设备地址间的映射关系确定探测请求报文的发送设备的设备标识,从而将探测请求报文的发送设备的设备标识写入探测应答报文的AD Data字段。
进一步的,考虑到无论探测请求报文的设备地址(AdvA)是否可以被用于识别探测请求报文发送设备的身份(无论探测请求报文的设备地址(AdvA)是Public DeviceAddress或Random Device Address),探测请求报文发送设备均可以判断一个设备地址(AdvA)是否为自身的设备地址(AdvA)。因此,在本申请一实施例中,采用探测请求报文的设备地址(AdvA)作为对应该探测请求报文的报文标识。探测应答报文的发送设备将探测请求报文的设备地址(AdvA)写入探测应答报文,探测请求报文发送设备在接收到探测应答报文就可以根据探测应答报文中所携带的、作为报文标识的设备地址是否为自身的设备地址来判断该探测应答报文是否为针对自身的探测应答报文。
例如,在线设备C9接收到探测请求报文Q91时,其生成包含报文标识W91的探测应答报文Y91,报文标识W91为探测请求报文Q91的设备地址(AdvA)(设备A9的设备地址);当在线设备C9接收到探测请求报文Q92时,其生成包含报文标识W92的探测应答报文Y92,报文标识W92为探测请求报文Q92的设备地址(AdvA)(设备B9的设备地址)。
设备A9以及设备B9在接收广播发布的探测应答报文时,其可以根据探测应答报文中是否包含自身的设备地址来判断该探测应答报文是否是回应自身所发布的探测请求报文。
进一步的,在本申请一实施例中,在探测请求报文中携带探测请求报文的报文标识;在线设备在接收到探测请求报文后,在生成探测应答报文的过程中,将探测请求报文所携带的报文标识写入探测应答报文。
具体的,在本申请一实施例中,在步骤410中,探测请求报文包含报文标识,该报文标识用于区分不同的探测请求报文发送设备;在步骤420中,基于蓝牙低能耗技术,接收广播发布的,包含有在线设备探测所针对的设备组网的网络标识以及当前设备对应的报文标识的探测应答报文。
对应的,在本申请一实施例中,在步骤510中,探测请求报文包含发布探测请求报文的设备的报文标识;根据探测请求报文生成包含网络标识的探测应答报文,包括,根据探测请求报文生成包含网络标识以及报文标识的探测应答报文,其中:
探测应答报文中包含的报文标识与探测请求报文一致。
具体的,在本申请一实施例中,在探测应答报文中的AD Structure数据的AD Data字段中写入报文标识。
以图6所示实施例为例,如表3所示,以设备A6的设备标识作为设备A6的报文标识。设备B6所生成的探测应答报文中的AD Structure数据包含以下内容:
Figure BDA0002753434370000161
表3
在表3中,设定AD Structure的AD TYPE字段为0x16,在AD Structure的AD Data字段写入:网络标识符(NetWorkId)、报文类型(Pkttype)、设备B6的设备标识(DeviceId1)以及设备A6的设备标识(DeviceId2)。
这里需要说明的是,表3中AD Data字段的内容并不代表实际应用场景中AD Data中各参数的排列方式。本领域的技术人员可以根据自身应用场景的需求设定AD Data中各参数的排列方式。
进一步的,为了尽可能减少数据处理量,在本申请一实施例中,采用数据过滤模式接收广播报文,以获取有效的探测请求报文和/或探测应答报文。
具体的,在步骤420的一种实现方式中:
基于预设的第一过滤条件接收蓝牙低能耗报文以接收探测应答报文,其中,第一过滤条件包括:
探测应答报文为BLE广播报文;
探测应答报文包含当前设备的设备标识;
探测应答报文包含在线设备探测所针对的设备组网的网络标识。
具体的,在步骤510的一种实现方式中:
基于预设的第二过滤条件接收蓝牙低能耗报文以接收探测请求报文,其中,第二过滤条件包括:
探测请求报文为BLE广播报文;
探测应答报文包含当前设备所属的设备组网的网络标识。
例如,假设设备A10与设备B10为设备组网Z10中的两个在线设备。如图7所示,当设备A10需要确认设备组网Z10中的在线设备时,执行下述步骤:
步骤710,设定设备A10的广播报文过滤规则为:BLE广播报文+设备A10的设备标识+设备组网Z10的网络标识;
步骤720,设定设备B10的广播报文过滤规则为:BLE广播报文+设备B10所属设备组网的网络标识;
步骤721,设备B10基于蓝牙低能耗技术,根据步骤720设定的广播报文过滤规则接收广播报文;
步骤711,设备A10基于蓝牙低能耗技术广播发布探测请求报文,其中,探测请求报文为BLE广播报文,探测请求报文中包含设备组网Z10的网络标识以及设备A10的设备标识;
由于设备A10广播发布的探测请求报文为BLE广播报文,并且,设备A10广播发布的探测请求报文包含设备组网Z10的网络标识,满足步骤702设定的广播报文过滤规则,因此,设备B10可以接收到设备A10广播发布的探测请求报文;
步骤722,当设备B10接收到设备A10广播发布的探测请求报文时,设备B10根据探测请求报文生成探测应答报文,其中,将探测请求报文中的网络标识以及设备标识写入探测应答报文;
步骤723,设备B10基于蓝牙低能耗技术广播发布探测应答报文;
步骤712,设备A10基于蓝牙低能耗技术,根据步骤710设定的广播报文过滤规则接收广播报文;
由于设备B10广播发布的探测应答报文为BLE广播报文,并且,设备B10广播发布的探测请求报文包含设备组网Z10的网络标识以及设备A10的设备标识,满足步骤710设定的广播报文过滤规则,因此,设备A10可以接收到设备B10广播发布的探测应答报文;
步骤713,设备A10根据接收到的来自设备B10的探测应答报文,确认设备B10为在线设备。
以一具体的应用场景为例,设备A11、B11以及C11同属一个设备组网中。当设备A11以及设备B11均需要确认在线设备时,设备A11广播发布探测请求报文Q111,设备B11广播发布探测请求报文Q112。
在线设备A11接收到探测请求报文Q112时,其生成包含设备B11设备标识的探测应答报文Y111。
在线设备B11接收到探测请求报文Q111时,其生成包含设备A11设备标识的探测应答报文Y112。
在线设备C11接收到探测请求报文Q111时,其生成包含设备A11设备标识的探测应答报文Y113;当在线设备C11接收到探测请求报文Q112时,其生成包含设备B11设备标识的探测应答报文Y114。
探测应答报文Y111、Y112、Y113以及Y114均被广播发布。
探测应答报文Y112、Y113以及Y114被发送到设备A11。探测应答报文Y114包含设备B11设备标识,因此被过滤掉。探测应答报文Y112、Y113包含设备A11设备标识,因此被设备A11接收。
探测应答报文Y111、Y113以及Y114被发送到设备B11。探测应答报文Y113包含设备A11设备标识,因此被过滤掉。探测应答报文Y111、Y114包含设备B11设备标识,因此被设备B11接收。
进一步的,在本申请一实施例中,在设备需要确认在线设备时执行本申请实施例提出的探测在线设备的方法。在本申请另一实施例中,预先执行本申请实施例提出的探测在线设备的方法以确认在线设备,在设备需要确认在线设备时,调用已确认好的在线设备确认结果,这样就可以在设备需要确认在线设备时大大缩短等待时间,从而提高用户体验。
进一步的,由于设备组网中在线设备的状态是不断变化的,因此,在本申请一实施例中,按照预设的时间间隔,定期执行步骤410~430(例如,每2分钟执行一轮步骤410~430),以不断更新设备组网中在线设备的状态。在设备需要确认在线设备时,调用最近一次执行步骤410~430所获取的在线设备探测结果,这样就可以在设备需要确认在线设备时大大缩短等待时间,从而提高用户体验。
进一步的,在根据本申请一实施例的应用场景中,如图8所示,设备A12与设备B12为设备组网Z12中的两个在线设备。当设备A12需要确认设备组网Z12中的在线设备时,设备A12的主处理模块1211(例如,中央处理器(Central Processing Unit,CPU))生成探测请求报文,主处理模块1211将探测请求报文发送到蓝牙模块1212(箭头1201),蓝牙模块1212基于蓝牙低能耗技术广播发布探测请求报文(箭头1202)。
设备B12的蓝牙模块1222基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1222接收到探测请求报文后,蓝牙模块1222将探测请求报文发送到设备B12的主处理模块1221(箭头1203),主处理模块1221生成探测应答报文,主处理模块1221将探测应答报文发送到蓝牙模块1222(箭头1204),蓝牙模块1222基于蓝牙低能耗技术广播发布探测应答报文(箭头1205)。
设备A12的蓝牙模块1212基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1212接收到探测应答报文后,蓝牙模块1212将探测应答报文发送到主处理模块1211(箭头1206),主处理模块1211根据接收到的应答报文确认在线设备。
在图8所示的应用场景中,设备B12的蓝牙模块1222基于蓝牙低能耗技术接收/发布广播报文,因此,即使设备B12处于休眠状态仍可以接收到探测请求报文并发布探测应答报文。但是,当蓝牙模块1222接收到探测请求报文后,需要将探测请求报文发送到主处理模块1221,由主处理模块1221生成探测应答报文。如果设备B12处于休眠状态下接收到探测请求报文,就需要唤醒设备B12(启动主处理模块),才能生成探测应答报文,这势必增加设备B12的电量消耗。
针对上述问题,在本申请一实施例中,为了避免唤醒休眠中的在线设备,基于可在休眠状态下启用的功能模块生成探测应答报文(执行步骤520)。
具体的,在根据本申请一实施例的应用场景中,如图9所示,设备A13与设备B13为设备组网Z13中的两个在线设备。当设备A13需要确认设备组网Z13中的在线设备时,设备A13的主处理模块1311生成探测请求报文,主处理模块1311将探测请求报文发送到蓝牙模块1312(箭头1301),蓝牙模块1312基于蓝牙低能耗技术广播发布探测请求报文(箭头1302)。
设备B13的蓝牙模块1322基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1322接收到探测请求报文后,蓝牙模块1322将探测请求报文发送到功能模块1321(箭头1303),功能模块1321生成探测应答报文,功能模块1321将探测应答报文发送到蓝牙模块1222(箭头1304),蓝牙模块1222基于蓝牙低能耗技术广播发布探测应答报文(箭头1305)。
设备A13的蓝牙模块1312基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1312接收到探测应答报文后,蓝牙模块1312将探测应答报文发送到主处理模块1311(箭头1306),主处理模块1311根据接收到的应答报文确认在线设备。
在图9所示的应用场景中,设备B13的蓝牙模块1322基于蓝牙低能耗技术接收广播报文,因此,即使设备B13处于休眠状态仍可以接收到探测请求报文。
进一步的,设备B13的功能模块1321为能在休眠状态下启用的功能模块。例如,可以在休眠状态下启用的系统级芯片(System-on-a-Chip,SOC)、微控制单元(Microcontroller Unit;MCU)等(例如,低功耗的传感器控制中心(Sensor Hub))。生成以及广播发布探测应答报文的过程不需要设备B13的主处理模块1320参与。因此,即使设备B13处于休眠状态,不需要唤醒设备B13就可以生成并发布探测应答报文。
进一步的,在图8所示的应用场景中,设备A12的蓝牙模块1212基于蓝牙低能耗技术接收/发布广播报文,因此,即使设备A12处于休眠状态仍可以发布探测请求报文并接收探测应答报文。但是,设备A12所发布的探测请求报文是由主处理模块1211所生成的,并且,在蓝牙模块1212接收到探测应答报文后,需要主处理模块1211根据接收到的应答报文确认在线设备。这就使得设备A12必须处在非休眠状态时才能进行在线设备探测操作。进一步的,在周期性的进行在线设备探测操作以预先确认在线设备状态的应用方案中,则需要设备周期性的从休眠状态中唤醒以执行在线设备探测操作,这就大大增加了设备的电量消耗。
针对上述问题,在本申请一实施例中,为了避免唤醒休眠中的在线设备,基于可在休眠状态下启用的功能模块执行步骤410~430。
具体的,在根据本申请一实施例的应用场景中,如图10所示,设备A14与设备B14为设备组网Z14中的两个在线设备。当设备A14需要确认设备组网Z14中的在线设备时,设备A14的功能模块1411生成探测请求报文,功能模块1411将探测请求报文发送到蓝牙模块1412(箭头1401),蓝牙模块1412基于蓝牙低能耗技术广播发布探测请求报文箭头(箭头1402)。
设备B14的蓝牙模块1422基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1422接收到探测请求报文后,蓝牙模块1422将探测请求报文发送到功能模块1421箭头(箭头1403),功能模块1421生成探测应答报文,功能模块1421将探测应答报文发送到蓝牙模块1422(箭头1404),蓝牙模块1422基于蓝牙低能耗技术广播发布探测应答报文(箭头1405)。
设备A14的蓝牙模块1412基于蓝牙低能耗技术,根据预设的过滤规则接收广播报文。蓝牙模块1412接收到探测应答报文后,蓝牙模块1412将探测应答报文发送到功能模块1411(箭头1406),功能模块1411根据接收到的应答报文确认在线设备。
在图10所示的应用场景中,设备B14的蓝牙模块1422基于蓝牙低能耗技术接收/发布广播报文,因此,即使设备B14处于休眠状态仍可以接收到探测请求报文并发布探测应答报文。
进一步的,设备B14的功能模块1421为能在休眠状态下启用的功能模块。例如,可以在休眠状态下启用的系统级芯片(System-on-a-Chip,SOC)、微控制单元(Microcontroller Unit;MCU)等(例如,低功耗的传感器控制中心(Sensor Hub))。生成以及广播发布探测应答报文的过程不需要设备B14的主处理模块1420参与。因此,即使设备B14处于休眠状态,不需要唤醒设备B14就可以生成并发布探测应答报文。
进一步的,设备A14的蓝牙模块1412基于蓝牙低能耗技术发布/接收广播报文,因此,即使设备A14处于休眠状态仍可以接收到探测应答报文。
进一步的,设备A14的功能模块1411为能在休眠状态下启用的功能模块。例如,可以在休眠状态下启用的系统级芯片(System-on-a-Chip,SOC)、微控制单元(Microcontroller Unit;MCU)等(例如,低功耗的传感器控制中心(Sensor Hub))。生成探测请求报文的过程,以及,根据探测请求报文确认在线设备的过程,不需要设备A14的主处理模块1410参与。因此,即使设备A14处于休眠状态,不需要唤醒设备A14就可以执行在线设备的探测。在执行完在线设备的探测后,如果设备A14被唤醒并需要确认在线设备状态,只需要直接调用功能模块1411的确认结果(箭头1407)。
进一步的,上述探测在线设备的方法可以归纳为由需要探测在线设备的设备主动发起的主动探测方法。在本申请一实施例中,提出了一种被动探测方法。具体的,由设备组网中的在线设备主动广播发布在线报文,当设备接收到在线报文时,即可以确认该在线报文的发布设备为在线设备。
具体的,在本申请一实施例中,探测在线设备的方法,包括:
基于蓝牙低能耗技术,接收广播发布的,包含有当前设备所属设备组网的网络标识的在线报文,其中:该在线报文为BLE广播报文;该在线报文为,所述当前设备所属的设备组网中在线的设备,按照预设的第二时间间隔,定期发布的报文;
根据所述在线报文确定所述当前设备所属的设备组网中的在线设备。
具体的,在本申请一实施例中,回应在线状态的方法,包括:
按照预设的时间间隔,定期基于蓝牙低能耗技术广播发布在线报文,其中:
该在线报文为BLE广播报文;
该在线报文包含当前设备所属设备组网的网络标识。
具体的,在根据本申请一实施例的应用场景中,如图11所示,设备A15与设备B15为设备组网Z15中的两个在线设备。
设备B15的功能模块1521按照预设的时间间隔,定期生成在线报文(例如,每2分钟一次)。在线报文包括设备B15所属的设备网络的网络标识。
功能模块1521将在线报文发送到蓝牙模块1522(箭头1501),蓝牙模块1522基于蓝牙低能耗技术定期广播发布在线报文(箭头1502)(例如,每2分钟一次)。
设备A15的蓝牙模块1512基于蓝牙低能耗技术接收在线报文。当蓝牙模块1512接收到包含所属的设备网络的网络标识的在线报文时,蓝牙模块1512将在线报文发送到功能模块1511(箭头1403),功能模块1511根据在线报文确认设备B15在线。
在图11所示的应用场景中,设备B15的蓝牙模块1522基于蓝牙低能耗技术发布广播报文,因此,即使设备B15处于休眠状态仍可以发布在线报文。
进一步的,设备B15的功能模块1521为能在休眠状态下启用的功能模块。例如,可以在休眠状态下启用的系统级芯片(System-on-a-Chip,SOC)、微控制单元(Microcontroller Unit;MCU)等(例如,低功耗的传感器控制中心(Sensor Hub))。生成在线报文的过程不需要设备B15的主处理模块1520参与。因此,即使设备B15处于休眠状态,不需要唤醒设备B13就可以生成并发布在线报文。
进一步的,设备A15的蓝牙模块1512基于蓝牙低能耗技术发布/接收广播报文,因此,即使设备A15处于休眠状态仍可以接收到在线报文。
进一步的,设备A15的功能模块1511为能在休眠状态下启用的功能模块。例如,可以在休眠状态下启用的系统级芯片(System-on-a-Chip,SOC)、微控制单元(Microcontroller Unit;MCU)等(例如,低功耗的传感器控制中心(Sensor Hub))。根据在线报文确认在线设备的过程,不需要设备A15的主处理模块1510参与。因此,即使设备A15处于休眠状态,不需要唤醒设备A15就可以确认在线设备。如果设备A15被唤醒并需要确认在线设备状态,只需要直接调用功能模块1511的确认结果(箭头1504)。
进一步的,在实际应用场景中,探测请求报文的生成、探测请求报文的发布、探测应答报文的接收以及在线设备的判定都需要占用一定的通信/处理资源并由此导致一定的电量消耗。而对于电量敏感设备(例如,采用电池供电的手机、平板电脑)而言,需要尽可能的减少电量消耗。因此,在本申请一实施例中,当电量敏感设备需要确认在线设备时,并不由该设备直接探测在线设备,而是由非电量敏感设备(例如,采用固定电源供电的台式电脑、蓝牙音箱、智能电视等)进行在线设备探测以获取在线设备探测结果,电量敏感设备从进行在线设备探测的非电量敏感设备处获取在线设备探测结果。
具体的,在本申请一实施例中:
当设备组网中的设备A17存在在线设备探测需求时,设备A17向设备组网中的设备B17发送在线设备探测请求;
当设备B17接收到在线设备探测请求时,设备B17基于蓝牙低能耗技术广播发布探测请求报文,其中,该探测请求报文为BLE广播报文;探测请求报文中包含在线设备探测所针对的设备组网的网络标识;探测请求报文中的网络标识用于,令接收到探测请求报文的设备确认探测请求报文所针对的设备组网是否为自身所属的设备组网;
设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,其中,当设备组网中在线的设备C17接收到所述探测请求报文时,设备C17根据探测请求报文生成包含网络标识的探测应答报文,基于蓝牙低能耗技术广播发布探测应答报文,其中:探测应答报文为BLE广播报文;探测应答报文中包含的网络标识与探测请求报文一致;
设备B17基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当设备B17接收到设备C17的探测应答报文时,设备B17判定设备C17在线;
设备A17从设备B17处获取所述在线设备探测结果,例如,设备B17完成在线设备探测后将在线设备探测结果发送到设备A17,或者,设备A17读取设备B17所保存的在线设备探测结果。
如图12所示,手机A18、笔记本电脑B18、平板电脑C18、台式电脑D18、智能音箱E18以及智能电视F18同属设备组网Z18。假设,在某一时刻,手机A18、笔记本电脑B18以及智能音箱E18处于工作状态(亮屏状态),平板电脑C18以及智能电视F18处于在线休眠状态,台式电脑D18关机下线。
在一应用场景中,用户需要通过手机A18向设备组网Z18中的某一在线设备发送手机A18上的文档文件以实现数据备份,手机A18需要向用户展示设备组网Z18中的在线设备以供用户选择发送文档文件的发送目标,此时,手机A18就需要确定设备组网Z18中的在线设备。
手机A18向由固定电源供电的智能音箱E18发送在线设备探测请求(T18)。智能音箱E18接收到在线设备探测请求(T18)后,通过BLE技术向周边设备发送包含设备组网Z18的网络标识的探测请求报文Q18。笔记本电脑B18处于工作状态,其可以基于BLE技术接收到智能音箱E18的探测请求报文Q18;笔记本电脑B18向智能音箱E18反馈包含设备组网Z18的网络标识的探测应答报文Y181。台式电脑D3处于关机下线状态,其无法接收探测请求报文Q8并向智能音箱E18反馈探测应答报文。平板电脑C18以及智能电视F18处于在线休眠状态,在休眠状态下,平板电脑C18以及智能电视F18依然可以启用BLE,因此平板电脑C18以及智能电视F18也可以接收探测请求报文Q18。并且,由于平板电脑C18以及智能电视F18从属于设备组网Z18,平板电脑C18向智能音箱E18反馈包含设备组网Z18的网络标识的探测应答报文Y182,智能电视F18向智能音箱E18反馈包含设备组网Z18的网络标识的探测应答报文Y183。
最终,智能音箱E18发布探测请求报文后,接收到了笔记本电脑B18、平板电脑C18以及智能电视F18的探测应答报文。因此,智能音箱E18判定笔记本电脑B18、平板电脑C18以及智能电视F18在线。智能音箱E18将在线设备探测结果发送到手机A18(J18)。手机A18根据智能音箱E18的反馈确认笔记本电脑B18、平板电脑C18以及智能电视F18在线,用户可以选择向笔记本电脑B3、平板电脑C3、或智能电视F18发送文档文件以实现文档文件的备份。
在上述流程中,手机A18不需要执行具体的在线设备探测操作即可以获取到在线设备探测结果,大大减少了手机A18的电量消耗。
进一步的,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(FieldProgrammable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由访问方对器件编程来确定。由设计人员自行编程来把一个数字装置“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,例如硬件描述语言(Hardware Description Language,HDL)。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
在本申请实施例的描述中,为了描述的方便,描述硬件时以功能分为各种模块分别描述,各个模块/单元的划分仅仅是一种逻辑功能的划分,在实施本申请实施例时可以把各模块/单元的功能在同一个或多个软件和/或硬件中实现。
具体的,本申请实施例所提出的硬件设备、装置、模块在实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,检测模块可以为单独设立的处理元件,也可以集成在电子设备的某一个芯片中实现。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个数字信号处理器(Digital Singnal Processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,这些模块可以集成在一起,以片上装置(System-On-a-Chip,SOC)的形式实现。
本申请一实施例还提出了一种电子设备,电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发电子设备执行如本申请实施例所述的探测在线设备的方法步骤。
本申请一实施例还提出了一种电子设备,电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发电子设备执行如本申请实施例所述的回应在线状态的方法步骤。
具体的,在本申请一实施例中,上述一个或多个计算机程序被存储在上述存储器中,上述一个或多个计算机程序包括指令,当上述指令被上述设备执行时,使得上述设备执行本申请实施例所述的方法步骤。
具体的,在本申请一实施例中,电子设备的处理器可以是片上装置SOC,该处理器中可以包括CPU,还可以进一步包括其他类型的处理器。具体的,在本申请一实施例中,电子设备的处理器可以是PWM控制芯片。
具体的,在本申请一实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units,NPU)和图像信号处理器(Image Signal Processing,ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
具体的,在本申请一实施例中,电子设备的存储器可以是只读存储器(read-onlymemory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何计算机可读介质。
具体的,在本申请一实施例中,处理器可以和存储器可以合成一个处理装置,更常见的是彼此独立的部件,处理器用于执行存储器中存储的程序代码来实现本申请实施例所述方法。具体实现时,该存储器也可以集成在处理器中,或者,独立于处理器。
进一步的,本申请实施例阐明的设备、装置、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
具体的,本申请一实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请一实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,当其在计算机上运行时,使得计算机执行本申请实施例提供的方法。
本申请中的实施例描述是参照根据本申请实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a和b,a和c,b和c或a和b和c,其中a,b,c可以是单个,也可以是多个。
本申请实施例中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以意识到,本申请实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。

Claims (21)

1.一种通信方法,其特征在于,包括:
基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文为,所述在线设备探测所针对的设备组网中在线的设备,在接收到所述探测请求报文后,根据所述探测请求报文所生成的应答报文;
根据所述探测应答报文确定所述设备组网中的在线设备。
2.根据权利要求1所述的方法,其特征在于,所述探测请求报文以及所述探测应答报文的数据内容类型被设定为自定义类型,所述探测请求报文以及所述探测应答报文的数据内容中被写入所述网络标识。
3.根据权利要求1所述的方法,其特征在于,所述探测应答报文包含所述探测应答报文的发送设备的设备标识。
4.根据权利要求1所述的方法,其特征在于,所述基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,包括,基于蓝牙低能耗技术,接收广播发布的,包含有所述在线设备探测所针对的设备组网的网络标识以及当前设备的报文标识的探测应答报文。
5.根据权利要求4所述的方法,其特征在于,所述探测请求报文包含所述当前设备的报文标识。
6.根据权利要求4或5所述的方法,其特征在于,所述基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识以及所述当前设备的报文标识的探测应答报文,包括:
基于预设的第一过滤条件接收蓝牙低能耗报文以接收所述探测应答报文,其中,所述第一过滤条件包括:
所述探测应答报文为BLE广播报文;
所述探测应答报文包含所述当前设备的报文标识;
所述探测应答报文包含所述在线设备探测所针对的设备组网的网络标识。
7.根据权利要求1~6中任一项所述的方法,其特征在于,基于可在休眠状态下启用的功能模块生成所述探测请求报文,和/或确定所述设备组网中的在线设备。
8.根据权利要求1~7中任一项所述的方法,其特征在于,按照预设的第一时间间隔,定期发布所述探测请求报文、接收所述探测应答报文、以及确定所述设备组网中的在线设备。
9.根据权利要求1~8中任一项所述的方法,其特征在于,所述方法还包括:
基于蓝牙低能耗技术,接收广播发布的,包含有当前设备所属设备组网的网络标识的在线报文,其中:所述在线报文为BLE广播报文;所述在线报文为,所述当前设备所属的设备组网中在线的设备,按照预设的第二时间间隔,定期发布的报文;
根据所述在线报文确定所述当前设备所属的设备组网中的在线设备。
10.一种通信方法,其特征在于,包括:
基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:
所述探测请求报文为BLE广播报文;
所述探测应答报文为BLE广播报文;
所述探测应答报文中包含的网络标识与所述探测请求报文一致,所述探测应答报文中的网络标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令接收所述探测应答报文的设备确认所述探测应答报文与所述探测请求报文是否对应。
11.根据权利要求10所述的方法,其特征在于,所述探测应答报文还包含当前设备的设备标识,所述探测应答报文中的设备标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令发布所述探测请求报文的设备识别所述当前设备的身份。
12.根据权利要求10所述的方法,其特征在于,所述探测请求报文包含发布所述探测请求报文的设备的报文标识,所述探测请求报文中的报文标识用于,在发布所述探测请求报文的设备接收到所述探测应答报文时,令发布所述探测请求报文的设备确认所述探测应答报文与发布所述探测请求报文的设备是否对应。
13.根据权利要求10所述的方法,其特征在于,所述基于蓝牙低能耗技术接收广播报文,包括:
基于预设的第二过滤条件接收蓝牙低能耗报文以接收所述探测请求报文,其中,所述第二过滤条件包括:
所述探测请求报文为BLE广播报文;
所述探测应答报文包含所述当前设备所属的设备组网的网络标识。
14.根据权利要求10~13中任一项所述的方法,其特征在于,基于可在休眠状态下启用的功能模块生成所述探测应答报文。
15.根据权利要求10~14中任一项所述的方法,其特征在于,所述方法还包括:
按照预设的第二时间间隔,定期基于蓝牙低能耗技术广播发布在线报文,其中:
所述在线报文为BLE广播报文;
所述在线报文包含当前设备所属设备组网的网络标识。
16.一种通信装置,其特征在于,包括:
报文广播模块,其用于基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
报文接收模块,其用于基于蓝牙低能耗技术,接收广播发布的,包含有所述网络标识的探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文为,所述在线设备探测所针对的设备组网中在线的设备,在接收到所述探测请求报文后,根据所述探测请求报文所生成的应答报文;
在线状态判定模块,其用于根据所述探测应答报文确定所述设备组网中的在线设备。
17.一种通信装置,其特征在于,包括:
报文广播模块,其用于基于蓝牙低能耗技术接收广播报文,当接收到包含有当前设备所属的设备组网的网络标识的探测请求报文时,根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:
所述探测请求报文为BLE广播报文;
所述探测应答报文为BLE广播报文;
所述探测应答报文中包含的网络标识与所述探测请求报文一致,所述探测请求报文中的网络标识用于,令发布所述探测请求报文的设备确认所述探测应答报文与所述探测请求报文是否对应。
18.一种通信方法,其特征在于,包括:
当设备组网中的第一设备存在在线设备探测需求时,所述第一设备基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
所述设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,其中,当所述设备组网中在线的第二设备接收到所述探测请求报文时,所述第二设备根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文中包含的网络标识与所述探测请求报文一致;
所述第一设备基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当所述第一设备接收到所述探测应答报文时,所述第一设备判定所述第二设备在线。
19.一种通信方法,其特征在于,包括:
当设备组网中的第一设备存在在线设备探测需求时,所述第一设备向所述设备组网中的第二设备发送在线设备探测请求;
当所述第二设备接收到所述在线设备探测请求时,所述第二设备基于蓝牙低能耗技术广播发布探测请求报文,其中,所述探测请求报文为BLE广播报文;所述探测请求报文中包含在线设备探测所针对的设备组网的网络标识;所述探测请求报文中的网络标识用于,令接收到所述探测请求报文的设备确认所述探测请求报文所针对的设备组网是否为自身所属的设备组网;
所述设备组网中的在线设备基于蓝牙低能耗技术接收广播报文,其中,当所述设备组网中在线的第三设备接收到所述探测请求报文时,所述第三设备根据所述探测请求报文生成包含所述网络标识的探测应答报文,基于蓝牙低能耗技术广播发布所述探测应答报文,其中:所述探测应答报文为BLE广播报文;所述探测应答报文中包含的网络标识与所述探测请求报文一致;
所述第二设备基于通过蓝牙低能耗技术接收广播报文以获取在线设备探测结果,其中,当所述第二设备接收到所述探测应答报文时,所述第二设备判定所述第三设备在线;
所述第一设备从所述第二设备处获取所述在线设备探测结果。
20.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求1~9中任一项所述的方法步骤。
21.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求10~15中任一项所述的方法步骤。
CN202011193802.0A 2020-10-30 2020-10-30 一种通信方法、装置和电子设备 Pending CN114449491A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202011193802.0A CN114449491A (zh) 2020-10-30 2020-10-30 一种通信方法、装置和电子设备
EP21885221.8A EP4224898A4 (en) 2020-10-30 2021-10-27 COMMUNICATION METHOD AND DEVICE AND ELECTRONIC DEVICE
US18/034,507 US20230396974A1 (en) 2020-10-30 2021-10-27 Communication Method and Apparatus, and Electronic Device
PCT/CN2021/126777 WO2022089494A1 (zh) 2020-10-30 2021-10-27 一种通信方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011193802.0A CN114449491A (zh) 2020-10-30 2020-10-30 一种通信方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN114449491A true CN114449491A (zh) 2022-05-06

Family

ID=81358261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011193802.0A Pending CN114449491A (zh) 2020-10-30 2020-10-30 一种通信方法、装置和电子设备

Country Status (4)

Country Link
US (1) US20230396974A1 (zh)
EP (1) EP4224898A4 (zh)
CN (1) CN114449491A (zh)
WO (1) WO2022089494A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115019494B (zh) * 2022-06-02 2024-02-06 武汉领普科技有限公司 无线开关、无线开关的处理方法及控制系统
CN117319970A (zh) * 2022-06-21 2023-12-29 Oppo广东移动通信有限公司 设备连接方法及装置、存储介质、芯片
CN115038051B (zh) * 2022-08-12 2022-11-08 北京智芯微电子科技有限公司 基于蓝牙的信息上报方法、接收方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104053154A (zh) * 2014-06-16 2014-09-17 福建星网锐捷网络有限公司 一种无线网络接入控制方法、装置和接入点设备
US20150341418A1 (en) * 2013-06-21 2015-11-26 Tencent Technology (Shenzhen) Company Limited Method and system for controlling media information display on multiple terminals
CN108684030A (zh) * 2018-08-30 2018-10-19 新华三技术有限公司 一种检测网络标识冲突的方法及装置
CN109067622A (zh) * 2018-09-29 2018-12-21 新华三技术有限公司 状态探测方法、装置及网络服务器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201304219D0 (en) * 2013-03-08 2013-04-24 Tomtom Int Bv Methods for communicating sensor data between devices
KR101699215B1 (ko) * 2014-03-12 2017-01-23 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 소셜 네트워킹 플랫폼을 통해 주변 디바이스들을 제어하기 위한 방법 및 디바이스
CN104043240B (zh) * 2014-06-19 2016-05-18 青岛喵星信息科技有限公司 一种智能运动手镯
CN104539324B (zh) * 2014-12-25 2017-04-12 惠州Tcl移动通信有限公司 一种蓝牙低功耗组网互连方法及系统
US20180049013A1 (en) * 2015-03-18 2018-02-15 Lg Electronics Inc. Method and device for executing service discovery in wireless communication system
US9642167B1 (en) * 2015-12-17 2017-05-02 Cisco Technology, Inc. Location-based VoIP functions in a wireless network
CN105873023A (zh) * 2016-05-09 2016-08-17 深圳市天工测控技术有限公司 一种基于BLE mesh组网的室内定位系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150341418A1 (en) * 2013-06-21 2015-11-26 Tencent Technology (Shenzhen) Company Limited Method and system for controlling media information display on multiple terminals
CN104053154A (zh) * 2014-06-16 2014-09-17 福建星网锐捷网络有限公司 一种无线网络接入控制方法、装置和接入点设备
CN108684030A (zh) * 2018-08-30 2018-10-19 新华三技术有限公司 一种检测网络标识冲突的方法及装置
CN109067622A (zh) * 2018-09-29 2018-12-21 新华三技术有限公司 状态探测方法、装置及网络服务器

Also Published As

Publication number Publication date
US20230396974A1 (en) 2023-12-07
WO2022089494A1 (zh) 2022-05-05
EP4224898A4 (en) 2024-04-10
EP4224898A1 (en) 2023-08-09

Similar Documents

Publication Publication Date Title
EP3462802B1 (en) Bluetooth connection method and terminal
CN109951362B (zh) 用于控制网络中的节点的电子装置和方法
CN114449491A (zh) 一种通信方法、装置和电子设备
CN110505606B (zh) 蓝牙Mesh网络及其配网鉴权方法、设备和存储介质
US11088862B2 (en) Selection of a coordinator device for an automated environment
CN109816830B (zh) 一种解锁方法及装置
WO2022127785A1 (zh) 一种心跳同步方法、电子设备和系统
CN112616176B (zh) 设备的唤醒方法及装置、控制方法及装置
KR20210053532A (ko) Nan 기반의 클러스터 머징 방법 및 이를 지원하는 전자 장치
KR20200079083A (ko) 전자 장치 및 이의 통신 데이터 링크를 스케쥴링하는 방법
CN111954123B (zh) 无线音频设备信息同步的方法、系统、介质及无线音频设备
KR20210097544A (ko) 근거리 무선 통신 방법 및 장치
CN112152850B (zh) 一种基于闪联协议的物联网设备管理方法及业务终端
CN108260115A (zh) 蓝牙设备位置信息处理方法、装置、终端设备及存储介质
WO2020063261A1 (zh) 一种音箱的交互方法、音箱及音箱系统
CN109151014B (zh) 基于nan智能管理方法及相关产品
WO2023279928A1 (zh) 信号传输方法及信息提示方法、装置、电子设备
US20240015073A1 (en) Connection configuration method and apparatus
CN113645106A (zh) 设备的提醒方法、装置、计算机设备和存储介质
CN114095998A (zh) 用于局域网络中终端的服务信息同步方法及终端
CN113382337A (zh) 一种智能耳机的设备管理系统及方法
CN114928858A (zh) 一种设备连接方法、装置、存储介质、计算机设备
CN117319975A (zh) 蓝牙设备配置方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination