Equipment discovery method and device

By dynamically scheduling various access technologies and discoverability levels of device discovery methods and devices, the problem of diverse power consumption and bandwidth requirements of the BLE protocol architecture in different communication scenarios is solved, and more device discovery modes and processes are realized, including the ability to discover hidden devices.

CN121099298APending Publication Date: 2025-12-09HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511135476.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2021-08-05
Publication Date
2025-12-09

AI Technical Summary

Technical Problem

The BLE protocol architecture only supports a single BLE access technology, which cannot meet the diverse power consumption and bandwidth requirements of different services or the same service in different communication scenarios. In addition, there are few device discovery modes and processes, which cannot meet the needs of more device discovery scenarios and cannot discover hidden devices.

Method used

A device discovery method and apparatus are provided, which supports more device discovery modes and processes by dynamically scheduling multiple access technologies and discoverability levels, including device discovery levels that devices expect to be paired with, identified by a specified address or service set, and that support specific services or capabilities. The access technologies are dynamically adjusted to meet the diverse power consumption and bandwidth requirements of different communication scenarios, thus supporting more device discovery.

Benefits of technology

It meets diverse power consumption and bandwidth requirements in different communication scenarios, supports more device discovery modes and processes, and can discover hidden devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121099298A_ABST
    Figure CN121099298A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an equipment discovery method and device, relates to the technical field of communication, can support multiple access technologies, meets diversified requirements of different services or the same service on power consumption and bandwidth in different communication scenes, can support more equipment discovery modes and equipment discovery processes, and improves the discovery efficiency. And the scene requirements of more equipment discovery are met. The method comprises the steps that a first device obtains request information of a first application; the request information is used for indicating the discoverable level of the first equipment; the first device determines an access technology corresponding to the first application according to the first application; the first device broadcasts a first message through an access technology corresponding to the first application according to the request information; the first message comprises first indication information, and the first indication information is used for indicating the discoverable level of the first equipment.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application, the original application number is 202110897345.1, the original application date is August 5, 2021, and the entire contents of the original application are incorporated herein by reference. TECHNICAL FIELD

[0002] The present application relates to the field of communication technology, in particular to a device discovery method and device. BACKGROUND

[0003] The existing Bluetooth Low Energy (BLE) protocol architecture can include a host, a controller, and a host interface controller (HCI) between the host and the controller. Among them, three device discovery modes are defined in the host: an undetectable mode, a limited discovery mode, and a general discovery mode. Two device discovery processes are also defined in the host: a limited discovery process and a general discovery process.

[0004] Specifically, the first device configured in any of the above device discovery modes can send a broadcast message, and the second device configured in any of the above device discovery processes can scan the broadcast message to discover the first device.

[0005] However, the BLE protocol architecture only supports a single BLE access technology, which cannot meet the diversified needs of power consumption and bandwidth in different communication scenarios for different services or the same service. Moreover, the BLE protocol architecture supports fewer device discovery modes and device discovery processes, which cannot meet the needs of more device discovery scenarios. SUMMARY

[0006] Therefore, the embodiments of the present application provide a device discovery method and device, which can support multiple access technologies, meet the diversified needs of power consumption and bandwidth in different communication scenarios for different services or the same service, and support more device discovery modes and device discovery processes to meet the needs of more device discovery scenarios.

[0007] In a first aspect, the embodiments of the present application provide a device discovery method, which can include: a first device obtaining request information of a first application; determining an access technology corresponding to the first application according to the first application; and broadcasting a first message through the access technology corresponding to the first application according to the request information; wherein the request information can be used to indicate the discoverable level of the first device; and the first message can include first indication information used to indicate the discoverable level of the first device.

[0008] Based on the first aspect, the first device can dynamically schedule multiple access technologies according to the application, to meet the diversified requirements of power consumption and bandwidth of different services or the same service in different communication scenarios. Meanwhile, the first device is provided with multiple discoverable levels, which can support more device discovery modes and device discovery processes, and meet the requirements of more device discovery scenarios.

[0009] In a possible design, the discoverable level includes one or more of the following: the device expects to be discovered by a paired device, the device expects to be discovered by a device with a specified address or service set identifier (SSID), the device expects to be discovered by a device supporting a specific service or capability, the device is not discoverable, the device is generally discoverable, and the device is preferentially discoverable.

[0010] Based on the possible design, multiple discoverable levels are provided, which can meet the requirements of more device discovery scenarios.

[0011] In a possible design, the first message further includes one or more of the following: identification information of the paired device, the specified address or SSID, and the specific service or capability.

[0012] In a possible design, the first device determines the access technology corresponding to the first application according to the application requirement and / or service type of the first application.

[0013] Based on the possible design, the first device can dynamically schedule multiple access technologies according to the application requirement and / or service type of the application, to meet the diversified requirements of power consumption and bandwidth of different services or the same service in different communication scenarios.

[0014] In a possible design, the first message further includes second indication information used to indicate whether the first message is a polling broadcast message.

[0015] In a possible design, when the first message is a polling broadcast message, the first device receives a polling response from the second device; and the first device discovers the second device according to the polling response.

[0016] Based on the above two possible designs, when the first message is a polling broadcast message, the second device can send a polling response to the first device. When the second device is a hidden device (i.e., a device that does not send a broadcast message but only scans and receives a poll), the first device can discover the hidden device according to the polling response sent by the hidden device.

[0017] In a second aspect, the embodiments of the present application provide a communication apparatus, which can implement the functions of the first device in the first aspect or the possible designs of the first aspect. The functions can be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions. For example, a transceiver module and a processing module. The transceiver module is configured to obtain request information of a first application; the processing module is configured to determine an access technology corresponding to the first application according to the first application; the transceiver module is further configured to broadcast a first message through the access technology corresponding to the first application according to the request information; wherein the request information can be used to indicate a discoverability level of the first device; and the first message can include first indication information used to indicate the discoverability level of the first device.

[0018] In a possible design, the discoverability level includes one or more of the following: the device expects to be discovered by a paired device, the device expects to be discovered by a device with a specified address or service set identification (SSID), the device expects to be discovered by a device supporting a specific service or capability, the device is not discoverable, the device is generally discoverable, and the device is preferentially discoverable.

[0019] In a possible design, the first message further includes one or more of the following: identification information of the paired device, the specified address or SSID, and the specific service or capability.

[0020] In a possible design, the processing module is further configured to determine the access technology corresponding to the first application according to an application requirement and / or a service type of the first application.

[0021] In a possible design, the first message further includes second indication information used to indicate whether the first message is a polling broadcast message.

[0022] In a possible design, when the first message is the polling broadcast message, the transceiver module is further configured to receive a polling response from a second device; and the processing module is further configured to discover the second device according to the polling response.

[0023] It should be noted that the implementation of the communication apparatus can also refer to the behaviors and functions of the first device in the device discovery method provided in the first aspect or any of the possible designs of the first aspect. The technical effects brought by the communication apparatus can also refer to the technical effects brought by the first aspect or any of the possible designs of the first aspect, which will not be repeated here.

[0024] In a third aspect, an embodiment of the present application provides a communication apparatus, which can be a first device or a chip or system on chip in the first device. The communication apparatus can implement the functions of the first device in the above aspects or possible designs, which can be implemented by hardware. In a possible design, the communication apparatus can include a transceiver and a processor. The transceiver and the processor can be used to support the communication apparatus to implement the functions involved in the above first aspect or any possible design of the first aspect. For example, the transceiver can be used to acquire the request information of the first application; the processor can be used to determine the access technology corresponding to the first application according to the first application; the transceiver can also be used to broadcast the first message through the access technology corresponding to the first application according to the request information; wherein the request information can be used to indicate the discoverability level of the first device; the first message can include the first indication information used to indicate the discoverability level of the first device. In another possible design, the communication apparatus can further include a memory, which is used to store computer-executed instructions and data necessary for the communication apparatus. When the communication apparatus is running, the transceiver and the processor execute the computer-executed instructions stored in the memory, so that the communication apparatus performs the device discovery method as described in the above first aspect or any possible design of the first aspect.

[0025] In the third aspect, the specific implementation of the communication apparatus can refer to the behaviors and functions of the first device in the device discovery method provided in the first aspect or any possible design of the first aspect.

[0026] In a fourth aspect, an embodiment of the present application provides a device discovery method, which includes: a second device acquires a first discovery request of a first application; determines an access technology corresponding to the first application according to the first application; scans a first message broadcast by a first device through the access technology corresponding to the first application; filters the first message according to a filtering strategy corresponding to the first application, and determines a device corresponding to the first application; wherein the first discovery request can be used to request to discover the device corresponding to the first application; the first message can include first indication information used to indicate the discoverability level of the first device.

[0027] Based on the fourth aspect, the second device can dynamically schedule multiple access technologies according to the application, to meet the diversified requirements of power consumption and bandwidth of different services or the same service in different communication scenarios. Meanwhile, multiple filtering strategies are provided for the second device, which can support more device discovery modes and device discovery processes, to meet the requirements of more device discovery scenarios.

[0028] In a possible design, the second device determines the access technology corresponding to the first application according to the application requirement and / or service type of the first application.

[0029] Based on the possible design, the second device can dynamically schedule multiple access technologies according to the application requirement and / or service type of the first application, to meet the diversified requirements of power consumption and bandwidth of different services or the same service in different communication scenarios.

[0030] In a possible design, the discoverable level includes one or more of the following: the device expects to be discovered by a paired device, the device expects to be discovered by a device with a specified address or service set identification (SSID), the device expects to be discovered by a device supporting a specified service or capability, the device is not discoverable, the device is generally discoverable, and the device is preferentially discoverable.

