A beacon sensing method, apparatus, device and system
By generating environmental fingerprints and using a mapping table to determine beacon identifiers, the limitations of Bluetooth beacon deployment and latency issues caused by wireless interference are resolved, enabling fast and effective beacon awareness.
Patent Information
- Application Number
- CN202110411441.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-04-16
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2041-04-16
AI Technical Summary
The limited number of existing Bluetooth beacons and their high power consumption result in high perceived latency, and the latency problem caused by wireless signal interference has not been effectively solved.
By scanning devices to obtain the identifiers of wireless devices and generating environmental fingerprints, the identifiers of beacons can be determined using a mapping table, thus avoiding direct scanning of beacon signals and reducing latency.
In situations where beacon signals cannot be scanned, the beacon identifier can be quickly determined, reducing the latency of beacon sensing and improving sensing efficiency.
Smart Images

Figure CN115226077B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of Internet of Things technology, and in particular to a beacon sensing method, apparatus, device, and system. Background Art
[0002] The demand for the interconnection of everything has given rise to the rise of the Internet of Things (IoT). Beacon-based short-range communication technology is widely used in IoT scenarios, such as smart homes, shopping mall advertising and marketing, and indoor navigation.
[0003] A beacon can be understood as a specialized device used to indicate the presence of an object. This device broadcasts its unique ID to the surrounding environment. Other devices can detect this ID by scanning it, triggering corresponding actions. For example, a beacon installed in a restaurant could send an electronic coupon to a user's phone after being detected by the beacon.
[0004] Currently, the most widely used beacon is Bluetooth beacon (iBeacon). However, due to cost issues, the number of Bluetooth beacons deployed is usually limited. Due to power consumption issues, the broadcast interval of Bluetooth beacons is usually long. Due to these two reasons, coupled with interference from other wireless signals, the latency of Bluetooth beacon detection is usually high. Summary of the Invention
[0005] The embodiments of the present application provide a beacon sensing method, apparatus, device, and system, which can reduce the delay of beacon sensing.
[0006] The first aspect of the embodiment of the present application provides a beacon sensing method, including: scanning a wireless signal by a scanning device to obtain information of at least one first wireless signal, specifically, the wireless scanning can be performed based on the triggering of certain specific events, or the wireless signal scanning can be performed periodically; the information of at least one first wireless signal includes an identifier of at least one first wireless device that transmits at least one first wireless signal, and the identifier can be an identifier of the device itself, for example, a hardware address of the device. Specifically, when the first wireless device is a wireless access point (AP), the identifier can be a basic service set identifier (BSSID); in addition, the identifier can also be a media access control address (MAC address). Control, MAC), for example, it can be 00-11-22-33-4A-5F; when the first wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF; the scanning device determines the identifier of the first beacon based on the identifier of at least one first wireless device, the first beacon does not belong to the at least one first wireless device, and the first beacon can be a Bluetooth beacon (including an ordinary Bluetooth beacon and a low-power Bluetooth beacon), a Wireless Fidelity (Wireless Fidelity, Wi-Fi) beacon, an ultra-wideband (UWB) beacon or a near-field communication (NFC) tag.
[0007] When the time interval between broadcasts of the first beacon is too long, the scanning device cannot scan the wireless signal of the first beacon within the time interval after the broadcast of the first beacon, and can only scan the wireless signal of the first beacon when the first beacon is broadcast next time, resulting in a long delay in sensing the Bluetooth beacon. When the interference of other wireless signals is strong, the scanning device cannot scan the wireless signal of the first beacon either, and can only scan the wireless signal of the first beacon when the interference of other wireless signals is weak, resulting in a long delay in sensing the Bluetooth beacon. In the embodiment of the present application, the identifier of at least one first wireless device is obtained through wireless scanning, and then the identifier of the first beacon is determined based on the identifier of the at least one first wireless device. Since the first beacon does not belong to the at least one first wireless device, the embodiment of the present application only needs to obtain the identifier of the first wireless device, without scanning the signal transmitted by the first beacon, to determine the identifier of the first beacon. That is, the first beacon can be sensed even when the wireless signal of the first beacon cannot be scanned, thereby avoiding the long delay in sensing the Bluetooth beacon caused by the inability to scan the wireless signal of the first beacon, thereby reducing the delay in beacon perception.
[0008] As an implementation method, the scanning device determines the identifier of the first beacon based on the identifier of at least one first wireless device, including: the scanning device generates a first environmental fingerprint based on the identifier of the at least one first wireless device, the first environmental fingerprint can be understood as a fingerprint of the surrounding environment of the scanning device, which is used to represent the characteristics of the surrounding environment of the scanning device, specifically including the identifier of at least one second wireless device, and the at least one second wireless device is part or all of the at least one first wireless device; the scanning device determines the identifier of the first beacon based on the first environmental fingerprint.
[0009] The scanning device generates a first environmental fingerprint based on the identifier of at least one first wireless device. The first environmental fingerprint reflects the characteristics of the surrounding environment of the scanning device, thereby determining the identifier of the first beacon based on the characteristics of the surrounding environment of the scanning device. In addition, the operation of generating the first environmental fingerprint is performed by the scanning device rather than the server, thereby avoiding the delay caused by the interaction between the scanning device and the server, thereby enabling rapid determination of the identifier of the first beacon.
[0010] As an implementation method, the scanning device determines the identifier of the first beacon based on the first environment fingerprint, including: the scanning device determines the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to each of the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0011] Since the mapping relationship table includes multiple second environment fingerprints and identifiers of beacons corresponding to the multiple second environment fingerprints, a quick query of the identifier of the first beacon can be achieved based on the mapping relationship table.
[0012] As an implementation manner, the mapping relationship table is obtained by the scanning device from the server. Specifically, the scanning device may obtain the mapping relationship table from the server periodically or aperiodically.
[0013] The scanning device obtains the mapping relationship table from the server in advance, so that the scanning device can locally determine the identifier of the first beacon based on the mapping relationship table. Moreover, compared with obtaining the mapping relationship table during the process of perceiving the first beacon, this implementation method can improve the perception efficiency of the first beacon.
[0014] As an implementation method, the scanning device determines the identifier of the first beacon corresponding to the first environmental fingerprint based on the mapping relationship table, including: the scanning device calculates the first similarity between the first environmental fingerprint and multiple second environmental fingerprints. There can be multiple ways to calculate the first similarity, and this implementation does not specifically limit this; the scanning device selects the identifier of the beacon corresponding to one of the multiple second environmental fingerprints based on the first similarity as the identifier of the first beacon corresponding to the first environmental fingerprint.
[0015] Specifically, the scanning device can select the identifier of the beacon corresponding to the second environment fingerprint with the highest first similarity as the identifier of the first beacon; it can also randomly select the identifier of the beacon corresponding to a second environment fingerprint from multiple second environment fingerprints whose first similarity is greater than the target similarity as the identifier of the first beacon, where the target similarity can be set according to actual needs, for example, it can be set to 0.5.
[0016] This implementation provides a specific solution for determining the identifier of the first beacon based on a mapping relationship table.
[0017] As an implementation method, the scanning device calculates the first similarity between the first environment fingerprint and multiple second environment fingerprints, including: for each second environment fingerprint in the multiple second environment fingerprints, the scanning device calculates the first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0018] Specifically, the first similarity between the first environment fingerprint and the second environment fingerprint can be calculated based on the Jacobian similarity coefficient. Wherein, |C∩D| represents the number of identical identifiers in the second environment fingerprint and the first environment fingerprint, |C∪D| represents the total number of identifiers in the second environment fingerprint and the first environment fingerprint, and J(C, D) represents the first similarity between the first environment fingerprint and the second environment fingerprint.
[0019] The number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint can reflect the proportion of the number of identical identifiers to the total number, and this proportion can better reflect the first similarity between the second environment fingerprint and the first environment fingerprint. Therefore, it is more accurate to calculate the first similarity based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0020] As an implementation method, the scanning device determines the identifier of the first beacon based on the first environment fingerprint, including: the scanning device sends a first request to the server, the first request carries the first environment fingerprint, and is used to instruct the server to determine the identifier of the first beacon based on the first environment fingerprint; the scanning device receives the identifier of the first beacon corresponding to the first environment fingerprint from the server.
[0021] The scanning device sends the first environment fingerprint to the server, so that the server determines the identifier of the first beacon based on the first environment fingerprint, thereby avoiding the scanning device generating the first environment fingerprint and bringing additional overhead to the scanning device, thereby reducing the overhead of the scanning device, and is suitable for scanning devices with limited resources and computing power.
[0022] As an implementation method, the method further includes: a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal, wherein the information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal, wherein the second beacon may be a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra-Wideband UWB beacon, or a Near Field Communication NFC tag, and the identifier of the fourth wireless device may be an identifier of the device itself, for example, a hardware address of the device. Specifically, when the fourth wireless device is a wireless access point (AP), the identifier may be a Basic Service Set Identifiers (BSSID); in addition, the identifier may also be a Media Access Control Address (MAC address). Control, MAC), for example, it can be 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF.
[0023] The scanning device generates a third environmental fingerprint corresponding to the identifier of the second beacon, the third environmental fingerprint includes the identifier of at least one fifth wireless device, and the at least one fifth wireless device is part or all of the at least one fourth wireless device; the scanning device calculates the distance between itself and the second beacon, and based on the distance between itself and the second beacon satisfying the first condition, the scanning device sends a second request to the server, and the second request carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, wherein the first condition can be a distance threshold, which can be 2 meters, 3 meters, 4 meters, etc.; for another example, the first condition can also be a distance range, specifically, it can be 0 to 2 meters, 0 to 3 meters, 0 to 4 meters, etc.
[0024] The scanning device generates a third environmental fingerprint corresponding to the identifier of the second beacon, and sends a second request to the server when the distance between the scanning device and the second beacon meets the first condition. The second request carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, so that the server can update the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, so as to continuously improve the mapping relationship table and improve the accuracy of the mapping relationship table.
[0025] As an implementation method, the method further includes: a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal, wherein the information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal, wherein the second beacon may be a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra-Wideband UWB beacon, or a Near Field Communication NFC tag, and the identifier of the fourth wireless device may be an identifier of the device itself, for example, a hardware address of the device. Specifically, when the fourth wireless device is a wireless access point (AP), the identifier may be a Basic Service Set Identifiers (BSSID); in addition, the identifier may also be a Media Access Control Address (MAC address). Control, MAC), for example, it can be 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF.
[0026] The scanning device generates a third environmental fingerprint, which includes the identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device; the scanning device determines that its location is within a target area, where the target area can be set according to actual needs. Specifically, the target area can be a specific area around the second beacon, or a specific area of interest to the user. For example, the target area can be a shopping mall, a restaurant, an exhibition area in a museum, etc.; the scanning device sends a second request to the server, where the second request carries the identifier of the second beacon corresponding to the target area and the third environmental fingerprint corresponding to the identifier of the second beacon.
[0027] The scanning device generates a third environmental fingerprint corresponding to the identifier of the second beacon, and sends a second request to the server when it is determined that the location is within the target area. The second request carries the identifier of the second beacon corresponding to the target area and the third environmental fingerprint corresponding to the identifier of the second beacon, so that the server can update the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon when the identifier of the second beacon is not scanned, so as to continuously improve the mapping relationship table and improve the accuracy of the mapping relationship table.
[0028] As an implementation method, the information of the at least one first wireless signal also includes the signal strength and scanning time of the at least one first wireless signal; the scanning device generates the first environmental fingerprint based on the identifier of the at least one first wireless device, including: the scanning device calculates a first score of the at least one first wireless signal based on the signal strength and scanning time of the at least one first wireless signal; there are multiple methods for calculating the first score of the first wireless signal. For example, the stronger the signal strength of the first wireless signal, the higher the first score of the first wireless signal; the closer the scanning time of the first wireless signal is to the current time, the higher the first score of the first wireless signal; the scanning device selects a first number of first wireless signals from the at least one first wireless signal based on the first score of the at least one first wireless signal; specifically, the first wireless signals can be sorted according to the first score, and then selected in descending order according to the first score to obtain a first number of first wireless signals, wherein the first number can be set according to actual needs, and the embodiment of the present application does not specifically limit this. For example, the first number can be 3, 4, or 5; the scanning device generates the first environmental fingerprint based on the identifier of the at least one first wireless device, and the at least one second wireless device is the first wireless device that transmits the first number of first wireless signals.
[0029] Since the signal strength can reflect the distance between the wireless device transmitting the first wireless signal and the scanning device, and the early or late scanning time can reflect the reference value of the first wireless signal, in this implementation, a first score of the first wireless signal is calculated based on the signal strength and scanning time of the first wireless signal, and the identifier of the second wireless device is selected based on the first score of the first wireless signal to generate a first environmental fingerprint. The generated first environmental fingerprint can better reflect the characteristics of the environment surrounding the scanning device, thereby determining the accuracy of the identifier of the first beacon.
[0030] As an implementation method, the scanning device determines the identifier of the first beacon based on the identifier of at least one first wireless device, including: the scanning device sends a third request to the server, the third request carries the identifier of at least one first wireless device, and is used to instruct the server to determine the identifier of the first beacon based on the identifier of at least one first wireless device; the scanning device receives the identifier of the first beacon corresponding to the identifier of the at least one first wireless device from the server.
[0031] The scanning device sends the identification of the first wireless device to the server, so that the server determines the identification of the first beacon based on the identification of the first wireless device. In this way, the scanning device does not need to generate the first environment fingerprint, thereby reducing the overhead of the scanning device.
[0032] As an implementation method, the method further includes: a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal, wherein the information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal, wherein the second beacon may be a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra-Wideband UWB beacon, or a Near Field Communication NFC tag, and the identifier of the fourth wireless device may be an identifier of the device itself, for example, a hardware address of the device. Specifically, when the fourth wireless device is a wireless access point (AP), the identifier may be a Basic Service Set Identifiers (BSSID); in addition, the identifier may also be a Media Access Control Address (MAC address). Control, MAC), for example, it can be 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF.
[0033] The scanning device calculates the distance between itself and the second beacon, and based on the distance between the scanning device and the second beacon satisfying the first condition, the scanning device sends a fourth request to the server, where the fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon, wherein the first condition may be a distance threshold, which may be 2 meters, 3 meters, 4 meters, etc.; for another example, the first condition may also be a distance range, specifically, 0 to 2 meters, 0 to 3 meters, 0 to 4 meters, etc.
[0034] The scanning device obtains the identifier of the second beacon and the identifier of at least one fourth wireless device through wireless signal scanning, and sends a second request to the server when the distance between the scanning device and the second beacon meets the first condition. The second request carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, so that the server can update the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, so as to continuously improve the mapping relationship table and improve the accuracy of the mapping relationship table.
[0035] As an implementation method, the method further includes: performing wireless signal scanning by a scanning device to obtain information of at least one second wireless signal, where the information of the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal, wherein the second beacon may be a Bluetooth beacon, a Wireless Fidelity (Wi-Fi) beacon, an Ultra-Wideband (UWB) beacon, or a Near Field Communication (NFC) tag, and the identifier of the fourth wireless device may be an identifier of the device itself, for example, a hardware address of the device. Specifically, when the fourth wireless device is a wireless access point (AP), the identifier may be a Basic Service Set Identifier (BSSID). In addition, the identifier may also be a Media Access Control (MAC) address, for example, 00-11-22-33-4A-5F. When the fourth wireless device is a beacon, the identifier may also be an identifier of the beacon, and the beacon identifier may be a 16-byte string, for example, FDA50693A4E24FB1AFCF0000000000FF.
[0036] The scanning device determines that its location is within the target area. The target area can be set according to actual needs. Specifically, the target area can be a specific area around the second beacon, or it can be a specific area of interest to the user. For example, the target area can be a shopping mall, a restaurant, an exhibition area in a museum, etc.; the scanning device sends a fourth request to the server, and the fourth request carries the identifier of the second beacon corresponding to the target area and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0037] The scanning device obtains the identifier of at least one fourth wireless device through wireless signal scanning, and sends a second request to the server when it is determined that the location is within the target area. The second request carries the identifier of the second beacon corresponding to the target area and the third environment fingerprint corresponding to the identifier of the second beacon, so that the server can update the mapping relationship table based on the identifier of the second beacon and the third environment fingerprint corresponding to the identifier of the second beacon when the identifier of the second beacon is not scanned, so as to continuously improve the mapping relationship table and improve the accuracy of the mapping relationship table.
[0038] As an implementation method, the scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, including: when a third condition is met, the scanning device performs wireless signal scanning to obtain information of at least one first wireless signal; the third condition includes at least one of the following conditions: the time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, the screen of the scanning device changes from the off state to the bright screen state, and the motion state of the scanning device changes.
[0039] The time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, which means that the data is aging. At this time, wireless signal scanning can achieve timely perception of the first beacon; the screen of the scanning device changes from the off state to the bright state, which largely indicates that the user is ready to use the scanning device; at this time, the scanning device performs wireless signal scanning to perceive the first beacon, and can push a message to the scanning device through the first beacon so that the user can view the message in time; the change in the motion state of the scanning device can also indicate to a certain extent that the user is ready to use the scanning device. At this time, the scanning device performs wireless signal scanning to perceive the first beacon, and can push a message to the scanning device through the first beacon so that the user can view the message in time.
[0040] As an implementation method, the scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, including: the scanning device periodically performs wireless signal scanning based on a target period to obtain information of at least one first wireless signal, wherein the target period can be adjusted according to actual needs, for example, the initial value of the target period can be set to 500ms, and during the process of wireless signal scanning, the target period can be dynamically adjusted according to specific circumstances.
[0041] The scanning device periodically performs wireless signal scanning, which can ensure that the scanning device can perceive the first beacon in a timely manner.
[0042] As an implementation method, the method also includes: if the second similarity between the first environmental fingerprint of the current target cycle and the first environmental fingerprint of the previous target cycle is greater than a threshold, then the duration of the target cycle is increased, the first environmental fingerprint of the current target cycle is generated based on the identifier of at least one first wireless device scanned in the current target cycle, and the first environmental fingerprint of the previous target cycle is generated based on the identifier of at least one first wireless device scanned in the previous target cycle.
[0043] The second similarity between the first environment fingerprint of the current target cycle and the first environment fingerprint of the previous target cycle is greater than the threshold, indicating that the change in the first environment fingerprint from the previous target cycle to the current target cycle is small; therefore, the duration of the target cycle can be appropriately increased to avoid frequent wireless signal scanning and increased power consumption.
[0044] As an implementation manner, the first beacon is a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra Wideband UWB beacon, a Near Field Communication NFC tag, or a QR code.
[0045] As an implementation manner, the at least one first wireless signal includes at least one of the following wireless signals: a Bluetooth signal, a Wi-Fi signal, and a UWB signal.
[0046] A second aspect of an embodiment of the present application provides a beacon perception method, including: a server receives a first request from a scanning device, the first request carries a first environmental fingerprint, the first environmental fingerprint includes an identifier of at least one second wireless device, the identifier can be the identifier of the device itself, for example, it can be the hardware address of the device (hardware address), for example, it can be a service set identifier (BSSID), or it can be a media access control address (MAC), for example, it can be 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF; the server determines the identifier of the first beacon based on the first environmental fingerprint; the server sends the identifier of the first beacon to the scanning device, and the identifier of the first beacon can be carried in a first response to the first request.
[0047] The server receives the first environment fingerprint from the scanning device and determines the identifier of the first beacon based on the first environment fingerprint, thereby avoiding the process of determining the identifier of the first beacon based on the first environment fingerprint bringing additional overhead to the scanning device, thereby reducing the overhead of the scanning device.
[0048] As an implementation method, the server determines the identifier of the first beacon based on the first environment fingerprint, including: the server determines the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0049] Since the mapping relationship table includes multiple second environment fingerprints and identifiers of beacons corresponding to the multiple second environment fingerprints, a quick query of the identifier of the first beacon can be achieved based on the mapping relationship table.
[0050] As an implementation method, the server determines the identifier of the first beacon corresponding to the first environmental fingerprint based on the mapping relationship table, including: the server calculates the first similarity between the first environmental fingerprint and multiple second environmental fingerprints. There can be multiple ways to calculate the first similarity, and this implementation does not specifically limit this; the server selects the identifier of the beacon corresponding to one of the multiple second environmental fingerprints based on the first similarity as the identifier of the first beacon corresponding to the first environmental fingerprint.
[0051] Specifically, the server can select the identifier of the beacon corresponding to the second environment fingerprint with the highest first similarity as the identifier of the first beacon; it can also randomly select the identifier of the beacon corresponding to a second environment fingerprint from multiple second environment fingerprints whose first similarity is greater than the target similarity as the identifier of the first beacon, where the target similarity can be set according to actual needs, for example, it can be set to 0.5.
[0052] This implementation provides a specific solution for determining the identifier of the first beacon based on a mapping relationship table.
[0053] As an implementation method, the server calculates the first similarity between the first environment fingerprint and multiple second environment fingerprints, including: for each second environment fingerprint in the multiple second environment fingerprints, the server calculates the first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0054] The number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint can reflect the proportion of the number of identical identifiers to the total number, and this proportion can better reflect the first similarity between the second environment fingerprint and the first environment fingerprint. Therefore, it is more accurate to calculate the first similarity based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0055] As an implementation method, the method also includes: the server receives a second request from the scanning device, the second request carries the identifier of the second beacon and a third environmental fingerprint corresponding to the identifier of the second beacon, the third environmental fingerprint including the identifier of at least one fifth wireless device, the identifier can be the identifier of the device itself, for example, it can be the hardware address of the device, for example, it can be a Basic Service Set Identifiers (BSSID), or it can be a Media Access Control (MAC), for example, it can be 00-11-22-33-4A-5F; when the fifth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF; the server updates the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon.
[0056] The server receives the identifier of the second beacon from the scanning device and the third environmental fingerprint corresponding to the identifier of the second beacon, and updates the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, thereby continuously improving the mapping relationship table and improving the accuracy of the mapping relationship table.
[0057] As an implementation method, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon; the server updates the mapping relationship table based on the identifier of the second beacon and the third environment fingerprint corresponding to the identifier of the second beacon, including: the server generates a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table; wherein the second environment fingerprint includes the identifier of at least one third wireless device, and the third environment fingerprint includes the identifier of at least one fifth wireless device, so the identifier in the fourth environment fingerprint can be selected from the second environment fingerprint and the third environment fingerprint.
[0058] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0059] Specifically, the first part of the identifier refers to the identifier that is the same between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier refers to the identifier that is different between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon. The second part of the identifier can be selected from the second environment fingerprint corresponding to the identifier of the second beacon, or from the third environment fingerprint.
[0060] This implementation provides specific components identified in the fourth environment fingerprint.
[0061] As an implementation method, the third environmental fingerprint also includes the signal strength corresponding to each identifier of at least one fifth wireless device, and the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, and the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device.
[0062] Correspondingly, the method also includes: the server selects a second number of identifiers as the second part identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier; wherein the second number can be set according to actual needs, and the embodiment of the present application does not make specific restrictions on this. For example, if the number of identifiers included in the fourth environment fingerprint is set to m, then the second number = m-the number of the first part identifiers, m is a positive number greater than 1, for example, m can be set to 2, 3 or 4.
[0063] For identifiers that are only included in the third environment fingerprint and identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon, the stronger the signal strength corresponding to the identifier, the more likely it is that the wireless signal emitted by the device corresponding to the identifier will be scanned. Therefore, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier can improve the accuracy of determining the identifier of the second beacon.
[0064] As an implementation method, the third environmental fingerprint also includes the scanning number corresponding to each identifier of at least one fifth wireless device, and the scanning number corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the scanning number corresponding to each identifier of at least one third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0065] Correspondingly, the method also includes: the server selects a second number of identifiers as the second part identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifier; the second number can be set according to actual needs, and the embodiment of the present application does not make specific restrictions on this. For example, if the number of identifiers included in the fourth environment fingerprint is set to m, then the second number = m-the number of the first part identifiers, m is a positive number greater than 1, for example, m can be set to 2, 3 or 4.
[0066] For identifiers that are only included in the third environment fingerprint and identifiers included in the second environment fingerprint corresponding to the identifier of the second beacon, the greater the number of scans corresponding to the identifier, the greater the probability that the wireless signal transmitted by the device corresponding to the identifier is scanned. Therefore, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifier can improve the accuracy of determining the identifier of the second beacon.
[0067] As an implementation method, the third environmental fingerprint also includes the signal strength and scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scan count corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scan count corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0068] Accordingly, the method also includes: calculating the second scores of each identifier that is only included in the third environment fingerprint and the second scores of each identifier that is only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength and the number of scans corresponding to the identifier; selecting a second number of identifiers as the second part of identifiers from the identifiers that are only included in the third environment fingerprint and the identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the second scores corresponding to the identifier; generally, the stronger the signal strength, the higher the second score; the more scans, the higher the second score; therefore, the second number of identifiers with higher second scores can be selected as the second part of identifiers.
[0069] For identifiers that are only included in the third environment fingerprint and identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon, the stronger the signal strength corresponding to the identifier; for identifiers that are only included in the third environment fingerprint and identifiers that are included in the second environment fingerprint corresponding to the identifier of the second beacon, the more scan times corresponding to the identifier, the greater the probability that the wireless signal transmitted by the device corresponding to the identifier is scanned; therefore, based on the second score calculated based on the signal strength corresponding to the identifier and the scan times, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon can improve the accuracy of determining the identifier of the second beacon.
[0070] A third embodiment of the present application provides a beacon perception method, including: a server receiving a third request from a scanning device, the third request carrying an identifier of at least one first wireless device, where the identifier may be the identifier of the device itself, for example, the hardware address of the device, for example, a Basic Service Set Identifiers (BSSID), or a Media Access Control (MAC), for example, 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier may also be the identifier of the beacon, and the beacon identifier may be a 16-byte string, for example, FDA50693A4E24FB1AFCF0000000000FF; the server generating a first environmental fingerprint based on the identifier of the at least one first wireless device, where the first environmental fingerprint may be understood as a fingerprint of the surrounding environment of the scanning device, used to represent the characteristics of the surrounding environment of the scanning device, specifically including the identifier of at least one second wireless device, where the at least one second wireless device is part or all of the at least one first wireless device; the server determining the identifier of the first beacon based on the first environmental fingerprint; and the server sending the identifier of the first beacon to the scanning device.
[0071] The server receives the identifier of the first wireless device from the scanning device, generates a first environmental fingerprint based on the identifier of the first wireless device, and then determines the identifier of the first beacon based on the first environmental fingerprint. This not only avoids the process of determining the identifier of the first beacon based on the first environmental fingerprint from bringing additional overhead to the scanning device, but also avoids the process of generating the first environmental fingerprint from bringing additional overhead to the scanning device, thereby reducing the overhead of the scanning device.
[0072] As an implementation method, the server determines the identifier of the first beacon based on the first environment fingerprint, including: the server determines the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0073] Since the mapping relationship table includes multiple second environment fingerprints and identifiers of beacons corresponding to the multiple second environment fingerprints, a quick query of the identifier of the first beacon can be achieved based on the mapping relationship table.
[0074] As an implementation method, the server determines the identifier of the first beacon corresponding to the first environmental fingerprint based on the mapping relationship table, including: the server calculates the first similarity between the first environmental fingerprint and multiple second environmental fingerprints. There can be multiple ways to calculate the first similarity, and this implementation does not specifically limit this; the server selects the identifier of the beacon corresponding to one of the multiple second environmental fingerprints based on the first similarity as the identifier of the first beacon corresponding to the first environmental fingerprint.
[0075] Specifically, the server can select the identifier of the beacon corresponding to the second environment fingerprint with the highest first similarity as the identifier of the first beacon; it can also randomly select the identifier of the beacon corresponding to a second environment fingerprint from multiple second environment fingerprints whose first similarity is greater than the target similarity as the identifier of the first beacon, where the target similarity can be set according to actual needs, for example, it can be set to 0.5.
[0076] This implementation provides a specific solution for determining the identifier of the first beacon based on a mapping relationship table.
[0077] As an implementation method, the server calculates the first similarity between the first environment fingerprint and multiple second environment fingerprints, including: for each second environment fingerprint in the multiple second environment fingerprints, the server calculates the first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0078] The number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint can reflect the proportion of the number of identical identifiers to the total number, and this proportion can better reflect the first similarity between the second environment fingerprint and the first environment fingerprint. Therefore, it is more accurate to calculate the first similarity based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0079] As an implementation method, the method also includes: the server receives a fourth request from the scanning device, the fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon, the identifier can be the identifier of the device itself, for example, it can be the hardware address of the device (hardware address), for example, it can be a service set identifier (BSSID), or it can be a media access control address (MAC), for example, it can be 00-11-22-33-4A-5F; when the fourth wireless device is a beacon, the identifier can also be the identifier of the beacon, and the beacon identifier can be a 16-byte string, for example, it can be FDA50693A4E24FB1AFCF0000000000FF; the server updates the mapping relationship table based on the identifier of the second beacon and the identifier of the at least one fourth wireless device corresponding to the identifier of the second beacon.
[0080] The server receives the identifier of the second beacon from the scanning device and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon, and updates the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon, thereby continuously improving the mapping relationship table and enhancing the accuracy of the mapping relationship table.
[0081] As an implementation method, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon; the server updates the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon, including: the server generates a third environment fingerprint corresponding to the identifier of the second beacon, the third environment fingerprint includes the identifier of at least one fifth wireless device, and the at least one fifth wireless device is part or all of the at least one fourth wireless device; the server generates a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table; wherein the second environment fingerprint includes the identifier of the at least one third wireless device, and the third environment fingerprint includes the identifier of the at least one fifth wireless device, so the identifier in the fourth environment fingerprint can be selected from the second environment fingerprint and the third environment fingerprint.
[0082] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0083] Specifically, the first part of the identifier refers to the identifier that is the same between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier refers to the identifier that is different between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon. The second part of the identifier can be selected from the second environment fingerprint corresponding to the identifier of the second beacon, or from the third environment fingerprint.
[0084] This implementation provides specific components identified in the fourth environment fingerprint.
[0085] As an implementation method, the third environmental fingerprint also includes the signal strength corresponding to each identifier of at least one fifth wireless device, and the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, and the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device.
[0086] Correspondingly, the method also includes: the server selects a second number of identifiers as the second part identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier; wherein the second number can be set according to actual needs, and the embodiment of the present application does not make specific restrictions on this. For example, if the number of identifiers included in the fourth environment fingerprint is set to m, then the second number = m-the number of the first part identifiers, m is a positive number greater than 1, for example, m can be set to 2, 3 or 4.
[0087] For identifiers that are only included in the third environment fingerprint and identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon, the stronger the signal strength corresponding to the identifier, the more likely it is that the wireless signal emitted by the device corresponding to the identifier will be scanned. Therefore, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier can improve the accuracy of determining the identifier of the second beacon.
[0088] As an implementation method, the third environmental fingerprint also includes the scanning number corresponding to each identifier of at least one fifth wireless device, and the scanning number corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the scanning number corresponding to each identifier of at least one third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0089] Correspondingly, the method also includes: the server selects a second number of identifiers as the second part identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifier; the second number can be set according to actual needs, and the embodiment of the present application does not make specific restrictions on this. For example, if the number of identifiers included in the fourth environment fingerprint is set to m, then the second number = m-the number of the first part identifiers, m is a positive number greater than 1, for example, m can be set to 2, 3 or 4.
[0090] For identifiers that are only included in the third environment fingerprint and identifiers included in the second environment fingerprint corresponding to the identifier of the second beacon, the greater the number of scans corresponding to the identifier, the greater the probability that the wireless signal transmitted by the device corresponding to the identifier is scanned. Therefore, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifier can improve the accuracy of determining the identifier of the second beacon.
[0091] As an implementation method, the third environmental fingerprint also includes the signal strength and scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scan count corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scan count corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0092] Accordingly, the method also includes: calculating the second scores of each identifier that is only included in the third environment fingerprint and the second scores of each identifier that is only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength and the number of scans corresponding to the identifier; selecting a second number of identifiers as the second part of identifiers from the identifiers that are only included in the third environment fingerprint and the identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the second scores corresponding to the identifier; generally, the stronger the signal strength, the higher the second score; the more scans, the higher the second score; therefore, the second number of identifiers with higher second scores can be selected as the second part of identifiers.
[0093] For identifiers that are only included in the third environment fingerprint and identifiers that are only included in the second environment fingerprint corresponding to the identifier of the second beacon, the stronger the signal strength corresponding to the identifier; for identifiers that are only included in the third environment fingerprint and identifiers that are included in the second environment fingerprint corresponding to the identifier of the second beacon, the more scan times corresponding to the identifier, the greater the probability that the wireless signal transmitted by the device corresponding to the identifier is scanned; therefore, based on the second score calculated based on the signal strength corresponding to the identifier and the scan times, selecting the second part of the identifier as the identifier of the wireless device corresponding to the identifier of the second beacon can improve the accuracy of determining the identifier of the second beacon.
[0094] The fourth aspect of an embodiment of the present application provides a beacon sensing device, including: a scanning unit, used to perform wireless signal scanning to obtain information of at least one first wireless signal, the information of the at least one first wireless signal including the identification of at least one first wireless device that transmits the at least one first wireless signal; a first determination unit, used to determine the identification of a first beacon based on the identification of the at least one first wireless device, the first beacon not belonging to the at least one first wireless device.
[0095] As an implementation method, the first determination unit is used to generate a first environmental fingerprint based on the identifier of at least one first wireless device, where the first environmental fingerprint includes the identifier of at least one second wireless device, and the at least one second wireless device is part or all of the at least one first wireless device; and determine the identifier of the first beacon based on the first environmental fingerprint.
[0096] As an implementation method, the first determination unit is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0097] As an implementation method, the mapping relationship table is obtained by the scanning device from the server.
[0098] As an implementation method, the first determination unit is used to determine the first similarity between the first environment fingerprint and multiple second environment fingerprints; based on the first similarity, select the identifier of the beacon corresponding to one of the multiple second environment fingerprints as the identifier of the first beacon corresponding to the first environment fingerprint.
[0099] As an implementation method, the first determination unit is used to calculate, for each second environment fingerprint among multiple second environment fingerprints, a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0100] As an implementation method, the apparatus further includes a first transceiver unit, which is used to send a first request to the server, wherein the first request carries a first environmental fingerprint; the scanning device receives an identifier of a first beacon corresponding to the first environmental fingerprint from the server.
[0101] As an implementation method, the scanning unit is also used to perform wireless signal scanning to obtain information about the wireless signal transmitted by the second beacon and information about at least one second wireless signal, where the information about the wireless signal transmitted by the second beacon includes the identifier of the second beacon, and the information about the at least one second wireless signal includes the identifier of at least one fourth wireless device that transmits the at least one second wireless signal; the first determination unit is also used to generate a third environmental fingerprint corresponding to the identifier of the second beacon, where the third environmental fingerprint includes the identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device; the first transceiver unit is also used to send a second request to the server based on the distance between the scanning device and the second beacon satisfying the first condition, where the second request carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon.
[0102] As an implementation method, the scanning unit is also used to perform wireless signal scanning to obtain information of at least one second wireless signal, where the information of the at least one second wireless signal includes the identification of at least one third wireless device that transmits the at least one second wireless signal; the first determination unit is also used to generate a third environmental fingerprint, where the third environmental fingerprint includes the identification of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device; and determine that the location is within the target area; the first transceiver unit is also used to send a second request to the server, where the second request carries the identification of the second beacon corresponding to the target area and the third environmental fingerprint corresponding to the identification of the second beacon.
[0103] As an implementation method, the information of at least one first wireless signal also includes the signal strength and scanning time of the at least one first wireless signal; a first determination unit is used to calculate a first score of the at least one first wireless signal based on the signal strength and / or scanning time of the at least one first wireless signal; based on the first score of the at least one first wireless signal, a first number of first wireless signals are selected from the at least one first wireless signal; and a first environmental fingerprint is generated based on the identification of the at least one first wireless device, and the at least one second wireless device is a first wireless device that transmits the first number of first wireless signals.
[0104] As an implementation method, the first transceiver unit is further used to send a third request to the server, the third request carrying the identifier of at least one first wireless device; and receive the identifier of the first beacon corresponding to the identifier of the at least one first wireless device from the server.
[0105] As an implementation method, the scanning unit is also used to scan the wireless signal of the scanning device to obtain information about the wireless signal transmitted by the second beacon and information about at least one second wireless signal. The information about the wireless signal transmitted by the second beacon includes the identifier of the second beacon, and the information about the at least one second wireless signal includes the identifier of at least one fourth wireless device that transmits the at least one second wireless signal. The first transceiver unit is also used to send a fourth request to the server based on the distance between the scanning device and the second beacon satisfying the first condition. The fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0106] As an implementation method, the scanning unit is also used to perform wireless signal scanning to obtain information of at least one second wireless signal, and the information of at least one second wireless signal includes the identification of at least one fourth wireless device that transmits at least one second wireless signal; the first determination unit is also used to determine that the location is within the target area; the first transceiver unit is also used to send a fourth request to the server, and the fourth request carries the identification of the second beacon corresponding to the target area and the identification of at least one fourth wireless device corresponding to the identification of the second beacon.
[0107] As an implementation method, the scanning unit is used to scan the wireless signal of the scanning device to obtain information of at least one first wireless signal when a third condition is met; the third condition includes at least one of the following conditions: the time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, the screen of the scanning device changes from the off state to the bright screen state, and the motion state of the scanning device changes.
[0108] As an implementation method, the scanning unit is further configured to periodically perform wireless signal scanning based on a target period to obtain information of at least one first wireless signal.
[0109] As an implementation method, the device also includes: a period adjustment unit, which is used to increase the duration of the target period when the second similarity between the first environmental fingerprint of the current target period and the first environmental fingerprint of the previous target period is greater than a threshold, the first environmental fingerprint of the current target period is generated based on the identifier of at least one first wireless device obtained by scanning the current target period, and the first environmental fingerprint of the previous target period is generated based on the identifier of at least one first wireless device obtained by scanning the previous target period.
[0110] As an implementation manner, the first beacon is a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra Wideband UWB beacon, a Near Field Communication NFC tag, or a QR code.
[0111] As an implementation manner, the at least one first wireless signal includes at least one of the following wireless signals: a Bluetooth signal, a Wi-Fi signal, and a UWB signal.
[0112] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the first aspect of the embodiment of this application.
[0113] The fifth aspect of an embodiment of the present application provides a beacon sensing device, including: a second transceiver unit, used to receive a first request from a scanning device, the first request carries a first environmental fingerprint, and the first environmental fingerprint includes an identifier of at least one second wireless device; a second determination unit, used to determine the identifier of the first beacon based on the first environmental fingerprint; the second transceiver unit is also used to send the identifier of the first beacon to the scanning device.
[0114] As an implementation method, the second determination unit is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0115] As an implementation method, the second determination unit is used to calculate a first similarity between the first environment fingerprint and multiple second environment fingerprints; based on the first similarity, select the identifier of the beacon corresponding to one of the multiple second environment fingerprints as the identifier of the first beacon corresponding to the first environment fingerprint.
[0116] As an implementation method, the second determination unit is used to calculate, for each second environment fingerprint among multiple second environment fingerprints, a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0117] As an implementation method, the second transceiver unit is also used to receive a second request from the scanning device, the second request carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon, the third environmental fingerprint includes the identifier of at least one fifth wireless device; the device also includes a first update unit, which is used to update the mapping relationship table based on the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon.
[0118] As an implementation method, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon; the first update unit is used to generate a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, so as to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0119] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0120] As an implementation method, the third environmental fingerprint also includes the signal strength corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device; and the first updating unit is configured to select, based on the signal strengths corresponding to the identifiers, a second number of identifiers as the second part of identifiers from among identifiers included only in the third environmental fingerprint and identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon.
[0121] As an implementation method, the third environmental fingerprint also includes a scan count corresponding to each identifier of at least one fifth wireless device, where the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes a scan count corresponding to each identifier of at least one third wireless device, where the scan count corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned; and the first updating unit is configured to select, based on the scan counts corresponding to the identifiers, a second number of identifiers as the second part of identifiers from identifiers included only in the third environmental fingerprint and identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon.
[0122] As an implementation, the third environmental fingerprint also includes the signal strength and scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned. The second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scan count corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scan count corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned. The first updating unit is configured to calculate, based on the signal strengths and scan counts corresponding to the identifiers, a second score for each identifier included only in the third environmental fingerprint and a second score for each identifier included only in the second environmental fingerprint corresponding to the identifier of the second beacon; and select, based on the second scores corresponding to the identifiers, a second number of identifiers from the identifiers included only in the third environmental fingerprint and the identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon as the second portion of identifiers.
[0123] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the second aspect of the embodiment of this application.
[0124] In a sixth aspect, an embodiment of the present application provides a beacon sensing device, including: a third transceiver unit, used to receive a third request from a scanning device, the third request carrying an identifier of at least one first wireless device; a third determination unit, used to generate a first environmental fingerprint based on the identifier of the at least one first wireless device, the first environmental fingerprint including the identifier of at least one second wireless device, the at least one second wireless device being part or all of the at least one first wireless device; determining the identifier of the first beacon based on the first environmental fingerprint; the third transceiver unit, further used to send the identifier of the first beacon to the scanning device.
[0125] As an implementation method, the third determination unit is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0126] As an implementation method, the third determination unit is used to calculate a first similarity between the first environment fingerprint and multiple second environment fingerprints; based on the first similarity, select the identifier of the beacon corresponding to one of the multiple second environment fingerprints as the identifier of the first beacon corresponding to the first environment fingerprint.
[0127] As an implementation method, the third determination unit is used to calculate, for each second environment fingerprint among multiple second environment fingerprints, the first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0128] As an implementation method, the device also includes a second update unit; a third transceiver unit, further used to receive a fourth request from the scanning device, the fourth request carrying the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon; the second update unit is used to update the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0129] As an implementation method, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon; the second updating unit is used to generate a third environment fingerprint corresponding to the identifier of the second beacon, the third environment fingerprint including the identifier of at least one fifth wireless device, and the at least one fifth wireless device is part or all of the at least one fourth wireless device; based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, a fourth environment fingerprint corresponding to the identifier of the second beacon is generated to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0130] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0131] As an implementation method, the third environmental fingerprint also includes the signal strength corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device; and the second updating unit is configured to select, based on the signal strengths corresponding to the identifiers, a second number of identifiers as the second part of identifiers from among identifiers included only in the third environmental fingerprint and identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon.
[0132] As an implementation method, the third environmental fingerprint also includes the number of scans corresponding to each identifier of at least one fifth wireless device, where the number of scans corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned; the second environmental fingerprint corresponding to the identifier of the second beacon also includes the number of scans corresponding to each identifier of at least one third wireless device, where the number of scans corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned; and the second updating unit is configured to select, based on the number of scans corresponding to the identifiers, a second number of identifiers as the second part of identifiers from among the identifiers included only in the third environmental fingerprint and among the identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon.
[0133] As an implementation, the third environmental fingerprint also includes the signal strength and scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned. The second environmental fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scan count corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scan count corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned. The second updating unit is configured to calculate, based on the signal strengths and scan counts corresponding to the identifiers, a second score for each identifier included only in the third environmental fingerprint and a second score for each identifier included only in the second environmental fingerprint corresponding to the identifier of the second beacon; and select, based on the second scores corresponding to the identifiers, a second number of identifiers from the identifiers included only in the third environmental fingerprint and the identifiers included only in the second environmental fingerprint corresponding to the identifier of the second beacon as the second portion of identifiers.
[0134] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the third aspect of the embodiment of this application.
[0135] The seventh aspect of an embodiment of the present application provides a scanning device, comprising: one or more processors and a memory; wherein the memory stores computer-readable instructions; the one or more processors read the computer-readable instructions to enable the training device to implement the method described in any implementation method of the first aspect.
[0136] An eighth aspect of an embodiment of the present application provides a server comprising: one or more processors and a memory; wherein the memory stores computer-readable instructions; the one or more processors read the computer-readable instructions to enable a training device to implement the method described in any implementation of the second and third aspects.
[0137] In an eighth aspect, an embodiment of the present application provides a computer-readable storage medium, including computer-readable instructions. When the computer-readable instructions are executed on a computer, the computer executes the method described in any implementation of the first aspect or the second aspect.
[0138] A ninth aspect of the present application provides a chip comprising one or more processors, some or all of which are configured to read and execute a computer program stored in a memory to perform the method of any possible implementation of the first or second aspect.
[0139] Optionally, the chip includes a memory, and the memory is connected to the processor via a circuit or wire. Further optionally, the chip also includes a communication interface, and the processor is connected to the communication interface. The communication interface is used to receive data and / or information to be processed, and the processor obtains the data and / or information from the communication interface, processes the data and / or information, and outputs the processing results through the communication interface. The communication interface can be an input / output interface.
[0140] In some implementations, some of the one or more processors may implement some steps of the above method through dedicated hardware. For example, processing involving a neural network model may be implemented by a dedicated neural network processor or graphics processor.
[0141] The method provided in the embodiment of the present application can be implemented by one chip or by multiple chips working together.
[0142] In a tenth aspect, an embodiment of the present application provides a computer program product, which includes computer software instructions. The computer software instructions can be loaded by a processor to implement the method described in any one of the implementation methods of the first, second or third aspects above.
[0143] An eleventh aspect of the embodiments of the present application provides a beacon sensing system, including a scanning device and a server;
[0144] The scanning device is used to execute the method according to any one of the implementation modes of the first aspect;
[0145] The server is used to execute the method described in any one of the implementations of the second aspect or the third aspect.
[0146] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:
[0147] When the time interval of the first beacon broadcast is too long, the scanning device cannot scan the wireless signal of the first beacon within the time interval after the first beacon broadcast, and can only scan the wireless signal of the first beacon when the first beacon is broadcast next time, which will result in a higher delay in sensing the Bluetooth beacon; when the interference of other wireless signals is strong, the scanning device cannot scan the wireless signal of the first beacon, and can only scan the wireless signal of the first beacon when the interference of other wireless signals is weak, which will result in a higher delay in sensing the Bluetooth beacon; in the embodiment of the present application, the scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, at least one The information of the first wireless signal includes the identification of at least one first wireless device that transmits the at least one first wireless signal; then, the identification of the first beacon is determined based on the identification of the at least one first wireless device. Since the first beacon does not belong to the at least one first wireless device, the embodiment of the present application only needs to obtain the identification of the first wireless device without scanning the signal transmitted by the first beacon to determine the identification of the first beacon, that is, it is possible to perceive the first beacon when the wireless signal of the first beacon cannot be scanned, thereby avoiding the high delay in perceiving the Bluetooth beacon caused by the inability to scan the wireless signal of the first beacon, thereby reducing the delay in beacon perception. BRIEF DESCRIPTION OF THE DRAWINGS
[0148] Figure 1 This is a schematic diagram of the framework of the device perception system in the embodiment of the present application;
[0149] Figure 2 A schematic diagram of an embodiment of a beacon sensing method provided in an embodiment of the present application;
[0150] Figure 3 This is a schematic diagram of a first embodiment of determining an identifier of a first beacon in an embodiment of the present application;
[0151] Figure 4 This is a schematic diagram of an embodiment of generating a first environment fingerprint in an embodiment of the present application;
[0152] Figure 5 This is a schematic diagram of a second embodiment of determining the identifier of a first beacon in an embodiment of the present application;
[0153] Figure 6 This is a schematic diagram of an embodiment in which a scanning device determines an identifier of a first beacon corresponding to a first environment fingerprint based on a mapping relationship table in an embodiment of the present application;
[0154] Figure 7 This is a schematic diagram of a third embodiment of determining the identifier of a first beacon in an embodiment of the present application;
[0155] Figure 8 This is a schematic diagram of an embodiment in which a server determines an identifier of a first beacon corresponding to a first environment fingerprint based on a mapping relationship table in an embodiment of the present application;
[0156] Figure 9 This is a schematic diagram of an embodiment of wireless signal scanning in an embodiment of the present application;
[0157] Figure 10 This is a schematic diagram of a fourth embodiment of determining the identifier of a first beacon in an embodiment of the present application;
[0158] Figure 11 This is a schematic diagram of a first embodiment of updating a mapping relationship table in an embodiment of the present application;
[0159] Figure 12 This is a schematic diagram of a second embodiment of updating the mapping relationship table in an embodiment of the present application;
[0160] Figure 13 This is a schematic diagram of a third embodiment of updating a mapping relationship table in an embodiment of the present application;
[0161] Figure 14 This is a schematic diagram of a fourth embodiment of updating a mapping relationship table in an embodiment of the present application;
[0162] Figure 15 This is a schematic diagram of a fifth embodiment of updating a mapping relationship table in an embodiment of the present application;
[0163] Figure 16 A schematic diagram of the relationship between environmental fingerprints in the embodiment of this application;
[0164] Figure 17 This is a structural diagram of the first embodiment of the beacon sensing device in the embodiments of the present application;
[0165] Figure 18 This is a structural diagram of the first embodiment of the beacon sensing device in the embodiments of the present application;
[0166] Figure 19 This is a structural diagram of the first embodiment of the beacon sensing device in the embodiments of the present application;
[0167] Figure 20 This is a schematic diagram of the structure of the scanning device in the embodiment of the present application;
[0168] Figure 21 This is a schematic diagram of the structure of the server in the embodiment of the present application;
[0169] Figure 22 This is a structural diagram of the beacon sensing system in an embodiment of the present application. DETAILED DESCRIPTION
[0170] The embodiments of the present application provide a beacon sensing method, apparatus, device, and system, which can sense beacons through wireless signals transmitted by other surrounding wireless devices, thereby reducing the delay of beacon sensing.
[0171] The following describes the embodiments of the present application in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of the present application, rather than all the embodiments. Those skilled in the art will appreciate that with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0172] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate so that the embodiments described herein can be implemented in a sequence other than that illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or modules is not necessarily limited to those steps or modules clearly listed, but may include other steps or modules that are not clearly listed or that are inherent to these processes, methods, products or devices. The naming or numbering of steps in this application does not mean that the steps in the method flow must be executed in the time / logical sequence indicated by the naming or numbering. The process steps that have been named or numbered can be changed in the execution order according to the technical purpose to be achieved, as long as the same or similar technical effects can be achieved.
[0173] In addition, in the description of the present invention, unless otherwise specified, "plurality" means two or more. The term "and / or" or the character " / " in this application is merely a description of the association relationship between associated objects, indicating that three relationships can exist. For example, A and / or B, or A / B, can mean: A exists alone, A and B exist at the same time, or B exists alone.
[0174] The embodiments of the present application can be applied to Figure 1 In the device perception system shown, the device perception system includes a target broadcasting device, a scanning device, a server, and at least one surrounding broadcasting device.
[0175] The target broadcast device can be any device capable of broadcasting wireless signals, and can also be understood as a data transmitter. Specifically, the target broadcast device can be a beacon or other device, where broadcast can also be understood as transmitting. Typically, a wireless device is marked as a beacon by a beacon identifier. The embodiment of this application does not specifically limit the form of the beacon identifier. Exemplarily, the beacon identifier can be a 16-byte string, for example, a beacon identifier can be FDA50693A4E24FB1AFCF0000000000FF.
[0176] When the target broadcast device is a beacon, the target broadcast device can specifically be a Bluetooth beacon (including ordinary Bluetooth beacons and low-power Bluetooth beacons), Wireless Fidelity (Wi-Fi) beacons, Ultra-wideband (UWB) beacons or Near-field Communication (NFC) tags, etc.
[0177] When the target broadcast device is another device, the target broadcast device can be a sensor, a wearable device, a smart phone, a smart watch, a tablet computer, a laptop, a personal computer, a server, and an extended network element, wherein the extended network element can be a gateway, an access router, a core router, a front-end router, or a load balancer.
[0178] The scanning device can be any device that can scan wireless signals, and can also be understood as a data receiving end. Specifically, the scanning device can be a sensor, a wearable device, a smart phone, a smart watch, a tablet computer, a laptop, a personal computer, a server, and an extended network element, wherein the extended network element can be a gateway, an access router, a core router, a front-end router, or a load balancer.
[0179] The server can be a normal server or a cloud server. Figure 1 "Cloud" is used to refer to cloud servers.
[0180] The number of surrounding broadcast devices can be one or more; Figure 1 In the system shown, the surrounding broadcasting devices include surrounding broadcasting device A, surrounding broadcasting device B, surrounding broadcasting device C, surrounding broadcasting device D, surrounding broadcasting device E and surrounding broadcasting device F.
[0181] The surrounding broadcasting device is similar to the target broadcasting device and can be a beacon or other device. The types of beacons and other devices can refer to the above description.
[0182] It should be understood that, under normal circumstances, the scanning device can directly scan the wireless signal transmitted by the target broadcasting device, but for some reasons, the scanning device may not be able to scan the wireless signal transmitted by the target broadcasting device at certain moments. It is necessary to wait until the next broadcast of the first beacon to scan the wireless signal of the first beacon or wait until the interference from other wireless signals is weak to scan the wireless signal of the first beacon, which will result in a longer delay in beacon perception. For this reason, an embodiment of the present application provides a beacon perception method, in which the scanning device scans the wireless signals of surrounding broadcasting devices, and then cooperates with the server to achieve perception of the target broadcasting device when the wireless signal transmitted by the target broadcasting device cannot be scanned, thereby reducing the delay in beacon perception and improving user experience.
[0183] The following description will use a beacon instead of a target broadcast device to illustrate the embodiments of the present application.
[0184] It should be noted that in some scenarios where broadcasting is not required, the beacons mentioned below can be expanded to non-devices such as location information and QR codes in addition to the aforementioned beacons that can transmit wireless signals. For example, when a scanning device scans a QR code, or when the location information of the scanning device is a certain location information, the corresponding message can be pushed to the scanning device. At this time, both the QR code and the location information can be regarded as beacons, and accordingly, Figure 1 The target broadcasting device in the URL is replaced with location information or a QR code.
[0185] Specifically, see Figure 2 , an embodiment of the present application provides an embodiment of a beacon sensing method, including:
[0186] In operation 101 , a scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, where the information of the at least one first wireless signal includes an identification of at least one first wireless device that transmits the at least one first wireless signal.
[0187] The scanning device can be any device that can scan wireless signals. For details, see Figure 1 to understand the relevant instructions of the scanning device.
[0188] The at least one first wireless signal may be all wireless signals scanned by the scanning device, or may be part of the wireless signals scanned by the scanning device. This embodiment of the present application does not specifically limit this.
[0189] The at least one first wireless signal may be of various types, specifically including at least one of the following wireless signals: a Bluetooth signal, a Wi-Fi signal, and a UWB signal.
[0190] The information of the wireless signal can be obtained by parsing the wireless signal. In this embodiment, the information of the wireless signal includes the identification of the first wireless device that transmits the wireless signal.
[0191] The first wireless device can be any device that can transmit wireless signals, which is equivalent to Figure 1 For details about the peripheral broadcasting equipment, please refer to Figure 1 The related description of the surrounding broadcasting devices shown is understood with respect to the first wireless device.
[0192] The information of at least one first wireless signal may include multiple types of information. In this embodiment, the information of at least one first wireless signal includes the identification of at least one first wireless device; specifically, it may include the identification of one first wireless device, or it may include the identifications of multiple first wireless devices. This embodiment of the present application does not specifically limit this.
[0193] The identifier of the first wireless device can be understood as an identifier that can uniquely identify the first wireless device. There can be many types of identifiers, which are not limited in the embodiments of the present application.
[0194] It should be noted that a wireless device generally has a device identifier. When the wireless device is a beacon, the wireless device also has a beacon identifier.
[0195] Therefore, when the first wireless device is a beacon, the identifier of the first wireless device may be a beacon identifier, or may be a device identifier; when the first wireless device is not a beacon, the identifier of the first wireless device is a device identifier.
[0196] The device identifier may be a hardware address of the device; for example, when the first wireless device is a wireless access point (AP), the device identifier may be a basic service set identifier (BSSID); in addition, the device identifier may also be a media access control address (MAC), for example, 00-11-22-33-4A-5F.
[0197] It is understandable that in order to reduce power consumption, a scanning device is usually triggered to perform wireless signal scanning through a specific event rather than performing wireless signal scanning all the time.
[0198] Therefore, as one implementation method, operation 101 includes:
[0199] When the third condition is met, the scanning device performs wireless signal scanning to obtain information of at least one first wireless signal.
[0200] The third condition includes at least one of the following conditions: the time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, the screen of the scanning device changes from the off state to the bright state, and the motion state of the scanning device changes.
[0201] The time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, which can also be understood as data aging.
[0202] For example, in a scanning device, the system program controls the scanning device to scan for wireless signals, and the beacon sensing application also controls the scanning device to scan for wireless signals. The system program controls the scanning device to scan for wireless signals and stores the information obtained in the cache. Based on this, the beacon sensing application queries the cache for the wireless signal scan time to determine whether the data is outdated.
[0203] When the time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, it means that the data is aged and the scanning device can perform wireless signal scanning; when the time interval between the scanning time of the third wireless signal in the scanning device and the current time is less than or equal to the target time interval, it means that the data is not aged and the scanning device does not need to perform wireless signal scanning.
[0204] Among them, the target time interval can be set according to actual needs, and the embodiment of the present application does not make specific limitations on this. For example, the target time interval can be 2 minutes, 1 minute, 30 seconds, etc.
[0205] The screen of the scanning device changes from the off state to the bright state, which largely indicates that the user is ready to use the scanning device; at this time, the scanning device scans for wireless signals. If a beacon is sensed, a message can be pushed to the scanning device so that the user can view the message in time.
[0206] The change in the motion state of the scanning device can also indicate to a certain extent that the user is ready to use the scanning device. At this time, the scanning device performs wireless signal scanning. If a beacon is sensed, a message can also be pushed to the scanning device so that the user can view the message in time.
[0207] The change in the motion state of the scanning device may be determined by information collected by a sensor (such as an acceleration sensor) within the scanning device, which will not be described in detail.
[0208] As another implementation method, operation 101 includes:
[0209] The scanning device periodically performs wireless signal scanning based on a target period to obtain information of at least one first wireless signal.
[0210] Specifically, a timer is started, and when the time of the timer reaches the target period, the scanning device is controlled to perform wireless scanning, and after the wireless scanning is performed, the time of the timer is reset, and the reset timer will start counting again.
[0211] The target period may be adjusted according to actual needs. For example, the initial value of the target period may be set to 500 ms. During the wireless signal scanning process, the target period may be dynamically adjusted according to specific circumstances.
[0212] In order to control the number of times the scanning device performs wireless scanning, you can set the maximum reset number of the timer. When the timer reset number reaches the maximum reset number, the timer will no longer control the scanning device to perform wireless scanning; if certain conditions are met, the timer reset number will be reset to zero.
[0213] It should be noted that the scanning time mentioned in the embodiments of the present application specifically refers to the moment of a certain scan, and can also be called a scanning timestamp.
[0214] In operation 102 , a scanning device determines an identifier of a first beacon based on an identifier of at least one first wireless device, where the first beacon does not belong to the at least one first wireless device.
[0215] The embodiment of the present application does not specifically limit the type of the first beacon. For example, the first beacon may be a Bluetooth beacon, a Wireless Fidelity (Wi-Fi) beacon, an Ultra-Wideband (UWB) beacon, or a Near Field Communication (NFC) tag.
[0216] The first beacon does not belong to the first wireless device, so the relationship between the first beacon and the first wireless device is equivalent to Figure 1 The relationship between the target broadcast device and the surrounding broadcast devices.
[0217] There are many methods for determining the identifier of the first beacon based on the identifier of at least one first wireless device, which is not specifically limited in the embodiments of the present application.
[0218] It is understood that if at least one first wireless device is deployed near a first beacon and cannot scan the wireless signal of the first beacon, but can scan the wireless signal of at least one wireless device and determine the identity of the at least one first wireless device, it can be assumed that the scanning device is also located near the first beacon. Based on this, the identity of the first beacon can be determined based on the identity of the at least one wireless device.
[0219] When the time interval between broadcasting the first beacon is too long, the scanning device cannot scan the wireless signal of the first beacon within the time interval after the broadcasting of the first beacon, and can only scan the wireless signal of the first beacon when the first beacon is broadcast next time, resulting in a higher delay in perceiving the Bluetooth beacon; when the interference of other wireless signals is strong, the scanning device cannot scan the wireless signal of the first beacon, and can only scan the wireless signal of the first beacon when the interference of other wireless signals is weak, resulting in a higher delay in perceiving the Bluetooth beacon; in an embodiment of the present application, the scanning device performs wireless signal scanning to obtain the identifier of at least one first wireless device that transmits at least one first wireless signal, and determines the identifier of the first beacon based on the identifier of the at least one first wireless device, so that when the wireless signal of the first beacon cannot be scanned, the first beacon is perceived through the identifiers of other first wireless devices other than the first beacon, thereby avoiding the higher delay in perceiving the Bluetooth beacon caused by the inability to scan the wireless signal of the first beacon, thereby reducing the delay in beacon perception and improving user experience.
[0220] The beacon sensing method is described below using a specific example.
[0221] by Figure 1 For example, if the target broadcasting device is a Bluetooth beacon and the scanning device cannot scan the Bluetooth signal emitted by the Bluetooth beacon, the scanning device can perceive the Bluetooth beacon by scanning the Wi-Fi signals of surrounding broadcasting devices. Specifically, the scanning device scans the three Wi-Fi signals emitted by surrounding broadcasting devices A, B, and C, and parses them to obtain the identifiers of surrounding broadcasting devices A, B, and C. Based on the identifiers of surrounding broadcasting devices A, B, and C, the scanning device determines the identifier of the Bluetooth beacon, thereby realizing the perception of the Bluetooth beacon.
[0222] It should be noted that for a certain Bluetooth beacon, the Bluetooth signal it transmits will be interfered with by other wireless signals, resulting in a decrease in the probability of scanning the Bluetooth signal, thereby reducing the possibility of perceiving the Bluetooth beacon; for example, when there are multiple Bluetooth beacons deployed, since other Bluetooth beacons share the channel for transmitting Bluetooth signals with the Bluetooth beacon, the Bluetooth signals transmitted by other Bluetooth beacons will interfere with the Bluetooth signal transmitted by the Bluetooth beacon.
[0223] Wi-Fi signals usually do not share channels with Bluetooth beacons, so they will not interfere with the Bluetooth signals transmitted by Bluetooth beacons. In addition, Wi-Fi signals and other wireless signals are random. Therefore, when multiple Wi-Fi devices are deployed around a Bluetooth beacon, although the Wi-Fi signals transmitted by some Wi-Fi devices may not be scanned, the Wi-Fi signals transmitted by other Wi-Fi devices among the multiple Wi-Fi devices can always be scanned; thus, the Bluetooth beacon can be perceived.
[0224] Therefore, the embodiments of the present application are applicable to scenarios where any type of beacon is detected through any type of wireless signal, and are particularly applicable to scenarios where Bluetooth beacons are detected through Wi-Fi signals.
[0225] In addition, by detecting Bluetooth beacons through Wi-Fi signals, the widely deployed Wi-Fi devices (wireless access points) in the surrounding environment can be utilized without adding other devices or improving existing devices. Therefore, the cost is low and the practicality is strong.
[0226] Based on the above description, there are multiple methods for the scanning device to determine the identifier of the first beacon based on the identifier of the first wireless device. For example, the scanning device can cooperate with the server to determine the identifier of the first beacon.
[0227] It is understandable that, in the process of determining the identity of the first beacon, the same operation can be performed by the scanning device or by the server. Specifically, in the process of determining the identity of the first beacon, the embodiment of the present application needs to generate a first environmental fingerprint based on the beacon of the first wireless device. The operation of generating the first environmental fingerprint can be performed by the scanning device or by the server. To this end, the process of determining the identity of the first beacon is described below through the first embodiment, the second embodiment, and the third embodiment.
[0228] In the first and second embodiments, the first environment fingerprint is generated by the scanning device; in the third embodiment, the first environment fingerprint is generated by the server.
[0229] First, the first embodiment and the second embodiment are introduced.
[0230] See also Figure 3 As an implementation method, operation 102 includes:
[0231] In operation 201 , a scanning device generates a first environment fingerprint based on an identification of at least one first wireless device. The first environment fingerprint includes an identification of at least one second wireless device. The at least one second wireless device is part or all of the at least one first wireless device.
[0232] The first environmental fingerprint can be understood as a fingerprint of the surrounding environment of the scanning device, and is used to represent the characteristics of the surrounding environment of the scanning device.
[0233] Based on the foregoing description, it can be seen that the information of at least one first wireless signal includes the identifier of at least one first wireless device. In this embodiment, the identifier of at least one first wireless device can be used to generate a first environmental fingerprint, or a portion of the identifiers of the first wireless device can be selected from the identifiers of the at least one first wireless device as the identifiers of the second wireless device, and then the first environmental fingerprint is generated using the selected identifier of the at least one second wireless device.
[0234] The following describes a process of selecting a second wireless device from at least one first wireless device and generating a first environmental fingerprint based on an identifier of the at least one second wireless device.
[0235] As an implementation manner, the information of the at least one first wireless signal further includes the signal strength of the at least one first wireless signal.
[0236] It should be noted that the signal strength in the embodiment of the present application refers to the received signal strength (Received Signal Strength Indicator, RSSI), which will not be described in detail below.
[0237] Accordingly, operation 201 includes: sorting at least one first wireless signal based on the signal strength of the at least one first wireless signal, with the first wireless signal with a stronger signal strength being sorted first; then selecting a first number of first wireless signals with the highest sorting, and using the wireless devices that transmit the first number of first wireless signals as second wireless devices, and finally generating a first environmental fingerprint based on the identifier of the at least one second wireless device.
[0238] As an implementation manner, the information of the at least one first wireless signal further includes a scanning time of the at least one first wireless signal.
[0239] Accordingly, operation 201 includes: sorting at least one first wireless signal based on the scanning time of the at least one first wireless signal, sorting the first wireless signal whose scanning time is close to the current time at the front, then selecting a first number of first wireless signals with the front sorting, and using the wireless device that transmits the first number of first wireless signals as the second wireless device, and finally generating a first environmental fingerprint based on the identifier of the at least one second wireless device.
[0240] As an implementation manner, the information of the at least one first wireless signal further includes the signal strength and scanning time of the at least one first wireless signal.
[0241] Accordingly, if Figure 4 As shown, operation 201 includes:
[0242] In operation 301 , a scanning device calculates a first score of at least one first wireless signal based on a signal strength and a scanning time of the at least one first wireless signal.
[0243] There are multiple methods for calculating the first score of the first wireless signal.
[0244] Exemplarily, the stronger the signal strength of the first wireless signal, the higher the first score of the first wireless signal; the closer the scanning time of the first wireless signal is to the current time, the higher the first score of the first wireless signal.
[0245] In operation 302 , a scanning device selects a first number of first wireless signals from at least one first wireless signal based on a first score of the at least one first wireless signal.
[0246] Specifically, the first wireless signals can be sorted according to the first score, and then selected in order from high to low according to the first score to obtain a first number of first wireless signals, wherein the first number can be set according to actual needs, and the embodiment of the present application does not make specific limitations on this. For example, the first number can be 3, 4 or 5.
[0247] In operation 303 , the scanning device generates a first environment fingerprint based on an identification of at least one second wireless device, where the at least one second wireless device is a first wireless device that transmits a first number of first wireless signals.
[0248] Since the information of the first wireless signal also includes the signal strength and scanning time of the first wireless signal, the first environmental fingerprint generated through operations 301 to 303 may include, in addition to the identifier of the second device, the signal strength, scanning time, first score, and number of scans of the first wireless signal, where the number of scans refers to the number of times the scanning device scans the first wireless signal.
[0249] Therefore, an example of the first environment fingerprint generated through operations 301 to 303 may be shown in Table 1 below.
[0250] Table 1
[0251] Logo Signal strength Timestamp Scan times First Score BSSID_1 RSS_1 timestamp_1 count_1 score_1 BSSID_2 RSS_2 timestamp_2 count_2 score_2 … … … … … BSSID_k RSS_k timestamp_k count_k score_k
[0252] The following is a specific example of using Figure 4 The process of generating the first environment fingerprint by the method shown is described.
[0253] In this example, the scanning device scans three Wi-Fi signals. The BSSIDs of the wireless access points transmitting these three Wi-Fi signals are A1-B1-C1-D1-E1-F1, A2-B2-C2-D2-E2-F2, and A1-B3-C3-D3-E3-F3, respectively. The signal strengths of these three Wi-Fi signals are -50 decibels relative to one milliwatt (dBm), -100 dBm, and -50 dBm, respectively. The scanning timestamps of these three Wi-Fi signals are all 1612431172, and the scanning timestamps of these three Wi-Fi signals are all 1.
[0254] In operation 301 , first scores of the three Wi-Fi signals are calculated. The first scores of the three Wi-Fi signals are 0.4, 0.2, and 0.4, respectively. At this time, the characteristics of the three Wi-Fi signals are shown in Table 2 below.
[0255] Table 2
[0256] Logo Signal strength Timestamp Scan times First Score A1-B1-C1-D1-E1-F1 -50 1612431172 1 0.4 A2-B2-C2-D2-E2-F2 -100 1612431172 1 0.2 A3-B3-C3-D3-E3-F3 -50 1612431172 1 0.4
[0257] Then, the three Wi-Fi signals are sorted based on the scores, and two Wi-Fi signals with higher scores are selected to generate a first environment fingerprint. An example of the first environment fingerprint may be shown in Table 3 below.
[0258] Table 3
[0259] Logo Signal strength Timestamp Scan times First Score A1-B1-C1-D1-E1-F1 -50 1612431172 1 0.4 A3-B3-C3-D3-E3-F3 -50 1612431172 1 0.4
[0260] In operation 202 , a scanning device determines an identity of a first beacon based on a first environmental fingerprint.
[0261] There are many methods for determining the identifier of the first beacon based on the first environment fingerprint, which is not specifically limited in the embodiments of the present application.
[0262] Exemplarily, the first environment fingerprint may be matched with a second environment fingerprint already in a fingerprint database, and the identifier of the beacon corresponding to the matched second environment fingerprint may be used as the identifier of the first beacon.
[0263] It should be noted that the matching operation can be performed by a scanning device or by a server. To this end, the first embodiment and the second embodiment will be used to illustrate this.
[0264] In the first embodiment, the scanning device generates a first environmental fingerprint based on the beacon of the first wireless device, and the scanning device determines the identity of the first beacon based on the first environmental fingerprint; in the second embodiment, the scanning device generates the first environmental fingerprint based on the beacon of the first wireless device, but the server determines the identity of the first beacon based on the first environmental fingerprint.
[0265] like Figure 5 As shown, the first embodiment includes:
[0266] In operation 401 , a scanning device generates a first environment fingerprint based on an identification of at least one first wireless device. The first environment fingerprint includes an identification of at least one second wireless device. The at least one second wireless device is part or all of the at least one first wireless device.
[0267] It should be noted that operation 401 is the same as operation 201 , and operation 401 may be understood by referring to the relevant description of operation 201 in the aforementioned embodiment.
[0268] In operation 402, the scanning device determines an identifier of a first beacon corresponding to a first environmental fingerprint based on a mapping relationship table. The mapping relationship table includes multiple second environmental fingerprints and identifiers of beacons corresponding to each of the multiple second environmental fingerprints. Each second environmental fingerprint in the multiple second environmental fingerprints includes an identifier of at least one third wireless device. The identifier of the first beacon corresponding to the first environmental fingerprint is the identifier of the beacon corresponding to one of the multiple second environmental fingerprints.
[0269] It can be understood that the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints. The first environment fingerprint can be matched with the multiple second environment fingerprints to obtain a second environment fingerprint that matches the first environment fingerprint, and the identifier of the beacon corresponding to the second environment fingerprint can be used as the identifier of the first beacon.
[0270] An example of a mapping relationship table may be shown in Table 4 below.
[0271] Table 4
[0272] Beacon identification Second environment fingerprint id_1 {a_1,a_2,…,a_k} id_2 {b_1,b_2,b_k} … … id_n {c_1,c_2,…,c_k}
[0273] As shown in the above table, the mapping relationship table contains multiple second environment fingerprints such as {a_1, a_2,…, a_k}, {b_1, b_2, b_k}, {c_1, c_2,…, c_k}, and the beacon identifiers corresponding to the three second environment fingerprints {a_1, a_2,…, a_k}, {b_1, b_2, b_k}, and {c_1, c_2,…, c_k} are id_1, id_2, and id_n respectively; taking the second environment fingerprint {a_1, a_2,…, a_k} as an example, a_1, a_2,…, a_k in the second environment fingerprint respectively represent the identifiers of the third device; the identifiers a_1, a_2,…, a_k of the third device can respectively correspond to multiple attributes, such as signal strength, timestamp, number of scans, and score.
[0274] Operation 402 is an implementation of operation 202 .
[0275] In this embodiment, the scanning device determines the identifier of the first beacon corresponding to the first environment fingerprint based on the mapping relationship table without initiating a request to the server, thereby eliminating the delay caused by the interaction between the scanning device and the server, and realizing real-time query of the identifier of the first beacon.
[0276] like Figure 5 As shown, the mapping relationship table can be obtained by the scanning device from the server.
[0277] Specifically, the scanning device may periodically obtain the mapping relationship table from the server.
[0278] It should be noted that there are multiple methods for matching the first environment fingerprint with multiple second environment fingerprints to obtain the identifier of the first beacon, and the embodiments of the present application do not specifically limit this.
[0279] As a way to achieve this, Figure 6 As shown, operation 402 includes:
[0280] In operation 501 , a scanning device calculates a first similarity between a first environment fingerprint and a plurality of second environment fingerprints.
[0281] Exemplarily, operation 501 includes: for each second environment fingerprint among the multiple second environment fingerprints, the scanning device calculates a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0282] Specifically, the first similarity between the first environment fingerprint and the second environment fingerprint can be calculated based on the Jacobian similarity coefficient. Wherein, |C∩D| represents the number of identical identifiers in the second environment fingerprint and the first environment fingerprint, |C∪D| represents the total number of identifiers in the second environment fingerprint and the first environment fingerprint, and J(C, D) represents the first similarity between the first environment fingerprint and the second environment fingerprint.
[0283] In operation 502 , the scanning device selects, based on a first similarity, an identifier of a beacon corresponding to one of a plurality of second environmental fingerprints as an identifier of a first beacon corresponding to a first environmental fingerprint.
[0284] Specifically, the scanning device can select the identifier of the beacon corresponding to the second environment fingerprint with the highest first similarity as the identifier of the first beacon; it can also randomly select the identifier of the beacon corresponding to a second environment fingerprint from multiple second environment fingerprints whose first similarity is greater than the target similarity as the identifier of the first beacon, where the target similarity can be set according to actual needs, for example, it can be set to 0.5.
[0285] The first embodiment is introduced above, and the second embodiment is introduced below.
[0286] like Figure 7 As shown, the second embodiment includes:
[0287] In operation 601 , a scanning device generates a first environment fingerprint based on an identification of at least one first wireless device. The first environment fingerprint includes an identification of at least one second wireless device. The at least one second wireless device is part or all of the at least one first wireless device.
[0288] It should be noted that operation 601 is the same as operation 201 , and operation 601 may be understood by referring to the relevant description of operation 201 in the aforementioned embodiment.
[0289] In operation 602 , the scanning device sends a first request to the server, where the first request carries a first environment fingerprint.
[0290] The first request instructs the server to determine an identity of the first beacon based on the first environmental fingerprint.
[0291] Accordingly, the server receives a first request from the scanning device, the first request carrying a first environment fingerprint, the first environment fingerprint including an identifier of at least one second wireless device;
[0292] In operation 603 , the server determines an identifier of the first beacon based on the first environment fingerprint.
[0293] It should be noted that the process of the server determining the identifier of the first beacon based on the first environment fingerprint is similar to the process of the scanning device determining the identifier of the first beacon, which will be described below.
[0294] As an implementation method, operation 603 includes:
[0295] The server determines the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to each of the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0296] Since the process of the server determining the identifier of the first beacon is similar to the process of the scanning device determining the identifier of the first beacon, the above operation can be understood by referring to the relevant description of operation 402.
[0297] In this embodiment, the server determines the identifier of the first beacon based on the first environment fingerprint, thereby avoiding the additional overhead of the scanning device caused by the determination of the identifier of the first beacon, thereby reducing the overhead of the scanning device, and is suitable for scanning devices with limited resources and computing power.
[0298] As a way to achieve this, Figure 8 As shown, operation 603 includes:
[0299] Operation 701: The server calculates a first similarity between a first environment fingerprint and a plurality of second environment fingerprints;
[0300] In operation 702 , the server selects, based on the first similarity, an identifier of a beacon corresponding to one of the plurality of second environment fingerprints as an identifier of a first beacon corresponding to the first environment fingerprint.
[0301] Since the process of the server determining the identifier of the first beacon is similar to the process of the scanning device determining the identifier of the first beacon, the relevant descriptions of operations 501 and 502 may be referred to to understand operations 701 and 702 in this embodiment.
[0302] As an implementation method, operation 701 includes:
[0303] For each second environment fingerprint in the plurality of second environment fingerprints, the server calculates a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0304] Since the process of calculating the first similarity by the server is similar to the process of calculating the first similarity by the scanning device, the above operation may be understood by referring to the relevant description of operation 501 .
[0305] In operation 604 , the server sends an identifier of the first beacon to the scanning device.
[0306] Specifically, the server sends a first response to the first request to the scanning device, where the first response carries an identifier of a first beacon corresponding to the first environment fingerprint.
[0307] Correspondingly, the scanning device receives the identifier of the first beacon corresponding to the first environmental fingerprint from the server.
[0308] Based on the foregoing description, it can be seen that the scanning device can periodically scan for wireless signals based on a target period, and the target period can be dynamically adjusted; and in the above-mentioned multiple embodiments, the scanning device determines the identifier of the first beacon based on the first environmental fingerprint. Based on this, the following introduces a method for dynamically adjusting the target period based on the first environmental fingerprint.
[0309] Specifically, as a way to achieve Figure 9 As shown, operation 101 includes:
[0310] In operation 801 , a scanning device periodically performs wireless signal scanning based on a target period to obtain information of at least one first wireless signal.
[0311] Operation 802, when the second similarity between the first environment fingerprint of the current target cycle and the first environment fingerprint of the previous target cycle is greater than a threshold, increase the duration of the target cycle, the first environment fingerprint of the current target cycle is generated based on the identifier of at least one first wireless device scanned in the current target cycle, and the first environment fingerprint of the previous target cycle is generated based on the identifier of at least one first wireless device scanned in the previous target cycle.
[0312] It can be understood that the second similarity between the first environmental fingerprint of the current target cycle and the first environmental fingerprint of the previous target cycle is greater than the threshold, indicating that the change in the first environmental fingerprint from the previous target cycle to the current target cycle is small; therefore, the duration of the target cycle can be appropriately increased to avoid frequent wireless signal scanning and increased power consumption.
[0313] The second similarity between the first environment fingerprint of the current target period and the first environment fingerprint of the previous target period is less than or equal to the threshold, indicating that the first environment fingerprint has changed significantly from the previous target period to the current target period. Therefore, frequent wireless signal scanning is required to ensure the perception capability of the first beacon, and to prevent the target period of the wireless signal scanning from being too long, resulting in the first beacon not being perceived.
[0314] In this case, the target period can be kept unchanged or the duration of the target period can be appropriately reduced.
[0315] The initial value of the target period and the amplitude of each adjustment can be adjusted according to actual needs. For example, the initial value of the target period can be set to 500ms. The threshold can also be adjusted according to actual needs. For example, the threshold can be set to 0.9, 0.88, 0.86, etc.
[0316] The above scanning control method is described below through specific examples.
[0317] In this example, the initial value of the target period T_0 = 500ms, and the target period of the i-th wireless signal scan can be represented by T_{i-1}; if the similarity between the first environmental fingerprint obtained after the i-th wireless signal scan and the first environmental fingerprint obtained after the i+1-th wireless signal scan is less than or equal to 0.9, then the target period of the i+2-th wireless signal scan T_{i+1} = T_i; if the similarity between the first environmental fingerprint obtained after the i-th wireless signal scan and the first environmental fingerprint obtained after the i+1-th wireless signal scan is greater than 0.9, then the target period of the i+2-th wireless signal scan T_{i+1} = T_i+x, where i is a positive integer and x is a positive number.
[0318] In the first and second embodiments described above, the first environment fingerprint is generated by the scanning device. Based on the above description, it can be seen that the first environment fingerprint can also be generated by the server.
[0319] The third embodiment is described below. The third embodiment is different from the first and second embodiments in that the server generates the first environment fingerprint based on the beacon of the first wireless device.
[0320] Specifically, in the third embodiment, the server generates a first environmental fingerprint based on a beacon of the first wireless device, and the server determines an identifier of the first beacon based on the first environmental fingerprint.
[0321] like Figure 10 As shown, the third embodiment includes:
[0322] In operation 901 , a scanning device sends a third request to a server, where the third request carries an identifier of at least one first wireless device.
[0323] Specifically, the third request instructs the server to determine an identifier of the first beacon based on an identifier of at least one first wireless device.
[0324] Correspondingly, the server receives a third request from the scanning device, where the third request carries an identifier of at least one first wireless device.
[0325] In operation 902 , the server generates a first environment fingerprint based on an identifier of at least one first wireless device. The first environment fingerprint includes an identifier of at least one second wireless device. The at least one second wireless device is part or all of the at least one first wireless device.
[0326] It should be noted that the process of the server generating the first environment fingerprint is similar to the process of the scanning device generating the first environment fingerprint. Therefore, the relevant description of operation 201 can be referred to for understanding operation 902.
[0327] In operation 903 , the server determines an identifier of the first beacon based on the first environment fingerprint.
[0328] It should be noted that the process of the server determining the identifier of the first beacon is similar to the process of the scanning device determining the identifier of the first beacon. Therefore, the relevant description of operation 202 can be referred to for understanding operation 903.
[0329] In this embodiment, the scanning device sends the identification of at least one first wireless device to the server, and the server generates a first environmental fingerprint and determines the identification of the first beacon based on the first environmental fingerprint, thereby avoiding additional overhead for the scanning device caused by the generation of the first environmental fingerprint and the determination of the identification of the first beacon. Compared with the second embodiment, the overhead of the scanning device can be further reduced, and it is more suitable for scanning devices with limited resources and computing power.
[0330] As an implementation method, operation 903 includes:
[0331] The server determines the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to each of the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0332] Since the process of the server determining the identifier of the first beacon is similar to the process of the scanning device determining the identifier of the first beacon, the above operation can be understood by referring to the relevant description of operation 402.
[0333] As an implementation method, operation 903 includes:
[0334] The server calculates a first similarity between the first environment fingerprint and the plurality of second environment fingerprints;
[0335] The server selects, based on the first similarity, an identifier of a beacon corresponding to one of the plurality of second environment fingerprints as an identifier of a first beacon corresponding to the first environment fingerprint.
[0336] Since the process of the server determining the identifier of the first beacon is similar to the process of the scanning device determining the identifier of the first beacon, the above operations may be understood by referring to the relevant descriptions of operations 501 and 502.
[0337] As an implementation manner, the server calculating the first similarity between the first environment fingerprint and the plurality of second environment fingerprints includes:
[0338] For each second environment fingerprint in the plurality of second environment fingerprints, the server calculates a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0339] Since the process of calculating the first similarity by the server is similar to the process of calculating the first similarity by the scanning device, the above operation may be understood by referring to the relevant description of operation 501 .
[0340] In operation 904 , the server sends an identifier of the first beacon to the scanning device.
[0341] Specifically, the server sends a third response to the third request to the scanning device, where the third response carries an identifier of the first beacon corresponding to an identifier of the at least one first wireless device.
[0342] Accordingly, the scanning device receives an identification of a first beacon corresponding to an identification of at least one first wireless device from the server.
[0343] The specific process of beacon perception is explained through the above embodiments. Based on this explanation, it can be seen that in the process of beacon perception, a mapping relationship table (i.e., fingerprint database) needs to be used as a reference; the accuracy and completeness of the mapping relationship table affect the results of beacon perception. Therefore, the mapping relationship table needs to be updated in a timely manner.
[0344] It should be understood that the mapping relationship table contains multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints. If the mapping relationship table is to be updated, it is also necessary to generate the environment fingerprint for the update first. In this embodiment of the application, the environment fingerprint for the update is called the third environment fingerprint.
[0345] Similar to the first environment fingerprint, the generation of the third environment fingerprint can be performed by the scanning device or by the server; therefore, the updating method of the mapping relationship table will be introduced below through the fourth embodiment, the fifth embodiment, the sixth embodiment and the seventh embodiment.
[0346] In the fourth and fifth embodiments, the third environment fingerprint is generated by a scanning device; in the sixth and seventh embodiments, the third environment fingerprint is generated by a server.
[0347] like Figure 11 As shown, the fourth embodiment includes:
[0348] In operation 1001, a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal. The information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal.
[0349] Operation 1001 differs from operation 101 in that the scanning device obtains information about the wireless signal transmitted by the second beacon during the process of scanning the wireless signal.
[0350] The embodiment of the present application does not specifically limit the type of the second beacon. For example, the second beacon can be a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an ultra-wideband UWB beacon, or a near-field communication NFC tag. Accordingly, the wireless signal emitted by the second beacon can be a Bluetooth signal, a Wi-Fi signal, a UWB signal, or an NFC signal.
[0351] Except for the above differences, operation 1001 is similar to operation 101 , so the operation 1001 may be understood by referring to the relevant description of operation 101 .
[0352] In operation 1002 , a scanning device generates a third environment fingerprint corresponding to an identifier of a second beacon. The third environment fingerprint includes an identifier of at least one fifth wireless device. The at least one fifth wireless device is part or all of the at least one fourth wireless device.
[0353] It should be noted that operation 1002 is similar to operation 201 , so operation 1002 may be understood by referring to the relevant description of operation 201 .
[0354] Operation 1003: Based on the distance between the scanning device and the second beacon meeting the first condition, the scanning device sends a second request to the server, where the second request carries the identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon.
[0355] It is understandable that before operation 1003, the scanning device needs to first calculate the distance between itself and the second beacon. There are many calculation methods, which are not specifically limited in the embodiments of the present application.
[0356] For example, the distance between the scanning device and the second beacon may be estimated according to the signal strength of the wireless signal transmitted by the scanned second beacon.
[0357] The first condition can be set according to actual needs, and the embodiments of the present application do not make specific limitations on this; for example, the first condition can be a distance threshold, which can be 2 meters, 3 meters, 4 meters, etc.; for another example, the first condition can also be a distance range, specifically, it can be 0 to 2 meters, 0 to 3 meters, 0 to 4 meters, etc.
[0358] The second request is used to instruct the server to update the mapping relationship table based on the identifier of the second beacon and the third environment fingerprint.
[0359] Accordingly, the server receives a second request from the scanning device, the second request carrying the identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon, the third environment fingerprint including the identifier of at least one fifth wireless device;
[0360] In operation 1004 , the server updates the mapping relationship table based on the identifier of the second beacon and the third environment fingerprint corresponding to the identifier of the second beacon.
[0361] It can be understood that there are two situations in which the mapping relationship table is updated based on the identifier of the second beacon and the third environment fingerprint.
[0362] The first case is that the mapping relationship table does not include the second environment fingerprint corresponding to the identifier of the second beacon; in this case, the server may add a mapping relationship between the identifier of the second beacon and the second environment fingerprint in the mapping relationship table.
[0363] The second scenario is that the mapping table contains the second environment fingerprint corresponding to the second beacon identifier. In this case, the server needs to update the second environment fingerprint corresponding to the second beacon identifier in the mapping table based on the third environment fingerprint corresponding to the second beacon identifier. This is described in detail below.
[0364] As an implementation manner, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon, that is, the second case mentioned above.
[0365] Accordingly, operation 1004 includes: the server generates a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, so as to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0366] In this embodiment, the server generates a new fourth environment fingerprint based on the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon, and uses the fourth environment fingerprint as the environment fingerprint corresponding to the identifier of the second beacon in the mapping table to update the second environment fingerprint corresponding to the identifier of the second beacon.
[0367] It is understandable that the second environment fingerprint includes the identifier of at least one third wireless device, and the third environment fingerprint includes the identifier of at least one fifth wireless device, so the identifier in the fourth environment fingerprint can be selected from the second environment fingerprint and the third environment fingerprint.
[0368] Specifically, as an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0369] It can be understood that the first part of the identifier refers to the same identifier between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon, while the second part of the identifier refers to the different identifier between the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon. The second part of the identifier can be selected from the second environment fingerprint corresponding to the identifier of the second beacon, or from the third environment fingerprint.
[0370] The selection process of the second part identifier is described below through three embodiments.
[0371] As an implementation manner, the third environmental fingerprint further includes the signal strength corresponding to each identifier of at least one fifth wireless device, and the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device.
[0372] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device. The signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device.
[0373] Correspondingly, the beacon perception method provided in an embodiment of the present application also includes: the server selects a second number of identifiers as second part identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier.
[0374] Among them, the second number can be set according to actual needs, and the embodiment of the present application does not make specific limitations on this. For example, if the number of identifiers contained in the fourth environmental fingerprint is set to m, then the second number = m-the number of identifiers in the first part, m is a positive number greater than 1, for example, m can be set to 2, 3 or 4.
[0375] It can be understood that for the identifier that is only included in the third environmental fingerprint and the identifier included in the second environmental fingerprint corresponding to the identifier of the second beacon, the stronger the signal strength corresponding to the identifier, the more likely it is that the wireless signal emitted by the device corresponding to the identifier is scanned. Therefore, adding the identifier to the fourth environmental fingerprint is more conducive to the perception of the second beacon.
[0376] To this end, in this embodiment, a second number of identifiers with relatively strong signal strengths may be selected as the second part of identifiers.
[0377] In the above implementation, the second part of the identifier is determined based on the signal strength corresponding to the identifier. In addition, the second part of the identifier can also be determined based on the number of scans corresponding to the identifier, which is described in detail below.
[0378] As an implementation method, the third environment fingerprint also includes the scanning times corresponding to the identifier of at least one fifth wireless device. The scanning times corresponding to the identifier of the fifth wireless device are the times of scanning the wireless signal transmitted by the fifth wireless device.
[0379] The second environment fingerprint corresponding to the identifier of the second beacon also includes the scanning times corresponding to the identifier of at least one third wireless device. The scanning times corresponding to the identifier of the third wireless device are the times of scanning the wireless signal transmitted by the third wireless device.
[0380] Accordingly, the beacon sensing method provided in the embodiment of the present application further includes:
[0381] The server selects a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifiers.
[0382] Similarly, the second number can be set according to actual needs, and the embodiment of the present application does not make specific limitations on this. For example, if the number of identifiers included in the fourth environmental fingerprint is set to m, then the second number = m-the number of identifiers in the first part, where m is a positive number greater than 1. For example, m can be set to 2, 3 or 4.
[0383] It can be understood that for the identifier that is only included in the third environmental fingerprint and the identifier included in the second environmental fingerprint corresponding to the identifier of the second beacon, the more scan times corresponding to the identifier, the greater the probability that the wireless signal transmitted by the device corresponding to the identifier is scanned. Therefore, adding the identifier to the fourth environmental fingerprint is more conducive to the perception of the second beacon.
[0384] In the two implementations above, one determines the second identifier based on the signal strength corresponding to the identifier, while the other determines the second identifier based on the number of scans corresponding to the identifier. Of course, it is also possible to combine the signal strength corresponding to the identifier and the number of scans corresponding to the identifier to score the identifier, and then determine the second identifier based on the identifier score. This is described in detail below.
[0385] As an implementation method, the third environmental fingerprint also includes the signal strength and scanning times corresponding to the identifier of at least one fifth wireless device. The signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scanning times corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned.
[0386] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scanning number corresponding to the identifier of at least one third wireless device. The signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0387] Accordingly, the beacon sensing method provided in the embodiment of the present application further includes:
[0388] The server calculates, based on the signal strength and the number of scans corresponding to the identifiers, the second score of each identifier included only in the third environment fingerprint and the second score of each identifier included only in the second environment fingerprint corresponding to the identifier of the second beacon;
[0389] The server selects a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the second scores corresponding to the identifiers.
[0390] It should be noted that the method for calculating the second score of the identifier is similar to the method for calculating the first score in the aforementioned embodiment. For details, please refer to the relevant description of calculating the first score for understanding the method for calculating the second score of the identifier.
[0391] Generally, the stronger the signal strength, the higher the second score; the more scan times, the higher the second score; therefore, a second number of identifiers with higher second scores can be selected as the second part of identifiers.
[0392] The generation process of the fourth environment fingerprint is described below through a specific example.
[0393] In this example, the identifier of the second beacon corresponding to the third environmental fingerprint is UWKCWEL329F023JD, and the third environmental fingerprint can be expressed as A={A1-B1-C1-D1-E1-F1, A1-B3-C3-D3-E3-F3}, where A1-B1-C1-D1-E1-F1 and A1-B3-C3-D3-E3-F3 are the BSSIDs of two wireless access points, respectively. The signal strengths corresponding to the BSSIDs of the two wireless access points are both -50 dBm.
[0394] The mapping relationship table in the server is shown in Table 5 below.
[0395] Table 5
[0396]
[0397] As can be seen from Table 5, the second environment fingerprint corresponding to the identifier UWKCWEL329F023JD of the second beacon can be expressed as B = {A1-B1-C1-D1-E1-F1, A2-B2-C2-D2-E2-F2}, where A1-B1-C1-D1-E1-F1 and A1-B3-C3-D3-E2-F2 are the identifiers of the two devices respectively, and the attributes of these two identifiers are shown in Table 6 below.
[0398] Table 6
[0399] Logo Signal strength Timestamp Scan times Second score A1-B1-C1-D1-E1-F1 -50 1612431100 100 0.4 A2-B2-C2-D2-E2-F2 -100 1612431100 1 0.2
[0400] In Table 6, the second score is calculated based on the signal strength and the number of scans.
[0401] Based on the third environment fingerprint and the second environment fingerprint shown in Table 6, it can be seen that the third environment fingerprint and Figure 6 The identifier of the second fingerprint shown is A∩B={A1-B1-C1-D1-E1-F1}, so the identifier A1-B1-C1-D1-E1-F1 can be used as the first partial identifier of the fourth environment fingerprint.
[0402] If the number of identifiers in the fourth environmental fingerprint is set to 2, and the number of identifiers that are the same as the third environmental fingerprint and the second fingerprint shown in Table 6 is 1, it is necessary to select an identifier from the different identifiers A∪BA∩B={A2-B2-C2-D2-E2-F2,A3-B3-C3-D3-E3-F3} of the third environmental fingerprint and the second fingerprint shown in Table 6 as the second part identifier.
[0403] Specifically, one identifier may be selected as the second partial identifier from A∪BA∩B={A2-B2-C2-D2-E2-F2, A3-B3-C3-D3-E3-F3} based on signal strength, scanning times or scores.
[0404] Taking signal strength as an example, the signal strength of -100dBm corresponding to the identifier A2-B2-C2-D2-E2-F2 is less than the signal strength of -50dBm corresponding to the identifier A3-B3-C3-D3-E3-F3. Therefore, the identifier A3-B3-C3-D3-E3-F3 can be selected as the second part identifier; accordingly, the fourth environmental fingerprint is composed of the identifier A1-B1-C1-D1-E1-F1 and the identifier A3-B3-C3-D3-E3-F3, as shown in Table 7 below.
[0405] Table 7
[0406] Logo Signal strength Timestamp Scan times Second score A1-B1-C1-D1-E1-F1 -50 1612431100 101 0.4 A3-B3-C3-D3-E3-F3 -50 1612431100 1 0.4
[0407] Based on the above example, it can be seen that the second environment fingerprint and the third environment fingerprint corresponding to the identifier of the second beacon may both include signal strength and scanning times. Therefore, when updating the mapping relationship table, the signal strength and scanning times may also be updated.
[0408] Specifically, for an identifier of the second beacon whose corresponding second environment fingerprint and third environment fingerprint are different, the signal strength and scanning times corresponding to the identifier may be directly added to the mapping relationship table.
[0409] For the identifier of the second beacon whose second environment fingerprint and third environment fingerprint correspond to the same identifier, the signal strength corresponding to the same identifier in the second environment fingerprint and the signal strength corresponding to the same identifier in the third environment fingerprint can be weighted averaged; specifically, the formula RSS_avg = a*RSS_old + (1-a)*RSS_new can be used for weighted average processing, where RSS_avg is the signal strength value of the weighted average processing, RSS_old is the signal strength value in the second environment fingerprint, RSS_new is the signal strength value in the third environment fingerprint, and a is a weight factor with a value of 0 to 1, for example, a = 0.8.
[0410] For the identifier of the second beacon whose second environment fingerprint and third environment fingerprint correspond to the same identifier, the number of scans corresponding to the same identifier in the second environment fingerprint and the number of scans corresponding to the same identifier in the third environment fingerprint are added together.
[0411] Taking the third environment fingerprint in the above example and the second environment fingerprint shown in Table 6 as examples, the same identifier is A1-B1-C1-D1-E1-F1, the signal strength corresponding to the identifier A1-B1-C1-D1-E1-F1 in the third environment fingerprint is -50dBm, and the signal strength corresponding to the identifier A1-B1-C1-D1-E1-F1 in the second environment fingerprint is also -50dBm, so the signal strength after weighted average processing is -50dBm; the number of scans corresponding to the identifier A1-B1-C1-D1-E1-F1 in the third environment fingerprint is 1, and the number of scans corresponding to the identifier A1-B1-C1-D1-E1-F1 in the second environment fingerprint is 100, so the updated number of scans is 101, as shown in Table 7 above.
[0412] The fourth embodiment is introduced above, and the fifth embodiment is introduced below.
[0413] like Figure 12 As shown, the fifth embodiment includes:
[0414] In operation 1101, a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal. The information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal.
[0415] It should be noted that operation 1101 is similar to operation 1001 , so operation 1101 may be understood by referring to the relevant description of operation 1001 .
[0416] In operation 1102 , the scanning device generates a third environment fingerprint corresponding to the identifier of the second beacon, where the third environment fingerprint includes the identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device.
[0417] It should be noted that operation 1102 is similar to operation 1002 , so operation 1102 may be understood by referring to the relevant description of operation 1002 .
[0418] In operation 1103 , the scanning device determines that its location is within the target area.
[0419] It should be noted that the target area can be set according to actual needs. Specifically, the target area can be a specific area around the second beacon, or a specific area that the user is interested in. For example, the target area can be a shopping mall, restaurant, or an exhibition area in a museum.
[0420] There are many methods for a scanning device to determine that its location is within a target area, and the embodiments of the present application do not specifically limit this.
[0421] For example, if the target area is a restaurant, when the scanning device scans a QR code on a table to order food, or scans a QR code at a cash register to pay, it can be determined that the scanning device is inside the restaurant.
[0422] At operation 1104 , the scanning device sends a second request to the server. The second request carries an identifier of a second beacon corresponding to the target area and a third environment fingerprint corresponding to the identifier of the second beacon.
[0423] It is understandable that there is a correspondence between the target area and the identifier of the second beacon. After the scanning device determines that its location is within the target area, it can determine the identifier of the second beacon based on the correspondence.
[0424] From this, it can be seen that the difference between the fifth embodiment and the fourth embodiment is that in the fourth embodiment, the scanning device needs to scan the wireless signal transmitted by the second beacon to determine the identity of the second beacon; while in the fifth embodiment, the scanning device only needs to determine the target area, and the identity of the second beacon can be determined based on the target area.
[0425] The second request instructs the server to update the mapping relationship table based on the third environment fingerprint and the identifier of the second beacon.
[0426] Correspondingly, the server receives a second request from the scanning device, the second request carrying the identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon, the third environment fingerprint including the identifier of at least one fifth wireless device.
[0427] In operation 1105 , the server updates the mapping relationship table based on the identifier of the second beacon and the third environment fingerprint corresponding to the identifier of the second beacon.
[0428] It should be noted that operation 1105 is similar to operation 1005 , so operation 1105 may be understood by referring to the relevant description of operation 1005 .
[0429] The fourth and fifth embodiments are described above, and the sixth embodiment will be described below.
[0430] Different from the fourth and fifth embodiments, in the sixth embodiment, the scanning device does not generate the third environment fingerprint, but the third environment fingerprint is generated by the server.
[0431] Specifically, if Figure 13 As shown, the sixth embodiment includes:
[0432] In operation 1201, a scanning device performs wireless signal scanning to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal. The information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal.
[0433] It should be noted that operation 1201 is similar to operation 1001 , so operation 1201 may be understood by referring to the relevant description of operation 1001 .
[0434] Operation 1202: Based on the distance between the scanning device and the second beacon meeting the first condition, the scanning device sends a fourth request to the server, where the fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0435] It should be noted that the difference between operation 1202 and operation 1003 is that the fourth request in operation 1202 carries the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon, while the second request in operation 1003 carries the identifier of the second beacon and the third environmental fingerprint corresponding to the identifier of the second beacon; apart from this, operation 1202 is similar to operation 1003, so the specific understanding of operation 1201 can be referred to the relevant instructions of operation 1003.
[0436] The fourth request instructs the server to update the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon.
[0437] Correspondingly, the server receives a fourth request from the scanning device, where the fourth request carries the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon.
[0438] In operation 1203 , the server updates the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0439] It can be understood that the mapping relationship table includes multiple second environment fingerprints. Therefore, if the mapping relationship table is to be updated, the second environment fingerprint corresponding to the second beacon can be adjusted directly based on the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon, or a third environment fingerprint can be generated first, and then the mapping relationship table can be updated based on the third environment fingerprint.
[0440] Therefore, as an implementation manner, one of the multiple second environment fingerprints corresponds to the identifier of the second beacon.
[0441] Accordingly, if Figure 14As shown, operation 1203 includes:
[0442] Operation 1301: The server generates a third environment fingerprint corresponding to the identifier of the second beacon, where the third environment fingerprint includes the identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device.
[0443] It should be noted that the process of generating the third environment fingerprint in operation 1301 is similar to the process of generating the first environment fingerprint in operation 201 , so the operation 1301 may be understood by referring to the relevant description of operation 201 .
[0444] In operation 1302 , the server generates a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, so as to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0445] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0446] As an implementation manner, the third environmental fingerprint further includes the signal strength corresponding to each identifier of at least one fifth wireless device, and the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device.
[0447] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device. The signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device.
[0448] Accordingly, the sixth embodiment further includes:
[0449] The server selects a second number of identifiers as the second part of identifiers from the identifiers included only in the third environment fingerprint and the identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the signal strength corresponding to the identifier.
[0450] As an implementation method, the third environment fingerprint also includes the scanning times corresponding to the identifier of at least one fifth wireless device. The scanning times corresponding to the identifier of the fifth wireless device are the times of scanning the wireless signal transmitted by the fifth wireless device.
[0451] The second environment fingerprint corresponding to the identifier of the second beacon also includes the scanning times corresponding to the identifier of at least one third wireless device. The scanning times corresponding to the identifier of the third wireless device are the times of scanning the wireless signal transmitted by the third wireless device.
[0452] Accordingly, the sixth embodiment further includes:
[0453] The server selects a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifiers.
[0454] As an implementation method, the third environmental fingerprint also includes the signal strength and scanning times corresponding to the identifier of at least one fifth wireless device. The signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scanning times corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned.
[0455] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scanning number corresponding to the identifier of at least one third wireless device. The signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned.
[0456] Accordingly, the sixth embodiment further includes:
[0457] The server calculates, based on the signal strength and the number of scans corresponding to the identifiers, the second score of each identifier included only in the third environment fingerprint and the second score of each identifier included only in the second environment fingerprint corresponding to the identifier of the second beacon;
[0458] The server selects a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the second scores corresponding to the identifiers.
[0459] It should be noted that operation 1302 is similar to operation 1004, and the server also generates a fourth environment fingerprint and updates the second environment fingerprint corresponding to the identifier of the second beacon based on the fourth environment fingerprint. For details, please refer to the relevant instructions of operation 1004 to understand operation 1302.
[0460] The sixth embodiment has been described above, and the seventh embodiment will be described below.
[0461] Specifically, if Figure 15 As shown, the seventh embodiment includes:
[0462] In operation 1401 , a scanning device performs wireless signal scanning to obtain information of at least one second wireless signal, where the information of the at least one second wireless signal includes an identification of at least one fourth wireless device that transmits the at least one second wireless signal.
[0463] It should be noted that operation 1401 is similar to operation 1101 , so operation 1401 may be understood by referring to the relevant description of operation 1101 .
[0464] At operation 1402 , the scanning device determines that its location is within a target area.
[0465] It should be noted that operation 1402 is similar to operation 1103 , so operation 1402 may be understood by referring to the relevant description of operation 1103 .
[0466] In operation 1403 , the scanning device sends a fourth request to the server. The fourth request carries an identifier of the second beacon corresponding to the target area and an identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0467] It should be noted that the correspondence between the target area and the identifier of the second beacon in operation 1403 can be understood with reference to the correspondence between the target area and the identifier of the second beacon in operation 1104 .
[0468] The fourth request instructs the server to update the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon.
[0469] Accordingly, the server receives a fourth request from the scanning device, the fourth request carrying the identifier of the second beacon and the identifier of at least one fifth wireless device corresponding to the identifier of the second beacon;
[0470] In operation 1404 , the server updates the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0471] It should be noted that operation 1404 is similar to operation 1203 , so operation 1404 may be understood by referring to the relevant description of operation 1203 .
[0472] Based on the above description, it can be seen that the embodiment of the present application mentions the first environment fingerprint, the second environment fingerprint, the third environment fingerprint and the fourth environment fingerprint. In order to facilitate the distinction, the following Figure 16 The relationship between the above-mentioned environmental fingerprints is explained.
[0473] First, the first environmental fingerprint is generated based on the identifier of the first wireless device in the process of determining the identifier of the first beacon; the second environmental fingerprint is included in the mapping relationship table, and the number is multiple; the third environmental fingerprint is generated based on the identifier of the fifth wireless device in the process of updating the mapping relationship table; the fourth environmental fingerprint is generated based on the third environmental fingerprint and the second environmental fingerprint (a second environmental fingerprint in the mapping relationship table that corresponds to the identifier of the same beacon as the third environmental fingerprint) and is used to update the second environmental fingerprint.
[0474] like Figure 16 As shown, in the process of determining the identifier of the first beacon, it is necessary to query a second environment fingerprint similar to the first environment fingerprint from the mapping relationship table containing multiple second environment fingerprints, and then use the identifier of the beacon corresponding to the similar second environment fingerprint as the identifier of the first beacon.
[0475] During the mapping table update process, it is necessary to determine a second environment fingerprint corresponding to the same beacon identifier as the third environment fingerprint from the mapping table, and then generate a fourth environment fingerprint based on the second environment fingerprint and the third environment fingerprint, and then use the fourth environment fingerprint to update (specifically, replace) the second environment fingerprint. Figure 17 , Figure 17 Schematic diagram of a first embodiment of a beacon sensing device in an embodiment of the present application; an embodiment of the present application also provides a first embodiment of a beacon sensing device, which includes:
[0476] The scanning unit 100 is configured to perform wireless signal scanning to obtain information about at least one first wireless signal, where the information about the at least one first wireless signal includes an identifier of at least one first wireless device that transmits the at least one first wireless signal;
[0477] The first determining unit 200 is configured to determine an identifier of a first beacon based on an identifier of at least one first wireless device, where the first beacon does not belong to the at least one first wireless device.
[0478] As an implementation manner, the first determining unit 200 is configured to generate a first environment fingerprint based on an identifier of at least one first wireless device, where the first environment fingerprint includes an identifier of at least one second wireless device, where the at least one second wireless device is part or all of the at least one first wireless device;
[0479] An identity of the first beacon is determined based on the first environmental fingerprint.
[0480] As an implementation method, the first determination unit 200 is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0481] As an implementation method, the mapping relationship table is obtained by the scanning device from the server.
[0482] As an implementation method, the first determining unit 200 is configured to determine a first similarity between a first environment fingerprint and a plurality of second environment fingerprints;
[0483] An identifier of a beacon corresponding to one of the plurality of second environment fingerprints is selected based on the first similarity as the identifier of the first beacon corresponding to the first environment fingerprint.
[0484] As an implementation method, the first determination unit 200 is used to calculate, for each second environment fingerprint among multiple second environment fingerprints, a first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0485] As an implementation method, the device further includes a first transceiver unit 300, which is configured to send a first request to the server, where the first request carries a first environment fingerprint;
[0486] The scanning device receives an identifier of a first beacon corresponding to a first environmental fingerprint from a server.
[0487] As an implementation method, the scanning unit 100 is further configured to perform wireless signal scanning to obtain information about the wireless signal transmitted by the second beacon and information about at least one second wireless signal, where the information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal;
[0488] The first determining unit 200 is further configured to generate a third environmental fingerprint corresponding to the identifier of the second beacon, the third environmental fingerprint including the identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device;
[0489] The first transceiver unit 300 is further configured to send a second request to the server based on the distance between the scanning device and the second beacon meeting the first condition, where the second request carries the identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon.
[0490] As an implementation method, the scanning unit 100 is further configured to perform wireless signal scanning to obtain information about at least one second wireless signal, where the information about the at least one second wireless signal includes an identification of at least one third wireless device that transmits the at least one second wireless signal;
[0491] The first determining unit 200 is further configured to generate a third environment fingerprint, the third environment fingerprint including an identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device;
[0492] The first determining unit 200 is further configured to determine that the location is within the target area;
[0493] The first transceiver unit 300 is further configured to send a second request to the server, where the second request carries an identifier of a second beacon corresponding to the target area and a third environment fingerprint corresponding to the identifier of the second beacon.
[0494] As an implementation manner, the information of the at least one first wireless signal further includes a signal strength and a scanning time of the at least one first wireless signal;
[0495] A first determining unit 200 is configured to calculate a first score of the at least one first wireless signal based on the signal strength and / or scanning time of the at least one first wireless signal;
[0496] selecting a first number of first wireless signals from the at least one first wireless signal based on a first score of the at least one first wireless signal;
[0497] A first environmental fingerprint is generated based on an identification of at least one first wireless device, wherein the at least one second wireless device is a first wireless device that transmits a first number of first wireless signals.
[0498] As an implementation method, the first transceiver unit 300 is further configured to send a third request to the server, where the third request carries an identifier of at least one first wireless device;
[0499] The first transceiver unit 300 is further configured to receive an identifier of a first beacon corresponding to an identifier of at least one first wireless device from a server.
[0500] As an implementation method, the scanning unit 100 is further configured to scan a wireless signal using a scanning device to obtain information about a wireless signal transmitted by a second beacon and information about at least one second wireless signal, wherein the information about the wireless signal transmitted by the second beacon includes an identifier of the second beacon, and the information about the at least one second wireless signal includes an identifier of at least one fourth wireless device that transmits the at least one second wireless signal;
[0501] The first transceiver unit 300 is further configured to send a fourth request to the server based on the distance between the scanning device and the second beacon satisfying the first condition, wherein the fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0502] As an implementation method, the scanning unit 100 is further configured to perform wireless signal scanning to obtain information of at least one second wireless signal, where the information of the at least one second wireless signal includes an identification of at least one fourth wireless device that transmits the at least one second wireless signal;
[0503] The first determining unit 200 is further configured to determine that the location is within the target area;
[0504] The first transceiver unit 300 is further configured to send a fourth request to the server, where the fourth request carries the identifier of the second beacon corresponding to the target area and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0505] As an implementation method, the scanning unit 100 is configured to, when the third condition is met, scan the wireless signal of the scanning device to obtain information of at least one first wireless signal;
[0506] The third condition includes at least one of the following conditions: the time interval between the scanning time of the third wireless signal in the scanning device and the current time is greater than the target time interval, the screen of the scanning device changes from the off state to the bright state, and the motion state of the scanning device changes.
[0507] As an implementation manner, the scanning unit 100 is further configured to periodically perform wireless signal scanning based on a target period to obtain information of at least one first wireless signal.
[0508] As an implementation method, the device also includes: a period adjustment unit 400, which is used to increase the duration of the target period when the second similarity between the first environmental fingerprint of the current target period and the first environmental fingerprint of the previous target period is greater than a threshold, the first environmental fingerprint of the current target period is generated based on the identifier of at least one first wireless device obtained by scanning the current target period, and the first environmental fingerprint of the previous target period is generated based on the identifier of at least one first wireless device obtained by scanning the previous target period.
[0509] As an implementation manner, the first beacon is a Bluetooth beacon, a Wireless Fidelity Wi-Fi beacon, an Ultra Wideband UWB beacon, a Near Field Communication NFC tag, or a QR code.
[0510] As an implementation manner, the at least one first wireless signal includes at least one of the following wireless signals: a Bluetooth signal, a Wi-Fi signal, and a UWB signal.
[0511] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the method part of the embodiment of this application.
[0512] See also Figure 18 , Figure 18 Schematic diagram of a second embodiment of a beacon sensing device in an embodiment of the present application; an embodiment of the present application further provides a second embodiment of a beacon sensing device, which includes:
[0513] The second transceiver unit 500 is configured to receive a first request from a scanning device, where the first request carries a first environment fingerprint, and the first environment fingerprint includes an identifier of at least one second wireless device;
[0514] The second determining unit 600 is configured to determine the identifier of the first beacon based on the first environmental fingerprint; the second transceiver unit 500 is further configured to send the identifier of the first beacon to the scanning device.
[0515] As an implementation method, the second determination unit 600 is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0516] As an implementation method, the second determining unit 600 is configured to calculate a first similarity between the first environment fingerprint and the plurality of second environment fingerprints;
[0517] An identifier of a beacon corresponding to one of the plurality of second environment fingerprints is selected based on the first similarity as the identifier of the first beacon corresponding to the first environment fingerprint.
[0518] As an implementation method, the second determination unit 600 is used to calculate the first similarity between the second environment fingerprint and the first environment fingerprint for each second environment fingerprint in multiple second environment fingerprints based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0519] As an implementation method, the second transceiver unit 500 is further configured to receive a second request from the scanning device, where the second request carries an identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon, where the third environment fingerprint includes an identifier of at least one fifth wireless device;
[0520] The apparatus further includes a first updating unit 700, configured to update the mapping relationship table based on the identifier of the second beacon and a third environment fingerprint corresponding to the identifier of the second beacon.
[0521] As an implementation method, one of the plurality of second environment fingerprints corresponds to an identifier of the second beacon;
[0522] The first updating unit 700 is configured to generate a fourth environment fingerprint corresponding to the identifier of the second beacon based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, so as to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0523] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0524] As an implementation method, the third environmental fingerprint further includes a signal strength corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of a wireless signal transmitted by the fifth wireless device;
[0525] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device;
[0526] The first updating unit 700 is configured to select a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on signal strengths corresponding to the identifiers.
[0527] As an implementation method, the third environment fingerprint further includes a scanning number corresponding to each identifier of at least one fifth wireless device, and the scanning number corresponding to the identifier of the fifth wireless device is the number of times a wireless signal transmitted by the fifth wireless device is scanned;
[0528] The second environment fingerprint corresponding to the identifier of the second beacon also includes the scanning number corresponding to each identifier of at least one third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned;
[0529] The first updating unit 700 is configured to select a second number of identifiers as second partial identifiers from the identifiers only included in the third environment fingerprint and the identifiers only included in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifiers.
[0530] As an implementation method, the third environment fingerprint also includes a signal strength and a scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned;
[0531] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scanning number corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned;
[0532] The first updating unit 700 is configured to calculate, based on the signal strength and the number of scans corresponding to the identifiers, a second score for each identifier that is included only in the third environmental fingerprint and a second score for each identifier that is included only in the second environmental fingerprint corresponding to the identifier of the second beacon; and select, based on the second scores corresponding to the identifiers, a second number of identifiers as the second part of identifiers from among the identifiers that are included only in the third environmental fingerprint and among the identifiers that are included only in the second environmental fingerprint corresponding to the identifier of the second beacon.
[0533] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the method part of the embodiment of this application.
[0534] See also Figure 19 , Figure 19 Schematic diagram of a third embodiment of a beacon sensing device in an embodiment of the present application; an embodiment of the present application further provides a third embodiment of a beacon sensing device, which includes:
[0535] The third transceiver unit 800 is configured to receive a third request from the scanning device, where the third request carries an identifier of at least one first wireless device;
[0536] A third determining unit 900 is configured to generate a first environmental fingerprint based on an identifier of at least one first wireless device, where the first environmental fingerprint includes an identifier of at least one second wireless device, where the at least one second wireless device is part or all of the at least one first wireless device;
[0537] determining an identification of a first beacon based on the first environmental fingerprint;
[0538] The third transceiver unit 800 is further configured to send the identifier of the first beacon to the scanning device.
[0539] As an implementation method, the third determination unit 900 is used to determine the identifier of the first beacon corresponding to the first environment fingerprint based on a mapping relationship table, the mapping relationship table includes multiple second environment fingerprints and the identifiers of the beacons corresponding to the multiple second environment fingerprints, each of the multiple second environment fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environment fingerprint is the identifier of the beacon corresponding to one of the multiple second environment fingerprints.
[0540] As an implementation method, the third determining unit 900 is configured to calculate a first similarity between the first environment fingerprint and the plurality of second environment fingerprints;
[0541] An identifier of a beacon corresponding to one of the plurality of second environment fingerprints is selected based on the first similarity as the identifier of the first beacon corresponding to the first environment fingerprint.
[0542] As an implementation method, the third determination unit 900 is used to calculate, for each second environment fingerprint among multiple second environment fingerprints, the first similarity between the second environment fingerprint and the first environment fingerprint based on the number of identical identifiers in the second environment fingerprint and the first environment fingerprint and the total number of identifiers in the second environment fingerprint and the first environment fingerprint.
[0543] As an implementation method, the apparatus further includes a second updating unit 1000;
[0544] The third transceiver unit 800 is further configured to receive a fourth request from the scanning device, where the fourth request carries the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon;
[0545] The second updating unit 1000 is configured to update the mapping relationship table based on the identifier of the second beacon and the identifier of at least one fourth wireless device corresponding to the identifier of the second beacon.
[0546] As an implementation method, one of the plurality of second environment fingerprints corresponds to an identifier of the second beacon;
[0547] The second updating unit 1000 is configured to generate a third environment fingerprint corresponding to the identifier of the second beacon, where the third environment fingerprint includes an identifier of at least one fifth wireless device, where the at least one fifth wireless device is part or all of the at least one fourth wireless device;
[0548] Based on the third environment fingerprint and the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table, a fourth environment fingerprint corresponding to the identifier of the second beacon is generated to update the second environment fingerprint corresponding to the identifier of the second beacon in the mapping relationship table.
[0549] As an implementation method, the fourth environment fingerprint includes a first part of the identifier and a second part of the identifier, the first part of the identifier is composed of an identifier included in the third environment fingerprint and included in the second environment fingerprint corresponding to the identifier of the second beacon, and the second part of the identifier is composed of an identifier only included in the third environment fingerprint and / or only included in the second environment fingerprint corresponding to the identifier of the second beacon.
[0550] As an implementation method, the third environmental fingerprint further includes a signal strength corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of a wireless signal transmitted by the fifth wireless device;
[0551] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device;
[0552] The second updating unit 1000 is configured to select a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on signal strengths corresponding to the identifiers.
[0553] As an implementation method, the third environment fingerprint further includes a scanning number corresponding to each identifier of at least one fifth wireless device, and the scanning number corresponding to the identifier of the fifth wireless device is the number of times a wireless signal transmitted by the fifth wireless device is scanned;
[0554] The second environment fingerprint corresponding to the identifier of the second beacon also includes the scanning number corresponding to each identifier of at least one third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned;
[0555] The second updating unit 1000 is configured to select a second number of identifiers as second partial identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the number of scans corresponding to the identifiers.
[0556] As an implementation method, the third environment fingerprint also includes a signal strength and a scan count corresponding to each identifier of at least one fifth wireless device, where the signal strength corresponding to the fifth wireless device is the strength of the wireless signal transmitted by the fifth wireless device, and the scan count corresponding to the identifier of the fifth wireless device is the number of times the wireless signal transmitted by the fifth wireless device is scanned;
[0557] The second environment fingerprint corresponding to the identifier of the second beacon also includes the signal strength and scanning number corresponding to each identifier of at least one third wireless device, where the signal strength corresponding to the identifier of the third wireless device is the strength of the wireless signal transmitted by the third wireless device, and the scanning number corresponding to the identifier of the third wireless device is the number of times the wireless signal transmitted by the third wireless device is scanned;
[0558] The second updating unit 1000 is configured to calculate, based on the signal strength and the number of scans corresponding to the identifiers, the second score of each identifier included only in the third environment fingerprint and the second score of each identifier included only in the second environment fingerprint corresponding to the identifier of the second beacon;
[0559] A second number of identifiers are selected as a second part of identifiers from identifiers included only in the third environment fingerprint and identifiers included only in the second environment fingerprint corresponding to the identifier of the second beacon based on the second scores corresponding to the identifiers.
[0560] For the specific implementation, relevant instructions and technical effects of the above units, please refer to the description of the method part of the embodiment of this application.
[0561] See also Figure 20 , the embodiment of the present application also provides an embodiment of a scanning device, such as Figure 20 For ease of explanation, only the parts related to the embodiments of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiments of the present application. The scanning device can be any terminal device including a mobile phone, a tablet computer, a personal digital assistant (PDA), a sales terminal (POS), an in-vehicle computer, etc., taking a mobile phone as an example:
[0562] Figure 20 The block diagram shows a portion of the structure of a mobile phone related to the scanning device provided in the embodiment of the present application. Figure 20The mobile phone includes: Radio Frequency (RF) circuit 1010, memory 1020, input unit 1030, display unit 1040, sensor 1050, audio circuit 1060, wireless fidelity (WiFi) module 1070, processor 1080, power supply and other components. Those skilled in the art will understand that Figure 20 The mobile phone structure shown in the figure does not constitute a limitation to the mobile phone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0563] The following combination Figure 20 A detailed introduction to the various components of a mobile phone:
[0564] RF circuitry 1010 can be used to receive and transmit signals during information transmission or calls. Specifically, it receives downlink information from the base station and transmits it to processor 1080 for processing. It also transmits uplink data to the base station. Typically, RF circuitry 1010 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low-noise amplifier (LNA), a duplexer, and more. RF circuitry 1010 can also communicate with the network and other devices via wireless communications. The above-mentioned wireless communications may use any communication standard or protocol, including but not limited to Global System of Mobile Communications (Global System of Mobile communication, English abbreviation: GSM), General Packet Radio Service (English full name: General Packet Radio Service, GPRS), Code Division Multiple Access (English full name: Code Division Multiple Access, English abbreviation: CDMA), Wideband Code Division Multiple Access (English full name: Wideband Code Division Multiple Access, English abbreviation: WCDMA), Long Term Evolution (English full name: Long Term Evolution, English abbreviation: LTE), email, Short Messaging Service (English full name: Short Messaging Service, SMS), etc.
[0565] The memory 1020 can be used to store software programs and modules. The processor 1080 executes the various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1020. The memory 1020 may mainly include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function (such as a sound playback function, an image playback function, etc.); the data storage area may store data created based on the use of the mobile phone (such as audio data, a phone book, etc.). In addition, the memory 1020 may include high-speed random access memory and may also include non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage device.
[0566] The input unit 1030 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the mobile phone. Specifically, the input unit 1030 may include a touch panel 1031 and other input devices 1032. The touch panel 1031, also known as a touch screen, can collect user touch operations on or near it (such as operations performed by the user using any suitable object or accessory such as a finger, stylus, etc. on or near the touch panel 1031) and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 1031 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch direction and detects the signal caused by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device and converts it into touch point coordinates, which are then sent to the processor 1080. It can also receive commands sent by the processor 1080 and execute them. In addition, the touch panel 1031 can be implemented using various types such as resistive, capacitive, infrared and surface acoustic wave. In addition to the touch panel 1031, the input unit 1030 may further include other input devices 1032. Specifically, the other input devices 1032 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick.
[0567] The display unit 1040 can be used to display information input by the user or information provided to the user and various menus of the mobile phone. The display unit 1040 may include a display panel 1041. Optionally, the display panel 1041 may be configured in the form of a liquid crystal display (English full name: Liquid Crystal Display, English abbreviation: LCD), an organic light-emitting diode (English full name: Organic Light-Emitting Diode, English abbreviation: OLED), etc. Further, the touch panel 1031 may cover the display panel 1041. When the touch panel 1031 detects a touch operation on or near it, it is transmitted to the CPU 1080 to determine the type of touch event. Then the processor 1080 provides corresponding visual output on the display panel 1041 according to the type of touch event. Although in Figure 20 In the embodiment, the touch panel 1031 and the display panel 1041 are used as two independent components to realize the input and output functions of the mobile phone, but in some embodiments, the touch panel 1031 and the display panel 1041 can be integrated to realize the input and output functions of the mobile phone.
[0568] The mobile phone may also include at least one sensor 1050, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 1041 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 1041 and / or the backlight when the mobile phone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for other sensors that the mobile phone can also be configured with, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be described here.
[0569] Audio circuit 1060, speaker 1061, and microphone 1062 provide an audio interface between the user and the phone. Audio circuit 1060 converts received audio data into electrical signals and transmits them to speaker 1061, which then converts them into sound signals for output. Microphone 1062, on the other hand, converts collected sound signals into electrical signals, which are then received by audio circuit 1060 and converted into audio data. The audio data is then processed by processor 1080 and transmitted to, for example, another phone via RF circuit 1010, or stored in memory 1020 for further processing.
[0570] WiFi is a short-range wireless transmission technology. The mobile phone can help users send and receive emails, browse the web and access streaming media through the WiFi module 1070. It provides users with wireless broadband Internet access. Figure 20 A WiFi module 1070 is shown, but it is understandable that it is not an essential component of the mobile phone and can be omitted as needed without changing the essence of the invention.
[0571] The processor 1080 is the control center of the phone, connecting all parts of the phone using various interfaces and circuits. By running or executing software programs and / or modules stored in the memory 1020 and accessing data stored in the memory 1020, it performs various phone functions and processes data, thereby providing overall monitoring of the phone. Optionally, the CPU 1080 may include one or more processing units; preferably, the processor 1080 may integrate an application processor and a modem processor, wherein the application processor primarily handles the operating system, user interface, and application programs, while the modem processor primarily handles wireless communications. It is understood that the modem processor may not be integrated into the CPU 1080.
[0572] The mobile phone also includes a power source (such as a battery) for supplying power to various components. Preferably, the power source can be logically connected to the processor 1080 through a power management system, so that the power management system can manage charging, discharging, and power consumption.
[0573] Although not shown, the mobile phone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.
[0574] In the embodiment of the present application, the processor 1080 included in the terminal is configured to:
[0575] Performing wireless signal scanning to obtain information of at least one first wireless signal, where the information of the at least one first wireless signal includes an identification of at least one first wireless device that transmits the at least one first wireless signal;
[0576] An identification of a first beacon is determined based on an identification of at least one first wireless device, the first beacon not belonging to the at least one first wireless device.
[0577] The present application also provides an embodiment of a server, see Figure 21 , Figure 21 This is a schematic diagram of a server structure provided by an embodiment of the present application. The server 1800 can be deployed with Figure 18 or Figure 19 The beacon sensing device described in the corresponding embodiment is used to implement Figure 18 or Figure 19The functions of the beacon-sensing device described in the corresponding embodiments are, specifically, that the server 1800 is implemented by one or more servers. The server 1800 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 1822 (for example, one or more processors) and memory 1832, one or more storage media 1830 (for example, one or more mass storage devices) for storing applications 1842 or data 1844.
[0578] Memory 1832 and storage medium 1830 may be either transient or persistent storage. The program stored in storage medium 1830 may include one or more modules (not shown), each of which may include a series of instructions for operating on the server. Furthermore, central processing unit 1822 may be configured to communicate with storage medium 1830 and execute the series of instructions in storage medium 1830 on server 1800.
[0579] The server 1800 may also include one or more power supplies 1826, one or more wired or wireless network interfaces 1850, one or more input and output interfaces 1858, and / or one or more operating systems 1841, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, etc.
[0580] In the embodiment of the present application, the central processing unit 1822 is used to execute Figure 18 or Figure 19 The image processing method performed by the beacon-sensing device described in the corresponding embodiment.
[0581] Specifically, the central processing unit 1822 can be used to:
[0582] During the forward propagation process, a binarization function is used to binarize the target weight to obtain a weight of a first neural network layer in the neural network, where the first neural network layer is a neural network layer in the neural network;
[0583] During the back propagation process, the gradient of the loss function with respect to the target weight is calculated using the gradient of the fitting function as the gradient of the binarization function, and the fitting function is determined based on the series expansion of the binarization function.
[0584] The CPU 1822 can also be used to:
[0585] The server receives a first request from a scanning device, where the first request carries a first environment fingerprint, and the first environment fingerprint includes an identifier of at least one second wireless device;
[0586] determining an identification of a first beacon based on the first environmental fingerprint;
[0587] An identification of the first beacon is sent to a scanning device.
[0588] The CPU 1822 can also be used to:
[0589] receiving a third request from the scanning device, where the third request carries an identifier of at least one first wireless device;
[0590] generating a first environmental fingerprint based on an identification of at least one first wireless device, wherein the first environmental fingerprint includes an identification of at least one second wireless device, where the at least one second wireless device is part or all of the at least one first wireless device;
[0591] determining an identification of a first beacon based on the first environmental fingerprint;
[0592] An identification of the first beacon is sent to a scanning device.
[0593] The present application also provides a chip including one or more processors, wherein some or all of the processors are configured to read and execute a computer program stored in a memory to perform the methods of the aforementioned embodiments.
[0594] Optionally, the chip includes a memory, and the memory is connected to the processor via a circuit or wire. Further optionally, the chip also includes a communication interface, and the processor is connected to the communication interface. The communication interface is used to receive data and / or information to be processed, and the processor obtains the data and / or information from the communication interface, processes the data and / or information, and outputs the processing results through the communication interface. The communication interface can be an input / output interface.
[0595] In some implementations, some of the one or more processors may implement some steps of the above method through dedicated hardware. For example, processing involving a neural network model may be implemented by a dedicated neural network processor or graphics processor.
[0596] The method provided in the embodiment of the present application can be implemented by one chip or by multiple chips working together.
[0597] An embodiment of the present application further provides a computer storage medium for storing computer software instructions used by the above-mentioned computer device, including a program designed for executing the computer device.
[0598] The computer device can be as described above Figure 17 、 Figure 18 or Figure 19 Described beacon-aware device.
[0599] An embodiment of the present application further provides a computer program product, which includes computer software instructions. The computer software instructions can be loaded by a processor to implement the processes in the methods shown in the aforementioned embodiments.
[0600] See also Figure 22 , an embodiment of the present application also provides an embodiment of a beacon sensing system, which includes a scanning device 2000 and a server 3000.
[0601] Scanning device 2000 is used to perform Figure 18 The beacon sensing device shown;
[0602] Server 3000 is used to execute Figure 19 or Figure 20 The beacon sensing device shown.
[0603] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0604] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0605] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0606] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0607] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
Claims
1. A beacon sensing method, characterized in that: include: The scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, where the information of the at least one first wireless signal includes an identifier of at least one first wireless device that transmits the at least one first wireless signal, and the identifier of the at least one first wireless device is used to sense the first beacon when the wireless signal of the first beacon cannot be scanned; The scanning device determines an identification of a first beacon based on the identification of the at least one first wireless device, the first beacon not belonging to the at least one first wireless device.
2. The method according to claim 1, characterized in that Determining, by the scanning device, the identifier of the first beacon based on the identifier of the at least one first wireless device includes: The scanning device generates a first environment fingerprint based on the identification of the at least one first wireless device, wherein the first environment fingerprint includes the identification of at least one second wireless device, and the at least one second wireless device is part or all of the at least one first wireless device; The scanning device determines an identity of a first beacon based on the first environmental fingerprint.
3. The method according to claim 2, characterized in that The scanning device determining the identifier of the first beacon based on the first environmental fingerprint includes: The scanning device determines the identifier of the first beacon corresponding to the first environmental fingerprint based on a mapping relationship table, where the mapping relationship table includes multiple second environmental fingerprints and identifiers of beacons corresponding to each of the multiple second environmental fingerprints, each of the multiple second environmental fingerprints includes an identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environmental fingerprint is the identifier of the beacon corresponding to one of the multiple second environmental fingerprints.
4. The method according to claim 3, characterized in that The mapping relationship table is obtained by the scanning device from the server.
5. The method according to claim 4, characterized in that The scanning device determining, based on the mapping relationship table, an identifier of a first beacon corresponding to the first environmental fingerprint includes: The scanning device calculates a first similarity between the first environment fingerprint and the plurality of second environment fingerprints; The scanning device selects, based on the first similarity, an identifier of a beacon corresponding to one of the plurality of second environmental fingerprints as an identifier of a first beacon corresponding to the first environmental fingerprint.
6. The method according to claim 5, characterized in that Calculating, by the scanning device, a first similarity between the first environment fingerprint and the plurality of second environment fingerprints includes: For each second environmental fingerprint of the plurality of second environmental fingerprints, the scanning device calculates a first similarity between the second environmental fingerprint and the first environmental fingerprint based on a number of identical identifiers in the second environmental fingerprint and the first environmental fingerprint and a total number of identifiers in the second environmental fingerprint and the first environmental fingerprint.
7. The method according to claim 2, characterized in that The scanning device determining the identifier of the first beacon based on the first environmental fingerprint includes: The scanning device sends a first request to the server, where the first request carries the first environment fingerprint; The scanning device receives an identifier of a first beacon corresponding to the first environmental fingerprint from the server.
8. The method according to claim 1, characterized in that Determining, by the scanning device, the identifier of the first beacon based on the identifier of the at least one first wireless device includes: The scanning device sends a third request to the server, where the third request carries the identifier of the at least one first wireless device; The scanning device receives an identification of a first beacon corresponding to an identification of the at least one first wireless device from the server.
9. The method according to any one of claims 2 to 8, characterized in that The scanning device performs wireless signal scanning to obtain information of at least one first wireless signal, including: The scanning device periodically performs wireless signal scanning based on a target period to obtain information of at least one first wireless signal; When the second similarity between the first environmental fingerprint of the current target cycle and the first environmental fingerprint of the previous target cycle is greater than a threshold, the duration of the target cycle is increased, the first environmental fingerprint of the current target cycle is generated based on the identifier of the at least one first wireless device obtained by scanning the current target cycle, and the first environmental fingerprint of the previous target cycle is generated based on the identifier of the at least one first wireless device obtained by scanning the previous target cycle.
10. The method according to any one of claims 1 to 8, characterized in that The first beacon is a Bluetooth beacon, a Wireless Fidelity (Wi-Fi) beacon, an Ultra Wideband (UWB) beacon, or a Near Field Communication (NFC) tag.
11. The method according to any one of claims 1 to 8, characterized in that The at least one first wireless signal includes at least one of the following wireless signals: a Bluetooth signal, a Wi-Fi signal, and a UWB signal.
12. A beacon sensing method, characterized in that: include: The server receives a first request from a scanning device, where the first request carries a first environment fingerprint, and the first environment fingerprint includes an identifier of at least one second wireless device, where the identifier of the at least one second wireless device is used by the scanning device to sense the first beacon when the scanning device cannot scan a wireless signal of the first beacon; The server determines an identifier of a first beacon based on the first environmental fingerprint; The server sends the identifier of the first beacon to the scanning device.
13. The method according to claim 12, characterized in that The server determining the identifier of the first beacon based on the first environment fingerprint includes: The server determines the identifier of the first beacon corresponding to the first environmental fingerprint based on a mapping relationship table, where the mapping relationship table includes multiple second environmental fingerprints and the identifiers of the beacons corresponding to each of the multiple second environmental fingerprints, each of the multiple second environmental fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environmental fingerprint is the identifier of the beacon corresponding to one of the multiple second environmental fingerprints.
14. The method according to claim 13, characterized in that The server determining, based on the mapping relationship table, an identifier of the first beacon corresponding to the first environment fingerprint includes: The server calculates a first similarity between the first environment fingerprint and the plurality of second environment fingerprints; The server selects, based on the first similarity, an identifier of a beacon corresponding to one of the plurality of second environmental fingerprints as an identifier of a first beacon corresponding to the first environmental fingerprint.
15. The method according to claim 14, characterized in that The server calculating the first similarity between the first environment fingerprint and the plurality of second environment fingerprints includes: For each second environmental fingerprint of the multiple second environmental fingerprints, the server calculates a first similarity between the second environmental fingerprint and the first environmental fingerprint based on the number of identical identifiers in the second environmental fingerprint and the first environmental fingerprint and the total number of identifiers in the second environmental fingerprint and the first environmental fingerprint.
16. The method according to any one of claims 12 to 15, characterized in that The first beacon is a Bluetooth beacon, a Wireless Fidelity (Wi-Fi) beacon, an Ultra Wideband (UWB) beacon, or a Near Field Communication (NFC) tag.
17. A beacon sensing method, characterized in that: include: The server receives a third request from the scanning device, where the third request carries an identifier of at least one first wireless device; The server generates a first environment fingerprint based on the identifier of the at least one first wireless device, where the first environment fingerprint includes the identifier of at least one second wireless device, where the at least one second wireless device is part or all of the at least one first wireless device, and the identifier of the at least one first wireless device is used by the scanning device to sense the first beacon when the scanning device cannot scan the wireless signal of the first beacon; The server determines an identifier of a first beacon based on the first environmental fingerprint; The server sends the identifier of the first beacon to the scanning device.
18. The method according to claim 17, characterized in that The server determining the identifier of the first beacon based on the first environment fingerprint includes: The server determines the identifier of the first beacon corresponding to the first environmental fingerprint based on a mapping relationship table, where the mapping relationship table includes multiple second environmental fingerprints and the identifiers of the beacons corresponding to each of the multiple second environmental fingerprints, each of the multiple second environmental fingerprints includes the identifier of at least one third wireless device, and the identifier of the first beacon corresponding to the first environmental fingerprint is the identifier of the beacon corresponding to one of the multiple second environmental fingerprints.
19. The method according to claim 18, characterized in that The server determining, based on the mapping relationship table, an identifier of the first beacon corresponding to the first environment fingerprint includes: The server calculates a first similarity between the first environment fingerprint and the plurality of second environment fingerprints; The server selects, based on the first similarity, an identifier of a beacon corresponding to one of the plurality of second environmental fingerprints as an identifier of a first beacon corresponding to the first environmental fingerprint.
20. The method according to claim 19, wherein The server calculating the first similarity between the first environment fingerprint and the plurality of second environment fingerprints includes: For each second environmental fingerprint of the multiple second environmental fingerprints, the server calculates a first similarity between the second environmental fingerprint and the first environmental fingerprint based on the number of identical identifiers in the second environmental fingerprint and the first environmental fingerprint and the total number of identifiers in the second environmental fingerprint and the first environmental fingerprint.
21. The method according to any one of claims 17 to 20, characterized in that The first beacon is a Bluetooth beacon, a Wireless Fidelity (Wi-Fi) beacon, an Ultra Wideband (UWB) beacon, or a Near Field Communication (NFC) tag.
22. A beacon sensing device, characterized in that: include: a scanning unit, configured to perform wireless signal scanning to obtain information of at least one first wireless signal, wherein the information of the at least one first wireless signal includes an identifier of at least one first wireless device that transmits the at least one first wireless signal, and the identifier of the at least one first wireless device is used to sense the first beacon when the wireless signal of the first beacon cannot be scanned; The first determining unit is configured to determine an identifier of a first beacon based on an identifier of the at least one first wireless device, where the first beacon does not belong to the at least one first wireless device.
23. A beacon sensing device, characterized in that: include: a transceiver unit, configured to receive a first request from a scanning device, wherein the first request carries a first environment fingerprint, the first environment fingerprint including an identifier of at least one second wireless device, the identifier of the at least one second wireless device being used by the scanning device to sense the first beacon when the scanning device is unable to scan the wireless signal of the first beacon; a second determining unit, configured to determine an identifier of a first beacon based on the first environmental fingerprint; The transceiver unit is further configured to send the identifier of the first beacon to the scanning device.
24. A beacon sensing device, characterized in that: include: a transceiver unit, configured to receive a third request from a scanning device, wherein the third request carries an identifier of at least one first wireless device; a generating unit, configured to generate a first environmental fingerprint based on the identifier of the at least one first wireless device, the first environmental fingerprint including the identifier of at least one second wireless device, the at least one second wireless device being part or all of the at least one first wireless device, the identifier of the at least one first wireless device being used by the scanning device to perceive the first beacon when the scanning device is unable to scan the wireless signal of the first beacon; a third determining unit, configured to determine an identifier of a first beacon based on the first environmental fingerprint; The transceiver unit is further configured to send the identifier of the first beacon to the scanning device.
25. A scanning device, characterized in that: include: One or more processors and memory; wherein, The memory stores computer-readable instructions; The one or more processors are configured to read the computer-readable instructions to cause the scanning device to implement the method according to any one of claims 1 to 11.
26. A server, characterized in that: include: One or more processors and memory; wherein, The memory stores computer-readable instructions; The one or more processors are configured to read the computer-readable instructions to cause the server to implement the method according to any one of claims 12 to 21.
27. A computer-readable storage medium, characterized in that The method comprises computer-readable instructions, which, when executed on a computer, cause the computer to perform the method according to any one of claims 1 to 21.
28. A computer program product, characterized in that When the computer program product is run on a computer, the computer is caused to perform the method according to any one of claims 1 to 21.
29. A beacon sensing system, characterized in that: This includes scanning devices and servers; The scanning device is used to perform the method according to any one of claims 1 to 11; The server is configured to execute the method according to any one of claims 12 to 21.
Citation Information
Patent Citations
Bluetooth beacon device, wireless LAN terminal authentication access system and wireless LAN terminal authentication access method
CN105530589A
A method and equipment for connecting hidden wireless access point
CN110113747A