[0031] Based on the possible design, multiple discoverable levels are provided, which can meet the requirements of more device discovery scenarios.

[0032] In a possible design, the first message further includes one or more of the following: identification information of a paired device, a specified address or SSID, a specific service or capability.

[0033] In a possible design, the filtering strategy includes one or more of the following: discovering a paired device, discovering a device with a specified address or SSID, discovering a device supporting a specific service or capability, discovering a device within a specific range, not enabling filtering, discovering a discoverable device, and discovering a preferential device.

[0034] Based on the possible design, multiple filtering strategies are provided, which can support more device discovery modes and device discovery procedures, and meet the requirements of more device discovery scenarios.

[0035] In a possible design, the first message further includes second indication information used to indicate whether the first message is a polling broadcast message.

[0036] In a possible design, when the first message is a polling broadcast message, the second device sends a polling response to the first device when the second device determines that the first device is a device corresponding to the first application.

[0037] Based on the above two possible designs, when the first message is a polling broadcast message, the second device can send a polling response to the first device. When the second device is a hidden device (i.e., a device that does not send a broadcast message but only scans and receives a poll), the first device can discover the hidden device according to the polling response sent by the hidden device.

[0038] In a possible design, the second device acquires a second discovery request of a second application; the second discovery request is used to request discovery of a device corresponding to the second application; the second device determines whether the first discovery request and the second discovery request overlap; if the first discovery request and the second discovery request overlap, the second device determines the device corresponding to the first application as the device corresponding to the second application; or the second device combines the first discovery request and the second discovery request into one discovery request; the second device scans the first message broadcast by the first device according to the access technology corresponding to the first application, according to the combined discovery request; the second device filters the first message according to a combined filtering policy, and determines the filtered device as the device corresponding to the first application and the device corresponding to the second application, where the combined filtering policy is a filtering policy obtained by combining the filtering policy corresponding to the first application and the filtering policy corresponding to the second application, or the combined filtering policy is a filtering policy corresponding to the combined discovery request.

[0039] Based on the possible design, when the second device acquires discovery requests of multiple applications, the second device can arbitrate and combine the discovery requests of the multiple applications, so as to reduce the number of times of performing the device discovery method by the second device, and reduce power consumption of the second device.

[0040] In a possible design, the second device determines a first label according to the first application, where the labels corresponding to the applications whose discovery requests overlap are the same; the second device filters the first message according to the filtering policy corresponding to the first application, and determines the filtered device as the device corresponding to the application indicated by the first label.

[0041] Based on the possible design, the second device can further set a label for each application according to application requirements of the applications, and can subsequently distribute the device discovery result to each application according to the label.

[0042] In a fifth aspect, an embodiment of the present application provides a communication apparatus, which can implement functions performed by the second device in the fourth aspect or the possible design of the fourth aspect, and the functions can be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions. For example, a transceiver module and a processing module. The transceiver module is configured to acquire a first discovery request of a first application; the processing module is configured to determine an access technology corresponding to the first application according to the first application; the transceiver module is configured to scan a first message broadcast by a first device according to the access technology corresponding to the first application; and the processing module is configured to filter the first message according to a filtering policy corresponding to the first application, and determine a device corresponding to the first application. The first discovery request can be used to request discovery of the device corresponding to the first application; and the first message can include first indication information used to indicate a discoverable level of the first device.

[0043] In a possible design, the processing module is configured to determine the access technology corresponding to the first application according to application requirements and / or a service type of the first application.

[0044] In a possible design, the discoverable level includes one or more of the following: the device expects to be discovered by a paired device, the device expects to be discovered by a device with a specified address or service set identifier (SSID), the device expects to be discovered by a device supporting a specified service or capability, the device is not discoverable, the device is generally discoverable, and the device is preferentially discoverable.

[0045] In a possible design, the first message further includes one or more of the following: identification information of the paired device, the specified address or SSID, and the specified service or capability.

[0046] In a possible design, the filtering policy includes one or more of the following: discovering a paired device, discovering a device with a specified address or SSID, discovering a device supporting a specified service or capability, discovering a device within a specified range, not enabling filtering, discovering a discoverable device, and discovering a preferentially discoverable device.

[0047] In a possible design, the first message further includes second indication information used to indicate whether the first message is a polling broadcast message.

[0048] In a possible design, when the first message is a polling broadcast message, the transceiver module sends a polling response to the first device when the processing module determines that the first device is the device corresponding to the first application.

[0049] In a possible design, the transceiver module is further configured to obtain a second discovery request of a second application, where the second discovery request is used to request discovery of a device corresponding to the second application; the processing module is further configured to determine whether the first discovery request and the second discovery request overlap; if the first discovery request and the second discovery request overlap, the processing module determines the device corresponding to the first application as the device corresponding to the second application; or the processing module combines the first discovery request and the second discovery request into one discovery request; the transceiver module scans the first message broadcast by the first device through the access technology corresponding to the first application according to the combined discovery request; and the processing module filters the first message according to a combined filtering policy, and determines the filtered device as the device corresponding to the first application and the device corresponding to the second application, where the combined filtering policy is a filtering policy obtained by combining a filtering policy corresponding to the first application and a filtering policy corresponding to the second application, or the combined filtering policy is a filtering policy corresponding to the combined discovery request.

[0050] In a possible design, the processing module is further configured to determine a first label according to the first application; wherein the labels corresponding to the applications whose discovery requests overlap are the same; and the processing module is further configured to filter the first message according to a filtering policy corresponding to the first application, and determine the filtered device as the device corresponding to the application indicated by the first label.

[0051] It should be noted that the implementation of the communication apparatus can also refer to the behaviors of the second device in the device discovery method provided in the fourth aspect or any possible design of the fourth aspect, and the technical effects brought by the communication apparatus can also refer to the technical effects brought by the fourth aspect or any possible design of the fourth aspect, which will not be repeated here.

[0052] In a sixth aspect, an embodiment of the present application provides a communication apparatus, which can be the second device or a chip or system on chip in the second device. The communication apparatus can implement the functions performed by the second device in the above aspects or possible designs, and the functions can be implemented by hardware. In a possible design, the communication apparatus can include a transceiver and a processor. The transceiver and the processor can be configured to support the communication apparatus to implement the functions involved in the fourth aspect or any possible design of the fourth aspect. For example, the transceiver can be configured to obtain the first discovery request of the first application; the processor can be configured to determine the access technology corresponding to the first application according to the first application; the transceiver can be further configured to scan the first message broadcast by the first device through the access technology corresponding to the first application; and the processor can be further configured to filter the first message according to the filtering policy corresponding to the first application, and determine the device corresponding to the first application; wherein the first discovery request can be used to request to discover the device corresponding to the first application; and the first message can include the first indication information used to indicate the discoverable level of the first device. In another possible design, the communication apparatus can further include a memory configured to store computer-executable instructions and data necessary for the communication apparatus. When the communication apparatus is running, the transceiver and the processor execute the computer-executable instructions stored in the memory, so that the communication apparatus performs the device discovery method described in the fourth aspect or any possible design of the fourth aspect.

[0053] In the sixth aspect, the implementation of the communication apparatus can refer to the behaviors of the second device in the device discovery method provided in the fourth aspect or any possible design of the fourth aspect.

[0054] In a seventh aspect, an embodiment of the present application provides a communication apparatus, comprising one or more processors, wherein the one or more processors are configured to execute computer programs or instructions, and when the one or more processors execute the computer programs or instructions, the communication apparatus is caused to perform the device discovery method according to the first aspect or any possible design of the first aspect, or perform the device discovery method according to the fourth aspect or any possible design of the fourth aspect.

[0055] In a possible design of the communication apparatus, the communication apparatus further comprises one or more communication interfaces, wherein the one or more communication interfaces are coupled to the one or more processors, and the one or more communication interfaces are configured to communicate with other modules outside the communication apparatus.

[0056] In a possible design of the communication apparatus, the communication apparatus further comprises one or more memories, wherein the one or more memories are coupled to the one or more processors, and the one or more memories are configured to store the computer programs or instructions. In a possible implementation, the memory is located outside the communication apparatus. In another possible implementation, the memory is located inside the communication apparatus. In the embodiment of the present application, the processor and the memory can also be integrated into one device, i.e., the processor and the memory can also be integrated together.

[0057] In an eighth aspect, a communication apparatus is provided, comprising an interface circuit and a logic circuit, wherein the interface circuit is coupled to the logic circuit, the logic circuit is configured to perform the device discovery method according to the first aspect or any possible design of the first aspect, or perform the device discovery method according to the fourth aspect or any possible design of the fourth aspect, and the interface circuit is configured to communicate with other modules outside the communication apparatus.

[0058] In a ninth aspect, a computer readable storage medium is provided, which stores computer programs or instructions, and when the computer programs or instructions are executed on a computer, the computer is caused to perform the device discovery method according to the first aspect or any possible design of the first aspect, or perform the device discovery method according to the fourth aspect or any possible design of the fourth aspect.

[0059] In a tenth aspect, a computer program product is provided, which contains computer programs or instructions, and when the computer programs or instructions are executed on a computer, the computer is caused to perform the device discovery method according to the first aspect or any possible design of the first aspect, or perform the device discovery method according to the fourth aspect or any possible design of the fourth aspect.

[0060] In an eleventh aspect, an embodiment of the present application provides a computer program which, when running on a computer, causes the computer to perform the device discovery method according to the first aspect or any possible implementation of the first aspect, or perform the device discovery method according to the fourth aspect or any possible implementation of the fourth aspect.

[0061] The technical effects brought by any of the seventh aspect to the eleventh aspect can refer to the technical effects brought by any of the first aspect or any possible implementation of the first aspect, or refer to the technical effects brought by any of the fourth aspect or any possible implementation of the fourth aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0062] Figure 1 A flow chart of a limited discovery procedure provided by an embodiment of the present application;

[0063] Figure 2 A flow chart of a general discovery procedure provided by an embodiment of the present application;

[0064] Figure 3 A schematic diagram of a star flash new short range protocol architecture provided by an embodiment of the present application;

[0065] Figure 4 A schematic diagram of an SLE access technology provided by an embodiment of the present application;

[0066] Figure 5 A schematic diagram of an SLB access technology provided by an embodiment of the present application;

[0067] Figure 6 A composition structure diagram of a communication device provided by an embodiment of the present application;

[0068] Figure 7 A flow chart of a device discovery method provided by an embodiment of the present application;

[0069] Figure 8 A flow chart of a device discovery method provided by an embodiment of the present application;

[0070] Figure 9 A frame structure schematic diagram of broadcast data provided by an embodiment of the present application;

[0071] Figure 10 A composition schematic diagram of a communication system provided by an embodiment of the present application;

[0072] Figure 11 A flow chart of a polling broadcast provided by an embodiment of the present application;

[0073] Figure 12 A flow chart of a device discovery method provided by an embodiment of the present application;

[0074] Figure 13 A flow chart of a device discovery method provided for an embodiment of the present application;

[0075] Figure 14 A flow chart of an arbitration and merging method provided for an embodiment of the present application;

[0076] Figure 15 A flow chart of an arbitration and merging method provided for an embodiment of the present application;

[0077] Figure 16 A composition schematic diagram of a communication system provided for an embodiment of the present application;

[0078] Figure 17 A composition schematic diagram of a communication device provided for an embodiment of the present application. DETAILED DESCRIPTION

[0079] Bluetooth low energy (BLE) protocol architecture can include a host, a controller and a host interface controller (HCI) between the host and the controller.

[0080] The host can define device types, device discovery modes and device discovery procedures. The controller can provide underlying functions required in the device discovery procedures, such as sending a broadcast message or scanning a broadcast message.

[0081] For example, the device types can include peripheral devices and central devices. The device discovery modes can include an un-discoverable mode, a limited discoverable mode and a general discoverable mode. The device discovery procedures can include a limited discovery procedure and a general discovery procedure.

[0082] Specifically, in the device discovery procedure, a peripheral device configured in any of the above device discovery modes can send a broadcast message, and a central device configured in any of the above device discovery procedures can scan the broadcast message to discover the peripheral device.

[0083] For example, the peripheral device can be a headset, a watch or other devices with limited memory or sensitive to power consumption. The central device can be a mobile phone, a computer or other devices. The headset can send a broadcast message, and the mobile phone can scan the broadcast message sent by the headset to discover the headset.

[0084] The device configured in the un-discoverable mode can send a broadcast message, but cannot configure flag bits of the limited discoverable mode and the general discoverable mode in the broadcast data of the Flags type.

[0085] Limited discovery mode is generally used for devices that expect to be discovered and connected quickly. Devices configured in this mode need to send broadcast messages and configure the limited discovery mode flag in the broadcast data of type Flags.

[0086] Devices configured in general discovery mode need to send broadcast messages and configure the general discovery mode flag in the broadcast data of type Flags.

[0087] For example, in BLE, flags can be configured in broadcast data of type Flags to indicate limited discovery mode or general discovery mode. As shown in Table 1 below, broadcast data of type Flags can be 1 byte long. Setting the value of this byte to 0 indicates limited discovery mode, and setting the value of this byte to 1 indicates general discovery mode.

[0088] Table 1

[0089]

[0090]

[0091] Among them, devices configured for limited discovery can scan broadcast messages and filter out devices configured for limited discovery mode during the scanning process.

[0092] For example, such as Figure 1 As shown, taking peripheral devices including peripheral device 1 configured in limited discovery mode and peripheral device 2 configured in general discovery mode as an example, peripheral device 1 can send a broadcast event (limited) to indicate that peripheral device 1 is configured in limited discovery mode; peripheral device 2 can send a broadcast event (general) to indicate that peripheral device 2 is configured in general discovery mode; assuming that the central device scans broadcast events (limited) and broadcast events (general) during the scan, the central device can filter out the device configured in limited discovery mode based on the broadcast events, that is, the central device discovers peripheral device 1.

[0093] Among them, devices configured for general discovery can scan broadcast messages and filter out devices configured for limited discovery mode and devices configured for general discovery mode during the scanning process, that is, remove devices configured for undiscoverable mode.

[0094] For example, such as Figure 2As shown, taking the example that the peripheral devices include the peripheral device 1 configured as the limited discovery mode and the peripheral device 2 configured as the general discovery mode, the peripheral device 1 can send a broadcast event (limited) to indicate that the peripheral device 1 is configured as the limited discovery mode; the peripheral device 2 can send a broadcast event (general) to indicate that the peripheral device 2 is configured as the general discovery mode; assuming that the central device scans the broadcast event (limited) and the broadcast event (general) during scanning, the central device can filter out the device configured as the limited discovery mode and the device configured as the general discovery mode according to the broadcast events, that is, the central device discovers the peripheral device 1 and the peripheral device 2.

[0095] However, the BLE protocol architecture described above only supports a single BLE access technology, and cannot meet the diversified requirements of power consumption and bandwidth in different services (for example, audio service, video service) or the same application in different communication scenarios (for example, a communication scenario of playing standard sound quality in the audio service, a communication scenario of playing lossless sound quality in the audio service). Moreover, the BLE protocol architecture supports fewer device discovery modes and device discovery processes, and cannot meet the scene requirements of more device discovery, such as the scene requirements of only expecting to discover once-paired devices, the scene requirements of finding devices according to device distance, and the like.

[0096] In addition, in the device discovery process, the central device needs to scan the broadcast message sent by the peripheral device to discover the peripheral device, and when the peripheral device does not send the broadcast message, the peripheral device cannot be discovered, that is, the BLE protocol architecture described above cannot support the function of discovering hidden devices (that is, devices that do not send broadcast messages and only scan and receive polling).

[0097] Based on the above problems, the embodiments of the present application provide a device discovery method, which can include: a first device obtaining request information of a first application; the request information being used to indicate a discoverable level of the first device; the first device determining an access technology corresponding to the first application according to the first application, and broadcasting a first message including first indication information through the access technology corresponding to the first application according to the request information; the first indication information can be used to indicate the discoverable level of the first device.

[0098] In the embodiments of the present application, the first device can dynamically schedule multiple access technologies according to the application to meet the diversified requirements of power consumption and bandwidth in different services or the same service in different communication scenarios. At the same time, multiple discoverable levels are provided for the first device, which can support more device discovery modes and device discovery processes to meet the scene requirements of more device discovery.

[0099] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0100] The device discovery method provided by the embodiments of the present application can be used in any communication system, which can be a short-range communication system, a cellular communication system (for example, a long term evolution (LTE) system, a new radio access technology (NR)), a worldwide interoperability for microwave access (WiMAX) communication system, and various types of next-generation communication systems (for example, a sixth generation (6G) mobile communication system), and the like, without limitation. Among them, the short-range communication system can be a Bluetooth communication system, a Bluetooth low energy communication system, a wireless-fidelity (Wi-Fi) communication system, and various types of next-generation short-range communication systems, and the like, without limitation.

[0101] For example, the communication system is a short-range communication system, and each communication device in the short-range communication system can use a sparklink-new short-range protocol. As shown in Figure 3 The sparklink-new short-range protocol architecture can include an access layer, a host, and an application. Among them, the access layer can support multiple access technologies at the same time, such as a sparklink-basic (SLB) access technology, a sparklink-low energy (SLE) access technology, and the like. Above the access layer is a normalized host framework, and the host can schedule the access technologies supported by the access layer according to the application (APP) requirements.

[0102] As shown in Figure 3 The host can include a basic application layer and a basic service layer.

[0103] Specifically, as shown in Figure 3 The basic application layer can include a basic communication service framework module, and the basic service layer can include a device discovery module.

[0104] Among them, the basic communication service framework module can be responsible for facing the application, and receiving the device discovery request issued by the application, and determining the underlying access technology that needs to be scheduled according to the application requirements. And using the services provided by the device discovery module, selecting the appropriate device discovery mode, the discoverable level that meets the requirements, the filtering strategy and the like, issuing the specific device discovery request configuration to the device discovery module. When the communication device is a scanning device, the basic communication service framework module can also receive the device discovery result sent by the device discovery module, and distribute the device discovery result to each application according to the application requirements.

[0105] Exemplarily, the basic communication service framework module can determine the underlying access technology that needs to be scheduled according to the quality of service (QoS) capability requirement, the service type, and the like of the application.

[0106] For example, assuming that the requirement of the application is to play 1080P high-definition audio, the bandwidth requirement of the audio data after being encoded and compressed for the underlying transmission channel is 5 Mbps, the maximum bandwidth supported by the SLE access technology is 4 Mbps, and the maximum bandwidth supported by the SLB access technology is about 120 Mbps, the basic communication service framework module can determine that the SLE access technology cannot meet the requirement of playing high-definition audio, and thus determines to discover a device supporting the SLB access technology, and further calls the SLB access technology to perform device discovery.

[0107] The device discovery module can define a device discovery mode, provide a plurality of device discoverable levels and filtering strategies, and the like. The device discovery module can receive a device discovery request issued by the basic communication service framework module, encapsulate a device discovery request command according to the underlying access technology selected in the device discovery request, and distribute the device discovery request command to the corresponding underlying access technology (such as the SLB access technology, the SLE access technology, and the like). When the communication device is a scanning device, the device discovery module can further receive a device discovery result reported by the underlying access technology after the underlying access technology completes processing of the device discovery request command, filter the device discovery result according to a filtering strategy, and report the filtered device discovery result to the basic communication service framework module.

[0108] The underlying access technology is configured to receive the device discovery request command sent by the device discovery module. When the communication device is a broadcasting device, the underlying access technology can send a broadcast message according to the device discovery request command, so that the current device is discovered. When the communication device is a scanning device, the underlying access technology can execute a device discovery process according to the device discovery request command sent by the device discovery module, obtain a device discovery result, and report the device discovery result to the device discovery module. When the underlying access technology supports a filtering function (such as the SLE access technology), the underlying access technology can also preliminarily filter the device discovery result based on a filtering strategy, and report the preliminarily filtered device discovery result to the device discovery module. The filtering strategy can be indicated to the underlying access technology by the basic communication service framework module through the device discovery module.

[0109] The access technology supported by the access layer can be the SLB access technology, the SLE access technology, and the like, or can be the Bluetooth (BT), BLE, wireless local area networks (WLAN), near field communication (NFC), and the like.

[0110] Specifically, SLE access technology is an access technology that enables rapid discovery and connection, and boasts low power consumption advantages. In the disconnected state, the broadcasting device can typically select one or more of three fixed broadcast channels to send a broadcast message at once. The scanning device can then scan these three channels sequentially. When a broadcast message is received, the broadcasting device is discovered. Furthermore, SLE access technology allows the scanning device to continue sending scan requests to the broadcasting device after receiving a broadcast message, requesting more device information from the broadcasting device.

[0111] For example, such as Figure 4 As shown, in the disconnected state, the broadcasting device can send broadcast messages (i.e., ADV_EXT_IND) on broadcast channels A, B, and C. ADV_EXT_IND is the basic broadcast type for SLE access technology, and the host can configure the broadcasting device to send basic broadcasts on these three channels based on SLE access technology. ADV_EXT_IND can also carry time-frequency pointer information to point to extended broadcast data (i.e., AUX_ADV_IND) carried on the data channel. The scanning device can select a broadcast channel to scan within the scanning window. After receiving ADV_EXT_IND, the scanning device can continue to receive AUX_ADV_IND on the data channel based on the time-frequency pointer information and send a scan request to request the broadcasting device to send more device information. The broadcasting device can receive scan requests based on a receive window, the maximum length of which is 15 scan requests, and the length is reconfigurable. After receiving a scan request, the broadcasting device can reply with a scan response to the scanning device.

[0112] It should be noted that in the SLE access technology, before the broadcaster device and the scanner device establish a connection, the broadcaster device can send a broadcast message, which can include indication information indicating that the broadcaster device expects to become a resource grant (G) device, or include indication information indicating that the broadcaster device expects to become a terminal (T) device. After the scanner device scans the broadcast message, the scanner device can send a connection request to the broadcaster device, which can include indication information indicating that the scanner device expects to become a G device, or include indication information indicating that the scanner device expects to become a T device. After the broadcaster device receives the connection request, the broadcaster device and the scanner device negotiate to determine that the broadcaster device becomes a T device and the scanner device becomes a G device, and then establish a connection; or the broadcaster device becomes a G device and the scanner device becomes a T device, and then establish a connection; or the negotiation fails and the connection fails. When the broadcaster device and the scanner device successfully establish a connection, the device that becomes a G device can schedule resources as a resource scheduling device.

[0113] For example, in the broadcast message sent by the broadcaster device, the indication information indicating that the broadcaster device expects to become a T device is included. After the scanner device scans the broadcast message, the scanner device can send a connection request to the broadcaster device. Assuming that the connection request includes indication information indicating that the scanner device expects to become a G device, the broadcaster device can determine itself as a T device and the scanner device as a G device according to the connection request, successfully establish a connection with the scanner device, and schedule resources by the scanner device as a resource scheduling device. Assuming that the connection request includes indication information indicating that the scanner device expects to become a T device, since both the broadcaster device and the scanner device expect to become a T device, the broadcaster device can determine itself as a G device and the scanner device as a T device according to the connection request, successfully establish a connection with the scanner device, and schedule resources by the broadcaster device as a resource scheduling device; or the broadcaster device can refuse to become a G device, i.e., the broadcaster device refuses to establish a connection with the scanner device.

[0114] For example, if a broadcast message sent by a broadcasting device includes an indication that the broadcasting device aspires to become a G device, a scanning device, upon detecting this broadcast message, can send a connection request to the broadcasting device. Assuming this connection request includes an indication that the scanning device aspires to become a T device, the broadcasting device can determine itself as a G device and the scanning device as a T device based on this connection request, successfully establishing a connection with the scanning device, and the broadcasting device will then act as a resource scheduler to allocate resources. Alternatively, if the connection request includes an indication that the scanning device aspires to become a G device, since both the broadcasting device and the scanning device aspire to become G devices, the broadcasting device can determine itself as a T device and the scanning device as a G device, successfully establishing a connection with the scanning device, and the scanning device will then act as a resource scheduler to allocate resources. The broadcasting device can also refuse to become a T device, i.e., refuse to establish a connection with the scanning device.

[0115] Specifically, SLB access technology is an access technology with high bandwidth capabilities. In SLB access technology, devices can be divided into G devices and T devices. Among them, the G device can be the resource scheduling center. In SLB access technology, the G device generally sends broadcast messages, and the T device scans and receives the broadcast messages from the G device. The G device will not scan to discover the T device. That is, before the SLB access technology is connected, the device discovery process is one-way, and only the T device can discover the G device.

[0116] For example, such as Figure 5 As shown, the G device can periodically transmit the first sync signal (FTS), the second sync signal (STS), the master information block (MIB) message, and the system information block (SIB) message on fixed time-frequency domain resources. After receiving and synchronizing the FTS and STS, the T device completes downlink synchronization, synchronously receives the MIB message, and then receives the SIB message, thus completing the synchronization process between the G device and the T device.

[0117] In specific implementation, the following methods are adopted: Figure 3 Communication devices using the protocol architecture shown, such as broadcast devices and scanning devices, can all adopt it. Figure 6 The shown composition structure, or including Figure 6 The components shown. Figure 6 This is a schematic diagram illustrating the composition of a communication device 600 provided in an embodiment of this application. The communication device 600 can be a broadcasting device or a chip or system-on-a-chip within the broadcasting device; it can also be a scanning device or a chip or system-on-a-chip within the scanning device. For example...Figure 6 As shown, the communication device 600 includes a processor 601, a transceiver 602, and a communication line 603.

[0118] Further, the communication device 600 can further include a memory 604. The processor 601, the memory 604, and the transceiver 602 can be connected through the communication line 603.

[0119] The processor 601 can be a central processing unit (CPU), a general processor network processor (NP), a digital signal processing (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 601 can also be other devices with processing function, such as a circuit, a device, or a software module, which are not limited herein.

[0120] The transceiver 602 is configured to communicate with other devices or other communication networks. The other communication networks can be an Ethernet, a radio access network (RAN), a wireless local area network (WLAN), etc. The transceiver 602 can be a module, a circuit, a transceiver, or any device capable of implementing communication.

[0121] The communication line 603 is configured to transmit information between components included in the communication device 600.

[0122] The memory 604 is configured to store instructions. The instructions can be a computer program.

[0123] The memory 604 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions, or a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, a magnetic disk storage or other magnetic storage devices, etc., which are not limited herein.

[0124] It should be noted that the memory 604 can exist independently of the processor 601, or can be integrated with the processor 601. The memory 604 can be used to store instructions or program codes or some data, etc. The memory 604 can be located within the communication apparatus 600, or can be located outside the communication apparatus 600, without limitation. The processor 601 is configured to execute the instructions stored in the memory 604, so as to implement the device discovery method provided in the embodiments of the present application.

[0125] In an example, the processor 601 can include one or more CPUs, for example, the CPU0 and the CPU1 in the Figure 6

[0126] As an optional implementation, the communication apparatus 600 includes a plurality of processors, for example, in addition to the processor 601 in the Figure 6 , the processor 607 can be further included.

[0127] As an optional implementation, the communication apparatus 600 further includes an output device 605 and an input device 606. Exemplarily, the input device 606 is a keyboard, a mouse, a microphone, a joystick or the like, and the output device 605 is a display screen, a speaker or the like.

[0128] It should be noted that the communication apparatus 600 can be a desktop computer, a laptop computer, a network server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system or a device having a similar structure in the Figure 6 . In addition, the constituent structures shown in the Figure 7 do not constitute a limitation on the communication apparatus, and the communication apparatus can include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components. Figure 6

[0129] In the embodiments of the present application, the chip system can be composed of a chip, or can include a chip and other discrete devices.

[0130] In addition, the actions, terms, etc. involved among the embodiments of the present application can be mutually referred to, without limitation. The message name or the parameter name in the message exchanged between the devices in the embodiments of the present application is only an example, and other names can also be used in the specific implementation, without limitation.

[0131] The device discovery method provided in the embodiments of the present application will be described below in combination with the protocol architecture shown in the Figure 3 . The first device can be any broadcast device in a communication system using the protocol architecture shown in the Figure 3 . The second device can be any broadcast device in a communication system using the protocol architecture shown in the​​Figure 3 The scanning device of the protocol architecture shown. The first device and the second device described in the following embodiments can be provided with Figure 6 The components shown.

[0132] Figure 7 A flowchart of a device discovery method applied to a broadcaster device provided by the embodiments of the present application, as shown in the figure, the method can include: Figure 7 The first device and the second device described in the following embodiments can be provided with

[0133] Step 701, the first device acquires the request information of the first application.

[0134] The request information can be used to indicate the discoverable level of the first device.

[0135] Specifically, the request information can be used to request the first device to announce the discoverable level of the first device to the outside. The request information can also be used to request the first device to announce the device information of the first device to the outside.

[0136] The device information can be device type, device appearance, device manufacturer information, device name, etc. without limitation.

[0137] The discoverable level can include one or more of the following: the device expects to be discovered by the device that has been paired, the device expects to be discovered by the device with a specified address or service set identifier (SSID), the device expects to be discovered by the device supporting a specific service or capability, the device is not discoverable, the device is generally discoverable, and the device is preferentially discoverable.

[0138] Specifically, when the first device adopts the protocol structure as shown in the figure, as shown in the figure, the discoverable level can be configured in the device discovery module of the first device, and the description of each discoverable level can be found in Table 2 as follows: Figure 3 Figure 8

[0139] Table 2

[0140]

[0141]

[0142] In an example, the request information can include the discoverable level of the first device, and the first device can determine the discoverable level of the first device according to the request information.

[0143] For example, the request information can include the device expecting to be discovered by the device that has been paired, and the first device can determine the discoverable level of the first device to be the device expecting to be discovered by the device that has been paired according to the request information.

[0144] ​​In the second example, the request information may include one or more of the following: identification information of previously paired devices, specified address or SSID, specific services or capabilities, etc. The first device can determine its discoverability level based on the request information.

[0145] The device identification information can include the device's MAC address, IP address, ID, etc., which can be used to identify the device's identity without restriction.

[0146] For example, if the request information includes an SSID, the first device can determine its discoverability level based on the SSID, meaning the device expects to be discovered by a device with a specified address or SSID.

[0147] In the third example, the request information may also include the application requirements and / or service type of the first application. The first device can determine its discoverability level based on the application requirements and / or service type of the first application.

[0148] For example, if the request information includes the application requirements of the first application, assuming that the application requirement of the first application is to play audio, the first device can determine its discoverability level based on the request information as the device expects to be discovered by devices that support specific services or capabilities.

[0149] Based on the three examples above, when the first device adopts, as Figure 3 When the protocol structure is shown, such as Figure 8 As shown, the basic communication service framework module in the first device can obtain the request information of the first application and call the discoverability level provided by the device discovery module (e.g., the basic communication service framework module can obtain the discoverability level provided by the device discovery module by calling the interface provided by the device discovery module), and determine the discoverability level of the first device based on the request information of the first application.

[0150] Optionally, the request information may also include a broadcast mode.

[0151] The broadcast mode can be either broadcast or polling broadcast.

[0152] Specifically, when the broadcast mode is broadcast, the first device can use broadcast to inform others of its discoverability level. When the broadcast mode is polling broadcast, the first device can use polling broadcast to inform others of its discoverability level.

[0153] Optionally, the request information may also include broadcast data.

[0154] The broadcast data can be the transmission power of the first device, the services supported by the first device, or the status information of the first device, etc., without restriction.

[0155] Exemplarily, the first device can carry broadcast data when notifying the discoverability level of the first device.

[0156] At step 702, the first device determines an access technology corresponding to the first application according to the first application.

[0157] Exemplarily, the first device can determine the access technology corresponding to the first application according to the application requirement and / or the service type of the first application.

[0158] The application requirement of the first application can be a QoS capability requirement of the first application.

[0159] The service type of the first application can be audio service, video service, or call service, etc. without limitation. Further, the audio service can be further divided into playing standard audio service, playing lossless audio service, etc., and the video service can be further divided into playing high-definition video service, playing standard video service, etc.

[0160] Specifically, as shown in Figure 8 The first device can determine the access technology corresponding to the first application according to the first application by the basic communication service framework module of the first device.

[0161] For example, taking the application requirement of the first application as playing 1080P high-definition audio and the bandwidth requirement of the audio data after encoding compression to the underlying transmission channel as 5Mbps as an example, assuming that the maximum bandwidth supported by the SLE access technology is 4Mbps and the maximum bandwidth supported by the SLB access technology is about 120Mbps, the basic communication service framework module of the first device can determine that the SLB access technology can meet the playing of 1080P high-definition audio and the SLE access technology cannot meet the playing of 1080P high-definition audio, so as to determine the access technology corresponding to the first application as the SLB access technology.

[0162] For another example, taking the service type of the first application as playing standard audio service as an example, assuming that the playing standard audio service corresponds to the SLE access technology, the basic communication service framework module of the first device can determine the access technology corresponding to the first application as the SLE access technology.

[0163] At step 703, the first device broadcasts the first message through the access technology corresponding to the first application according to the request information.

[0164] As shown in Figure 8 After the basic communication service framework module of the first device determines the access technology corresponding to the first application, the basic communication service framework module of the first device can indicate the access technology corresponding to the first application to the device discovery module, and the device discovery module can further indicate the access technology corresponding to the first application to the access layer, so that the access layer determines and broadcasts the first message.

[0165] Specifically, the basic communication service framework module can indicate the access technology corresponding to the first application in the request information, convert the request information into request information that the device discovery module can receive, and send it to the device discovery module. The device discovery module can determine the access technology corresponding to the first application based on the received request information, encapsulate the relevant parameters, convert the received request information into request information that the access layer can receive, and send it to the access layer. The access layer determines the first message based on the request information and broadcasts it.

[0166] For example, taking the SLE access technology determined by the basic communication service framework module of the first device as the access technology, the basic communication service framework module can indicate the SLE access technology in the request information, convert the request information into request information that the device discovery module can receive, and send it to the device discovery module. The device discovery module, based on the SLE access technology indicated in the received request information, encapsulates relevant parameters, converts the received request information into request information that the access layer can receive, and sends it to the access layer. The access layer then configures the first message and broadcasts it according to the SLE access technology.

[0167] The first message may include first indication information, which may be used to indicate the discoverability level of the first device.

[0168] Specifically, the basic communication service framework module of the first device can also send the discoverability level of the first device in the request information to the device discovery module, which then sends the discoverability level of the first device in the request information to the access layer. The access layer determines the first indication information based on the discoverability level of the first device.

[0169] For example, such as Figure 9 As shown in (a), the first device can broadcast the first message by carrying it in the broadcast data payload of the broadcast data.

[0170] Among them, such as Figure 9 As shown in (a), broadcast data may include a broadcast data header and a broadcast data payload.

[0171] Specifically, the first device can add broadcast data of broadcast attribute type to the broadcast data payload and configure the corresponding bits to indicate the first indication information.

[0172] For example, taking broadcast data of the broadcast attribute type with a length of 1 byte as an example, 3 bits of it can be used as the first indication information to indicate the discoverability level of the first device.

[0173] For example, such as Figure 9As shown in (b), bits 1-3 can be used as the first indication information to indicate the discoverability level of the first device. Referring to Table 3 below, when the bit values of bits 1-3 are 000, 001, 010, 101 in turn, the discoverability level of the first device can be indicated as device not discoverable, device generally discoverable, device preferentially discoverable, device expecting to be discovered by a device that has been paired, device expecting to be discovered by a device with a specified address or SSID, and device expecting to be discovered by a device supporting a specific service or capability.

[0174] Table 3

[0175]

[0176] It should be noted that the discoverability level of the first device indicated in the first message can be mandatory support or optional support. Table 3 is only illustrative and is not limited.

[0177] For a first device with relatively simple functional requirements (for example, a temperature sensor device), only the mandatory support type is supported, thereby reducing the design complexity of the first device. For a first device with relatively strong functions (for example, a true wireless stereo (TWS) earphone), multiple types can be selected, including the mandatory support type and the optional support type, to meet more diverse business requirements.

[0178] Optionally, the first message further includes one or more of the following information: identification information of a device that has been paired, a specified address or SSID, a specific service or capability.

[0179] The access layer of the first device can carry the above information in the broadcast data payload.

[0180] For example, when the discoverability level of the first device is device expecting to be discovered by a device that has been paired, the first message can include the identification information of the device that has been paired; when the discoverability level of the first device is device expecting to be discovered by a device with a specified address or SSID, the first message can include the specified address or SSID; and when the discoverability level of the first device is device expecting to be discovered by a device supporting a specific service or capability, the first message can include the specific service or capability.

[0181] When one or more of the above information is included in the first message, a device receiving the first message can determine whether it is the device expected by the first device according to the first message. If so, the device can discover the first device and communicate, otherwise, the device does not discover the first device, i.e., the first device is removed from the list of discovered devices or is not determined as a discovered device.

[0182] Optionally, the first message further comprises second indication information.

[0183] The second indication information can be used to indicate whether the first message is a polling broadcast message.

[0184] Specifically, the first device can determine whether to set the first message as a polling broadcast message according to the broadcast mode indicated by the first application, and the first device can also determine whether to set the first message as a polling broadcast message according to the application requirement and / or the service type of the first application.

[0185] For example, the length of the broadcast data of the broadcast attribute type is 1 byte, and 1 bit in the 1 byte can be used as the second indication information to indicate whether the first message is a polling broadcast message.

[0186] For example, as shown in (b) of FIG. 1, bit 0 can be used as the second indication information to indicate whether the first message is a polling broadcast message. Bit 0 can be set to 0 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 1 to indicate that the first message is not a polling broadcast message. Alternatively, bit 0 can be set to 1 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 0 to indicate that the first message is not a polling broadcast message. Figure 9 For example, as shown in (b) of FIG. 1, bit 0 can be used as the second indication information to indicate whether the first message is a polling broadcast message. Bit 0 can be set to 0 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 1 to indicate that the first message is not a polling broadcast message. Alternatively, bit 0 can be set to 1 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 0 to indicate that the first message is not a polling broadcast message.

[0187] Figure 10 For example, as shown in (b) of FIG. 1, bit 0 can be used as the second indication information to indicate whether the first message is a polling broadcast message. Bit 0 can be set to 0 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 1 to indicate that the first message is not a polling broadcast message. Alternatively, bit 0 can be set to 1 to indicate that the first message is a polling broadcast message, and bit 0 can be set to 0 to indicate that the first message is not a polling broadcast message.

[0188] Based on the method shown in (b) of FIG. 1, the first device can dynamically schedule multiple access technologies according to the application, to meet the diversified requirements of different services or the same service in different communication scenarios for power consumption and bandwidth. At the same time, multiple discoverable levels are provided for the first device, which can support more device discovery modes and device discovery processes, and meet the scene requirements of more device discovery. Figure 7

[0189] ​​Further, as shown in Figure 11 When the second device scans the first message broadcasted by the first device, and the second indication information in the scanned first message indicates that the first message is a polling broadcast message, the second device can send a polling response to the first device.

[0190] The second device can scan the first message broadcasted by the first device according to the device discovery method shown in Figure 12 The details are not described herein.

[0191] Specifically, when the second device scans the first message broadcasted by the first device, the second device can parse the first message, and determine whether the first message is a polling broadcast message according to the second indication information in the first message.

[0192] Optionally, when the second device determines that the first device is the device corresponding to the first application, the second device sends a polling response to the first device.

[0193] For example, the second device can determine whether the first device is the device corresponding to the first application according to the discoverable level in the scanned first message.

[0194] The polling response can be a scan request, and the first device can discover the second device according to the polling response.

[0195] Based on the method shown in Figure 11 When the second device is a hidden device (i.e., a device that does not send broadcast messages, but only scans and receives polls), the first device can discover the hidden device according to the polling response sent by the hidden device.

[0196] Corresponding to the device discovery method applied to the broadcasting device (i.e., the first device) described above Figure 7 As shown in Figure 12 The scanning device (i.e., the second device) can scan the first message broadcasted by the broadcasting device, and further discover the broadcasting device.

[0197] Figure 12 A device discovery method applied to the scanning device provided by the embodiments of the present application can include the following steps: Figure 12

[0198] In step 1201, the second device obtains a first discovery request of a first application.

[0199] The first discovery request can be used to request to discover the device corresponding to the first application.

[0200] Specifically, the device corresponding to the first application can be a device that executes the first application.

[0201] ​The first discovery request may include information such as the application requirements and / or business type of the first application.

[0202] Step 1202: The second device determines the access technology corresponding to the first application based on the first application.

[0203] For example, the second device may determine the access technology corresponding to the first application based on the application requirements and / or service type of the first application.

[0204] Specifically, the detailed description of the access technology corresponding to the first application determined by the second device can be found in the relevant description of the access technology corresponding to the first application determined by the first device in step 702 above, and will not be repeated here.

[0205] Step 1203: The second device scans the first message broadcast by the first device using the access technology corresponding to the first application.

[0206] The specific description of the first message can be found in step 703, and will not be repeated here.

[0207] Specifically, such as Figure 13 As shown, after the basic communication service framework module of the second device determines the access technology corresponding to the first application, it can indicate the access technology corresponding to the first application to the device discovery module. The device discovery module can then indicate the access technology corresponding to the first application to the access layer, and the access layer scans the first message broadcast by the first device according to the access technology corresponding to the first application.

[0208] Specifically, the basic communication service framework module can indicate the access technology corresponding to the first application in the first discovery request, convert the first discovery request into a first discovery request that the device discovery module can receive, and send it to the device discovery module. The device discovery module can determine the access technology corresponding to the first application based on the received first discovery request, encapsulate the relevant parameters, convert the received first discovery request into a first discovery request that the access layer can receive, and send it to the access layer. The access layer then scans the first message based on the first discovery request.

[0209] For example, taking the SLE access technology determined by the basic communication service framework module of the second device as the access technology, the basic communication service framework module can indicate the SLE access technology in the first discovery request, convert the first discovery request into a first discovery request that the device discovery module can receive, and send it to the device discovery module. The device discovery module, based on the SLE access technology indicated in the received first discovery request, encapsulates relevant parameters, converts the received first discovery request into a first discovery request that the access layer can receive, and sends it to the access layer. The access layer then scans the first message according to the SLE access technology.

[0210] Step 1204, the second device filters the first message according to the filtering policy corresponding to the first application, and determines the device corresponding to the first application.

[0211] Specifically, as shown in Figure 13 When the access layer scans the first message broadcast by the first device based on the access technology corresponding to the first application, the scanned first message can be reported to the device discovery module. The device discovery module filters the first message according to the filtering policy corresponding to the first application, and reports the filtering result to the basic communication service framework module. The basic communication service framework module determines the device corresponding to the first application according to the filtering result.

[0212] The filtering policy can include one or more of the following: discovering a device that has been paired, discovering a device with a specified address or SSID, discovering a device supporting a specific service or capability, discovering a device within a specific range, disabling filtering, discovering a discoverable device, and discovering a priority device.

[0213] Specifically, when the second device adopts the protocol structure as shown in Figure 3 , the above filtering policy can be configured in the device discovery module of the second device, and the description of each filtering policy can be found in Table 4 below: Figure 13

[0214] Table 4

[0215]

[0216] For discovering a device within a specific range, the second device can calculate the distance between the surrounding devices and itself according to the broadcast transmission power, signal strength and other parameters, and filter out the devices that meet the distance requirement.

[0217] It should be noted that the above filtering policy can be mandatory support or optional support, and the above Table 4 is only exemplary and not limited.

[0218] For a second device with simple functional requirements (for example, a smart water meter), only supporting part of the types can meet the business requirements, and there is no need to support all, so as to reduce the design complexity of the second device. For a second device with relatively strong functions (for example, a car machine or a mobile phone), all types can be selected to support to meet more rich business requirements.

[0219] For example, as shown in Figure 13 ​As shown, the first discovery request of the first application can be acquired by the basic communication service framework module in the second device, and a filtering strategy provided by the device discovery module can be called according to the application requirement and / or the service type of the first application, that is, the filtering strategy corresponding to the first application is determined.

[0220] As shown in Figure 13 After the basic communication service framework module of the second device determines the filtering strategy corresponding to the first application, the filtering strategy corresponding to the first application can be indicated to the device discovery module of the second device. The device discovery module can filter the first message reported by the access layer according to the filtering strategy corresponding to the first application, and report the filtered first message to the basic communication service framework module. The basic communication service framework module determines the device corresponding to the first application according to the filtered first message.

[0221] Based on the above description of the filtering strategy, the first discovery request can further include one or more of the following information: identification information of the paired device, a specified address or SSID, a specific service or capability.

[0222] The device discovery module of the second device can filter the first message according to the first discovery request and the filtering strategy corresponding to the first application.

[0223] For example, the first discovery request includes SSID1, SSID2 and SSID3, and the filtering strategy corresponding to the first application is to discover the device with a specified address or SSID. The device discovery module of the second device can filter the first message with SSID1, SSID2 or SSID3 in the first message reported by the access layer according to the first discovery request and the filtering strategy corresponding to the first application, and report the filtered first message to the basic communication service framework module. The basic communication service framework module determines the device corresponding to the first application according to the filtered first message.

[0224] Optionally, the device discovery module judges the filtering of the first message by the device discovery module according to the filtering strategy; or the access layer filters the first message according to the filtering strategy; or the device discovery module and the access layer filter the first message according to the filtering strategy.

[0225] When the device discovery module filters the first message according to the filtering strategy, the access layer can report the scanned first message to the device discovery module, and the device discovery module filters the first message according to the filtering strategy.

[0226] When the first message is filtered by the access layer according to the filtering policy, the device discovery module can indicate the filtering policy to the access layer, the access layer filters the scanned first message, and the device discovery module reports the filtered first message to the basic communication service framework module.

[0227] When the first message is filtered by the device discovery module and the access layer according to the filtering policy, the device discovery module can indicate the filtering policy to the access layer, and the access layer performs preliminary filtering on the scanned first message and reports the preliminary filtered first message to the device discovery module. The device discovery module filters the received first message according to the filtering policy and reports the filtering result to the basic communication service framework module.

[0228] For example, after the basic communication service framework module receives the first message reported by the device discovery module, it can determine the device corresponding to the first message as the device corresponding to the first application.

[0229] Based on the above Figure 12 The method shown in the figure, the second device can dynamically schedule multiple access technologies based on the application, meet the diversified needs of power consumption and bandwidth of different services or the same service in different communication scenarios. At the same time, multiple filtering policies are provided for the second device, which can support more device discovery modes and device discovery processes, and meet the scene needs of more device discovery.

[0230] Further, when the second device obtains the discovery request of multiple applications, the second device can arbitrate and merge the discovery request of multiple applications to reduce the number of times the second device executes the above-mentioned device discovery method, and reduce the power consumption of the second device. In particular, the number of times the access layer in the second device executes the above-mentioned device discovery method is reduced, or the overlapping command executed by the access layer is reduced, and the power consumption of the second device is reduced.

[0231] Among them, the discovery request of multiple applications can be arbitrated and merged by the basic communication service framework module of the second device, or the discovery request of multiple applications can be arbitrated and merged by the device discovery module of the second device, without limitation.

[0232] As Figure 14 shown, taking the second device obtaining the first discovery request of the first application and the second discovery request of the second application as an example, the arbitration and merging of the discovery request of multiple applications by the second device are described.

[0233] Figure 14 The flowchart of the arbitration and merging method provided in the present application is shown in Figure 14 The method can include:

[0234] Step 1401, the second device acquires a first discovery request of a first application and a second discovery request of a second application.

[0235] The first discovery request is used to request to discover a device corresponding to the first application, and the second discovery request is used to request to discover a device corresponding to the second application.

[0236] It should be noted that the second device can first acquire the first discovery request of the first application, and then acquire the second discovery request of the second application after a period of time; or the second device can also acquire the first discovery request of the first application and the second discovery request of the second application at the same time, which is not limited.

[0237] Step 1402, the second device judges whether the first discovery request and the second discovery request overlap. If yes, the following step 1403 is executed, or the following steps 1404 to 1406 are executed, otherwise, the following step 1407 is executed.

[0238] When the first discovery request and the second discovery request are completely consistent, it can be determined that the first discovery request and the second discovery request overlap; or when the device types of the first discovery request and the second discovery request are consistent, it can also be determined that the first discovery request and the second discovery request overlap.

[0239] For example, taking that the first discovery request is used to request to discover an online device of an SLB and the second discovery request is used to request to discover a screen projection device of the SLB as an example, since the devices corresponding to the first discovery request and the second discovery request are both SLB devices, it can be determined that the first discovery request and the second discovery request overlap.

[0240] Based on that the second device has acquired the first discovery request, the second device can determine whether the second discovery request and the first discovery request overlap when the second discovery request is received. Or the second device can wait for a period of time after receiving the second discovery request, and judge all the discovery requests received in the period of time to determine whether there are overlapping discovery requests.

[0241] Step 1403, if overlapping, the second device determines the device corresponding to the first application as the device corresponding to the second application.

[0242] For example, when the second device first acquires the first discovery request of the first application and determines the device corresponding to the first application according to the first discovery request, if the second device acquires the second discovery request of the second application again, and the second discovery request overlaps with the first discovery request, the second device can determine the device corresponding to the first application as the device corresponding to the second application.

[0243] In another example, when the second device first acquires the first discovery request of the first application and performs the device discovery method according to the first discovery request, if the second device acquires the second discovery request of the second application again, and the second discovery request overlaps the first discovery request, the second device can determine the device corresponding to the first application as the device corresponding to the second application after the device discovery method corresponding to the first discovery request ends.

[0244] In another example, when the second device acquires the first discovery request of the first application and the second discovery request of the second application at the same time, and the second discovery request overlaps the first discovery request, the second device can perform the device discovery method according to the first discovery request, determine the device corresponding to the first application, and determine the device corresponding to the first application as the device corresponding to the second application.

[0245] Step 1404, the second device merges the first discovery request and the second discovery request into one discovery request.

[0246] For example, the first discovery request is used to request to discover the online device of the SLB, and the second discovery request is used to request to discover the screen projection device of the SLB. The merged discovery request can be used to request to discover the SLB device.

[0247] Step 1405, the second device scans the first message broadcast by the first device according to the corresponding access technology according to the merged discovery request.

[0248] The corresponding access technology can be the access technology corresponding to the first application and the second application at the same time.

[0249] Step 1406, the second device filters the first message according to the merged filtering strategy, and determines the filtered device as the device corresponding to the first application and the device corresponding to the second application.

[0250] In a possible design, the merged filtering strategy is the filtering strategy obtained by merging the filtering strategy corresponding to the first application and the filtering strategy corresponding to the second application.

[0251] The second device can determine the filtering strategy corresponding to the first application according to the first discovery request, determine the filtering strategy corresponding to the second application according to the second discovery request, and merge the filtering strategy corresponding to the first application and the filtering strategy corresponding to the second application as the filtering strategy for filtering the first message.

[0252] For example, taking a first discovery request used to request the discovery of SLB-enabled internet devices and a second discovery request used to request the discovery of SLB-enabled screen-sharing devices as an example, the second device can determine that the filtering policy corresponding to the first application can be to discover devices that support a specific service or capability, which is to support SLB access technology and support internet access. It can also determine that the filtering policy corresponding to the second application can be to discover devices that support a specific service or capability, which is to support SLB access technology and support screen-sharing. After merging the filtering policies corresponding to the first application and the second application, it can be determined that the merged filtering policy is to discover devices that support a specific service or capability, which is to support SLB access technology.

[0253] In another possible design, the filtering strategy is the same as the filtering strategy corresponding to the merged discovery request.

[0254] The second device can determine the filtering policy based on the merged discovery request. For example, if the first discovery request is used to request the discovery of SLB-enabled internet devices and the second discovery request is used to request the discovery of SLB-enabled screen-casting devices, the second device can determine that the merged discovery request is used to request the discovery of SLB devices, and thus determine that the filtering policy corresponding to the merged discovery request is to discover devices that support a specific service or capability, which is to support SLB access technology.

[0255] For example, such as Figure 15 As shown, taking a mobile phone as the second device, and assuming the first application on the phone sends a first discovery request to find SLB-enabled internet devices, and the second application sends a request to find SLB-enabled screen-casting devices, the basic communication service framework module on the phone can merge the first and second discovery requests into a single discovery request to find SLB devices, and send the merged request to the device discovery module. The device discovery module converts the received discovery request into a request that the access layer can accept, and sends it to the access layer. The access layer, based on the discovery request, scans the first message using SLB access technology and reports the scanned first message to the device discovery module. The device discovery module filters the first message according to a merging filtering strategy and reports the filtered first message to the basic communication service framework module. Based on the device corresponding to the first message, the basic communication service framework module identifies the SLB internet device as the device corresponding to the first application and reports it to the first application, and identifies the SLB screen-casting device as the device corresponding to the second application and reports it to the second application.

[0256] For example, such as Figure 16As shown, the first device includes router 1, router 2, router 3 and smart screen, and the second device is a mobile phone. Router 1 can broadcast first message 1, router 2 can broadcast first message 2, router 3 can broadcast first message 3, and smart screen can broadcast first message 4. Assuming that the first messages scanned by the access layer of the second device include first message 1, first message 2, first message 3 and first message 4, the access layer can report first message 1, first message 2, first message 3 and first message 4 to the device discovery module. Assuming that router 1 and router 2 are SLB network devices, and smart screen is an SLB screen projection device, the device discovery module can filter out first message 1, first message 2 and first message 4 according to the merging and filtering strategy, and report them to the basic communication service framework module. According to first message 1 and first message 2, the basic communication service framework module determines router 1 and router 2 as the devices corresponding to the first application and reports them to the first application; according to first message 4, it determines smart screen as the device corresponding to the second application and reports it to the second application.

[0257] Step 1407, the second device determines the device corresponding to the first application according to the first discovery request; and determines the device corresponding to the second application according to the second discovery request.

[0258] When the first discovery request and the second discovery request do not overlap, the second device can perform the above Figure 12 The device discovery method shown can be used to determine the device corresponding to the first application according to the first discovery request. The second device can also perform the above Figure 12 The device discovery method shown can be used to determine the device corresponding to the second application according to the second discovery request.

[0259] Based on the above Figure 14 When the second device obtains the discovery requests of multiple applications, the second device can arbitrate and merge the discovery requests of multiple applications to reduce the number of times the second device executes the above device discovery method, and reduce the power consumption of the second device.

[0260] Further, the second device can also set a tag for each application according to the application requirements of the application, and the device discovery result can be distributed to each application according to the tag.

[0261] The device discovery result can include the device determined by the basic communication service framework module of the second device according to the first message.

[0262] The tags corresponding to the discovery request overlapping applications can be the same.

[0263] For example, taking the first application, the second application and the third application as examples, assuming that the first discovery request of the first application and the second discovery request of the second application overlap, and the third discovery request of the third application does not overlap with the first discovery request and the second discovery request, the second device can set the first label for the first application and the second application, and set the second label for the third application. When the second device performs the device discovery method according to the first discovery request or the second discovery request and determines one or more devices, the second device can report the determined one or more devices to the application corresponding to the first label (for example, the first application, the second application or the application with the first label). When the second device performs the device discovery method according to the third discovery request and determines one or more devices, the second device can report the determined one or more devices to the application corresponding to the second label (for example, the third application or the application with the second label).

[0264] The above mainly introduces the scheme provided by the embodiments of the present application from the perspective of interaction between devices. It can be understood that, in order to implement the above functions, each device comprises a hardware structure and / or a software module for executing each function. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed in the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is implemented in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical scheme. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0265] The embodiments of the present application can divide the function modules of each device according to the above method examples. For example, each function module can be divided according to each function, or two or more functions can be integrated in one processing module. The above integrated module can be implemented in the form of hardware or in the form of a software function module. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division. Actual implementation can have another division manner.

[0266] In the case of dividing each function module according to each function, Figure 17 A communication device 170 is shown. When the communication device 170 is used for being discovered by other devices, the communication device 170 can perform the actions of the first device in the above Figures 7-16 When the communication device 170 is used for discovering other devices, the communication device 170 can perform the actions of the second device in the above Figures 7 to 16 .

[0267] The communication apparatus 170 can include a transceiver module 1701 and a processing module 1702. For example, the communication apparatus 170 can be a communication device, or a chip or other combination device, component, etc. applied in a communication device and having the functions of the communication apparatus. When the communication apparatus 170 is a communication device, the transceiver module 1701 can be a transceiver, which can include an antenna and a radio frequency circuit, etc. The processing module 1702 can be a processor (or processing circuit), for example, a baseband processor, which can include one or more CPUs. When the communication apparatus 170 is a component having the functions of the communication apparatus, the transceiver module 1701 can be a radio frequency unit. The processing module 1702 can be a processor (or processing circuit), for example, a baseband processor. When the communication apparatus 170 is a chip system, the transceiver module 1701 can be an input / output interface of a chip (for example, a baseband chip). The processing module 1702 can be a processor (or processing circuit) of the chip system, which can include one or more central processing units. It should be understood that the transceiver module 1701 in the embodiments of the present application can be implemented by a transceiver or a transceiver-related circuit component. The processing module 1702 can be implemented by a processor or a processor-related circuit component (or processing circuit).

[0268] For example, the transceiver module 1701 can be configured to perform all the transceiver operations performed by the communication apparatus in the embodiments shown in the figures, and / or other processes for supporting the technologies described herein. Figures 7-16 The processing module 1702 can be configured to perform all the operations performed by the communication apparatus in the embodiments shown in the figures, and / or other processes for supporting the technologies described herein. Figures 7-16 The processing module 1702 can be configured to perform all the operations performed by the communication apparatus in the embodiments shown in the figures, and / or other processes for supporting the technologies described herein.

[0269] As another implementation manner, Figure 17 The transceiver module 1701 in the communication apparatus 170 can be replaced by a transceiver, which can integrate the functions of the transceiver module 1701. The processing module 1702 can be replaced by a processor, which can integrate the functions of the processing module 1702. Further, Figure 17 The communication apparatus 170 can further include a memory. When the transceiver module 1701 is replaced by a transceiver and the processing module 1702 is replaced by a processor, the communication apparatus 170 involved in the embodiments of the present application can be a communication device as shown in the figure. Figure 6 The communication apparatus 170 can further include a memory. When the transceiver module 1701 is replaced by a transceiver and the processing module 1702 is replaced by a processor, the communication apparatus 170 involved in the embodiments of the present application can be a communication device as shown in the figure.

[0270] The embodiments of the present application further provide a computer readable storage medium. All or part of the processes in the above method embodiments can be instructed by a computer program to relevant hardware to complete, the program can be stored in the above computer readable storage medium, and the program can include the processes of the above method embodiments when executed. The computer readable storage medium can be an internal storage unit of the terminal (including the data sending terminal and / or the data receiving terminal) of any of the preceding embodiments, such as a hard disk or a memory of the terminal. The computer readable storage medium can also be an external storage device of the terminal, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. Further, the computer readable storage medium can include both the internal storage unit and the external storage device of the terminal. The computer readable storage medium is used to store the computer program and other programs and data required by the terminal. The computer readable storage medium can also be used to temporarily store data that has been output or will be output.

[0271] It should be noted that the terms "first" and "second" and the like in the specification, claims and drawings of the present application are used to distinguish different objects, and are not used to describe a particular order. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device including a series of steps or units is not limited to the listed steps or units, but can optionally include steps or units not listed, or can optionally include other steps or units inherent to the process, method, product or device.

[0272] It should be understood that in the present application, "at least one" means one or more, "multiple" means two or more, "at least two" means two or three and more, and "and / or" is used to describe the association relationship of the associated objects, which means that there can be three relationships, for example, "A and / or B" can mean that there are three cases of only A, only B and A and B at the same time, where A and B can be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after it. "At least one of the following" or similar expressions means any combination of these items, including any combination of single item or multiple items. For example, at least one of a, b or c can mean a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b and c can be single or multiple.

[0273] Those skilled in the art can clearly understand the above-mentioned technical solutions from the description of the above-embodiments. For the convenience and brevity of description, only the division of the above-mentioned functional modules is taken as an example. In actual application, the above-mentioned functions can be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.

[0274] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, another division mode can be used. For example, multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0275] The units described as separate components can or can not be physically separated, and the components shown as units can be one physical unit or multiple physical units, that is, they can be located in one place or distributed in multiple different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.

[0276] In addition, each functional unit in each embodiment of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0277] When the integrated unit is realized in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application essentially or the parts that make contributions to the prior art or all or part of the technical solutions can be embodied in the form of a software product. The software product is stored in a storage medium, including a plurality of instructions for causing an apparatus (which can be a single-chip microcomputer, a chip, etc.) or a processor to execute all or part of the steps of the method described in the embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a ROM, a RAM, a magnetic disk or an optical disk, and various program code storage media.

[0278] The above merely provides the specific implementation of the present application, but the protection scope of the present application is not limited to this. Any change or replacement within the technical scope disclosed by the present application should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A device discovery method, characterized in that, include: The first device obtains request information from the first application; wherein the request information is used to indicate the discoverability level of the first device; The first device broadcasts a first message based on the request information through the access technology corresponding to the first application; wherein, the first message includes the discoverability level of the first device.

2. The method according to claim 1, characterized in that, The discoverability level includes one or more of the following: the device expects to be discovered by a previously paired device, the device expects to be discovered by a device with a specified address or service set identifier (SSID), the device is undiscoverable, the device is generally discoverable, and the device is preferentially discoverable.

3. The method according to claim 2, characterized in that, The first message may also include one or more of the following: identification information of previously paired devices, a specified address, or an SSID.

4. The method according to any one of claims 1-3, characterized in that, The first device determines the access technology corresponding to the first application based on the application requirements and / or service type of the first application.

5. The method according to any one of claims 1-4, characterized in that, The first message further includes second indication information; wherein the second indication information is used to indicate whether the first message is a polling broadcast message.

6. The method according to claim 5, characterized in that, When the first message is a polling broadcast message, the method further includes: The first device receives a polling response from the second device; The first device discovers the second device based on the polling response.

7. A device discovery method, characterized in that, include: The second device obtains a first discovery request for the first application; wherein, the first discovery request is used to request the discovery of the device corresponding to the first application; The second device scans the first message broadcast by the first device using the access technology corresponding to the first application; wherein, the first message includes the discoverability level of the first device; The second device filters the first message according to the filtering policy corresponding to the first application to determine the device corresponding to the first application.

8. The method according to claim 7, characterized in that, The second device determines the access technology corresponding to the first application based on the application requirements and / or service type of the first application.

9. The method according to claim 7 or 8, characterized in that, The discoverability level includes one or more of the following: the device expects to be discovered by a previously paired device, the device expects to be discovered by a device with a specified address or service set identifier (SSID), the device is undiscoverable, the device is generally discoverable, and the device is preferentially discoverable.

10. The method according to claim 9, characterized in that, The first message may also include one or more of the following: identification information of previously paired devices, a specified address, or an SSID.

11. The method according to any one of claims 7-10, characterized in that, The filtering strategy includes one or more of the following: discovering previously paired devices, discovering devices with a specified address or SSID, discovering devices within a specific range, disabling filtering, discovering discoverable devices, and discovering priority devices.

12. The method according to any one of claims 7-11, characterized in that, The first message further includes second indication information; wherein the second indication information is used to indicate whether the first message is a polling broadcast message.

13. The method according to claim 12, characterized in that, When the first message is a polling broadcast message, the method further includes: When the second device determines that the first device is the device corresponding to the first application, the second device sends a polling response to the first device.

14. The method according to any one of claims 7-13, characterized in that, The method further includes: The second device obtains a second discovery request for the second application; wherein the second discovery request is used to request the discovery of the device corresponding to the second application; The second device determines whether the first discovery request and the second discovery request overlap; If there is an overlap, the second device will determine the device corresponding to the first application as the device corresponding to the second application; or The second device merges the first discovery request and the second discovery request into a single discovery request; based on the merged discovery request, it scans the first message broadcast by the first device through the access technology corresponding to the first application; it filters the first message according to a merging filtering strategy, and determines the filtered devices as the devices corresponding to the first application and the second application, wherein the merging filtering strategy is a filtering strategy obtained by merging the filtering strategy corresponding to the first application and the filtering strategy corresponding to the second application, or the merging filtering strategy is the filtering strategy corresponding to the merged discovery request.

15. The method according to any one of claims 7-14, characterized in that, The method further includes: The second device determines a first tag based on the first application; wherein, applications with overlapping requests have the same tag. The second device filters the first message according to the filtering strategy corresponding to the first application, and determines the filtered device as the device corresponding to the application indicated by the first tag.

16. A communication device, characterized in that, The communication device includes a processor; the processor is configured to run a computer program or instructions to cause the device discovery method as described in any one of claims 1-6, or the device discovery method as described in any one of claims 7-15, to be executed.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions or programs that, when executed on a computer, cause the device discovery method as described in any one of claims 1-6 to be performed, or the device discovery method as described in any one of claims 7-15 to be performed.

18. A computer program product, characterized in that, The computer program product includes computer instructions; when some or all of the computer instructions are executed on a computer, they cause the device discovery method as described in any one of claims 1-6 to be executed, or the device discovery method as described in any one of claims 7-15 to be executed.