US20180063690A1 - Detection of nearby points of interest - Google Patents
Detection of nearby points of interest Download PDFInfo
- Publication number
- US20180063690A1 US20180063690A1 US15/249,200 US201615249200A US2018063690A1 US 20180063690 A1 US20180063690 A1 US 20180063690A1 US 201615249200 A US201615249200 A US 201615249200A US 2018063690 A1 US2018063690 A1 US 2018063690A1
- Authority
- US
- United States
- Prior art keywords
- electronic device
- interest
- data
- points
- wireless access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H04W4/008—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
Definitions
- This disclosure relates in general to the field of communications and, more particularly, to the detection of nearby points of interest.
- a point of interest is coupled to or associated with a computer network.
- a computer network sometimes referred to as a data network, can include a telecommunications network that allows computers to exchange data.
- Some computer networks include one or more wireless networks.
- a wireless network is any type of computer network that uses one or more wireless data connections for connecting network nodes, elements, or devices.
- WLAN wireless local area network
- a wireless local area network links two or more devices over a relatively short distance using a wireless distribution method, usually providing a connection through an access point for Internet access.
- a device To be able to communicate over a wireless network, a device must first be connected to an access point.
- the access point can be associated with one or more points of interest.
- FIG. 1 is a simplified block diagram of a communication system for the detection of nearby points of interest in accordance with one embodiment of the present disclosure
- FIG. 2 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment
- FIG. 3 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment
- FIG. 4 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment
- FIG. 5 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment.
- a method in one example and includes a communication system configured to allow for the detection of nearby points of interest.
- an area can include points of interest and one or more wireless access points. Based on wireless signals from the wireless access points that are visible to an electronic device, an approximate distance between one or more points of interest and the electronic device can be determined.
- a method in one example and includes receiving, at an electronic device, data related to one or more wireless access points visible to the electronic device, communicating the data related to one or more wireless access points to a network element, and receiving an approximate distance to one or more points of interest from the electronic device.
- the data can include a unique identifier and a signal strength of each wireless access point visible to the electronic device.
- the wireless access points visible to the electronic device are associated with one or more points of interest.
- the data is communicated to a distance engine located in a network element such as a cloud network or a server.
- the communicated data can be compared with previously received data from other electronic devices to determine the approximate distance to each of the one or more points of interest from the electronic device.
- a root mean square algorithm is used to determine the approximate distance to each of the one or more point of interest from the electronic device.
- at least one of the one or more points of interest is a telepresence conference center.
- FIG. 1 is a simplified block diagram of a communication system 100 for the detection of nearby points of interest in accordance with one embodiment of the present disclosure.
- Communication system 100 can include one or more electronic devices 102 a and 102 b , a cloud network 104 , a server 106 , one or more points of interest 108 a - 108 d , and one or more wireless access points 110 a - 110 e .
- Each electronic device 102 a and 102 b can include a wireless module 114 .
- each point of interest 108 a - 108 d has a known static physical location.
- Wireless module 114 can be configured to detect wireless signals from wireless access points 110 a - 110 e .
- wireless access points 110 a - 110 e are each WiFi access points.
- Cloud network 104 and server 106 can each include a distance engine 116 and memory 118 .
- Memory 118 can include a point of interest table 120 .
- Each electronic device 102 a and 102 b can be in communication with one or more wireless access points 110 a - 110 e using wireless module 114 .
- Each wireless access point 110 a - 110 e can be in communication with cloud network 104 and server 106 using a network 112 .
- each electronic device 102 a and 102 b can be in communication with cloud network 104 and server 106 using network 112 .
- Communication system 100 can be configured to automatically identify wireless access points (e.g., wireless access points 110 a - 110 e ) that are nearby or proximate to an electronic device (e.g., electronic device 102 a ) using data related to the wireless access points identified by or visible to the electronic device. More specifically, a distance engine in a network element can determine an approximate distance between the electronic device and a point of interest using the data related to the wireless access points visible to the electronic device. The approximate distance can be automatically sent to the electronic device and communed to a user.
- the term “automatically” can include instances where a user does not need to perform a specific action to cause an event or process to occur.
- the electronic device does not need a user to perform searches, taps, clicks, keystrokes, etc. to determine nearby points of interest.
- a user can be able to determine which point of interest are nearby.
- the information can be acquired without requiring the user to enter the point of interest, explicitly enable wireless (e.g., WiFi, Bluetooth, etc.) pairing, and without needing to manually search for the points of interest.
- each point of interest 108 a - 108 d may be a telepresence meeting room, a point of sale (POS) terminal, a learning terminal such as at a museum, a gather or meeting point at a festival, concert, or other gathering or event, or some other physical location connected to a network that may be of interest to a user.
- POS point of sale
- learning terminal such as at a museum, a gather or meeting point at a festival, concert, or other gathering or event, or some other physical location connected to a network that may be of interest to a user.
- the user When a user wants to interact or locate a point of interest, typically the user must use a map to locate the desired point of interest. For example, if a user needs to attend a telepresence conference in a specific telepresence room, the user must use a building map or ask a person for directions to locate the specific telepresence room. Also, if a user is at a conference, festive, museum, etc. and wants to visit a specific booth, attraction, or gather place, the user must use a map of the floor space or ask for directions to locate the booth, attraction, or gather place.
- the point of interest may be associated with a computer network that includes one or more wireless networks that provides a connection through an access point. It would be beneficial if a system and method could help the user locate the point of interest using one or more wireless access points.
- Communication system 100 may be configured gather information related to wireless access points visible to an electronic device and use the data to help determine when the electronic device is near a specific point of interest. More specifically, communication system 100 can be configured to identify wireless access points (e.g., wireless access points 110 a - 110 e ) that are associated with a point of interest (e.g. point of interest 108 a - 108 d ) and automatically determine when an electronic device (e.g., electronic device 102 a ) is nearby or proximate to the points of interest.
- wireless access points e.g., wireless access points 110 a - 110 e
- a point of interest e.g. point of interest 108 a - 108 d
- the system and method can include two phases.
- an electronic device e.g., electronic device 102 a
- a wireless access point e.g., wireless access point 110 a
- a point of interest e.g., point of interest 108 b
- data regarding the pairing can be communicated to a distance engine (e.g., distance engine 116 ).
- An electronic device can pair with a point of interest when the electronic device or a user of the electronic device interacts with the point of interest.
- the electronic device or user may activate a function or feature associated with the point of interest or the electronic may connect (e.g., a physical connection or wireless connection) with the point of interest.
- Data related to other wireless access points (e.g., wireless access points 110 a - 110 e ) visible to the electronic device can also be communicated to the distance engine.
- Some of the data communicated can include a unique identifier (e.g., media access control (MAC) address (e.g., BSSID), unique network identification, etc.) of each wireless access point visible to the electronic device, the signal strength of each wireless access point visible to the electronic device, and the unique identifier of the point of interest that the electronic device has paired with.
- MAC media access control
- BSSID unique network identification
- other data may be communicated to a distance engine (e.g., distance engine 116 ) to help the system determine the approximate distance between points of interests and the electronic device.
- the distance engine can aggregate the data with previously received data and build a point of interest table (e.g., point of interest table 120 ) that can map a relationship between points of interest and visible signals from wireless access points.
- a point of interest table e.g., point of interest table 120
- each point of interest table entry can include a mean wireless signal strength of all the electronic devices that were aware of the wireless access point, a max signal strength, a minimum signal strength, standard deviation of signal strengths, number of electronic devices that reported the access point when engaged with the point of interest, etc.
- communication system 100 can be configured to determine a location of one or more points of interests relative to an electronic device.
- an electronic device can acquire data (e.g., signal strength, MAC address, etc.) related to each wireless access point visible to the electronic device.
- the electronic device can communicate the data to the distance engine and using the data related to each visible wireless access point, the distance engine can determine points of interest that are nearby the electronic device and/or an approximate distance between the electronic device and points of interest.
- the distance engine can use the data related to each access point visible to the electronic device and calculate a root mean square distance between the electronic device and one or more points of interest and communicate a list of nearby points of interest to the electronic device.
- the list of the points of interest can be ordered by those likely to be closest to the electronic device.
- distance engine 116 has acquired the following data from prior coupling of electronic devices with a specific point of interest (e.g., point of interest 108 a ): point of interest 108 a : ⁇ // wireless access point 110 a is closest, wireless access point 110 e farther away, wireless access point 110 d weakest; wireless access point 110 a ⁇ Max: ⁇ 50 db, Mean: ⁇ 65 dB,Min: ⁇ 75 db, std Deviation: 3.0, Count: 4 ⁇ ; wireless access point 110 b ⁇ Max: ⁇ 70 db, Mean: ⁇ 75 dB,Min: ⁇ 80 db, std deviation: 3.0, Count: 3 ⁇ ; wireless access point 110 c ⁇ Max: ⁇ 80 db, Mean: ⁇ 85 dB,Min: ⁇ 90 db, std Deviation: 3.0, Count: 2 ⁇ . ⁇ , etc.
- distance engine 116 can calculate an approximate distance between electronic device 102 a and a point of interest by squaring the difference between the signal strength of each wireless access point visible to electronic device 102 a and the mean signal strength of each wireless access point visible to electronic device 102 a , summing the differences, and calculating the square root of the result and dividing that by the number of signals.
- Applying an example algorithm to the above example gives an approximate distance from point of interest 108 b of (sqrt((65 ⁇ 65) ⁇ 2+(75 ⁇ 70) ⁇ 2+(80 ⁇ 85) ⁇ 2))/3.
- the determined approximate distance can vary with the layout of the wireless access points and the above example is only provided for illustration purposes.
- Distance engine 116 can be configured to determine one or more thresholds related to the detection of nearby points of interest. For example, distance engine 116 can determine a threshold related to each point of interest as it accumulates data from each successful pairing between a point of interest and an electronic device. If the amount of data related to a point of interest and an access point is low compared with the overall data for that point of interest and other access points, then the access point results are not included in the calculation of the approximate distance. Likewise, if the standard deviation at a point of interest and an access point pair is large, then the access point is not included in the calculation of the approximate distance from that point of interest.
- distance engine 116 can be configured to determine distance thresholds and count thresholds. These, and other thresholds, can be used by distance engine to help ensure the use of data that has a relatively high level of confidence associated with the data. More specifically, if a specific wireless access point is present in fifty percent (50%) or less of the sets of data submitted after successful pairs for a point of interest, then the count threshold can be determined to have dropped below a threshold where the data related to the wireless access point is considered reliable. In such an example, the data may not be considered in distance calculations for that point of interest. However, the data for the wireless access point may still be collected.
- distance thresholds can be used by distance engine to help ensure the use of data that has a relatively high level of confidence associated with the data. More specifically, if a specific wireless access point is present in fifty percent (50%) or less of the sets of data submitted after successful pairs for a point of interest, then the count threshold can be determined to have dropped below a threshold where the data related to the wireless access point is considered reliable. In such an example, the data may not
- the 50% count threshold is for example purposes only and the threshold count can be configurable based on the environment, number or wireless access points visible around or near the point of interest, and other factors. For example, if there are a lot of access points associated with a point of interest, then the threshold may be as high as ninety percent (90%) or even ninety-five percent (95%) as there will likely be several wireless access points visible where one hundred percent (100%) of the time data related to the point of interest is submitted.
- the threshold can be a number that is compare to the standard deviation.
- distance engine 116 may have recorded several signals for wireless access point 110 a from various electronic devices 102 a , 102 b when they successfully interact with point of interest 108 a .
- the average of the values may be ⁇ 65 and the standard deviation of the values may be 3.
- the majority of the submitted signal strength readings are in the range of ⁇ 62 to ⁇ 68 which is stable enough to have good confidence in the point of interest and WiFi access point pair. If the standard deviation was, for example, 10 then the majority of the values would be in the range ⁇ 55 to ⁇ 75 which is far less precise than the previous example, and readings from the WiFi access points for that point of interest would be treated as less confident or could be ignored entirely. If the standard deviation is greater than the predetermined threshold, the wireless access point is not included in distance calculations for that point of interest.
- the threshold may be configurable based on environment. Data can still be collected and if the variance decreases or if the threshold value is met (e.g., standard deviation is below or above a predetermined number such as 5) then data from the access point may be used in future calculations for that point of interest.
- the system needs to recalibrate data associated with the point of interest or access point that moved.
- the system can detect such a move when distance engine 116 receives pairing data inconsistent with its stored data. In this case, the system must clear its stored data for that point of interest or access point that moved.
- communication system 100 can be configured to record the wireless signal strengths received by devices that pair or interact with a point of interest at a known static location, use this information to build the location of the point of interest in terms of the points of interest approximate distance from wireless access points, and use this information to determine when an electronic device is near a point of interest.
- the above examples are only illustrative examples and other means or methods may be used to detect points of interest near an electronic device.
- Network 112 represents a series of points or nodes of interconnected communication paths for receiving and transmitting packets of information that propagate through communication system 100 .
- Network 112 offers a communicative interface between nodes, and may be configured as any local area network (LAN), virtual local area network (VLAN), wide area network (WAN), wireless local area network (WLAN), metropolitan area network (MAN), Intranet, Extranet, virtual private network (VPN), and any other appropriate architecture or system that facilitates communications in a network environment, or any suitable combination thereof, including wired and/or wireless communication.
- Network 112 can include any number of hardware or software elements coupled to (and in communication with) each other through a communications medium.
- network traffic which is inclusive of packets, frames, signals, data, etc.
- Suitable communication messaging protocols can include a multi-layered scheme such as Open Systems Interconnection (OSI) model, or any derivations or variants thereof (e.g., Transmission Control Protocol/Internet Protocol (TCP/IP), user datagram protocol/IP (UDP/IP)).
- OSI Open Systems Interconnection
- radio signal communications over a cellular network may also be provided in communication systems 100 .
- Suitable interfaces and infrastructure may be provided to enable communication with the cellular network.
- packet refers to a unit of data that can be routed between a source node and a destination node on a packet switched network.
- a packet includes a source network address and a destination network address. These network addresses can be Internet Protocol (IP) addresses in a TCP/IP messaging protocol.
- IP Internet Protocol
- data refers to any type of binary, numeric, voice, video, textual, or script data, or any type of source or object code, or any other suitable information in any appropriate format that may be communicated from one point to another in electronic devices and/or networks. Additionally, messages, requests, responses, and queries are forms of network traffic, and therefore, may comprise packets, frames, signals, data, etc.
- cloud network 104 server 106 , points of interest 108 a - 108 d , and wireless access points 110 a - 110 e , are meant to encompass network appliances, servers, routers, switches, gateways, bridges, load balancers, processors, modules, or any other suitable device, component, element, or object operable to exchange information in a network environment.
- Network elements may include any suitable hardware, software, components, modules, or objects that facilitate the operations thereof, as well as suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective exchange of data or information.
- network element is meant to encompass any of the aforementioned elements, as well as servers (physical or virtually implemented on physical hardware), machines (physical or virtually implemented on physical hardware), end-user devices, routers, switches, cable boxes, gateways, bridges, load-balancers, firewalls, inline service nodes, proxies, processors, modules, or any other suitable device, component, element, proprietary appliance, or object operable to exchange, receive, and transmit information in a network environment.
- These network elements may include any suitable hardware, software, components, modules, interfaces, or objects that facilitate the synonymous labels operations thereof. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective exchange of data or information.
- network elements implementing the detection of nearby points of interest in a network environment features described herein may include software to achieve (or to foster) the functions discussed herein for providing and processing when the software is executed on one or more processors to carry out the functions. This could include the implementation of instances of modules (e.g., distance engine 116 ) and/or any other suitable element that would foster the activities discussed herein. Additionally, each of these elements can have an internal structure (e.g., a processor, a memory element, etc.) to facilitate some of the operations described herein. In other embodiments, these functions for the detection of nearby points of interest may be executed externally to these elements, or included in some other network element to achieve the intended functionality.
- network elements may include software (or reciprocating software) that can coordinate with other network elements in order to achieve the detection of nearby points of interest functions described herein.
- one or several devices may include any suitable algorithms, hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof.
- electronic devices 102 a - 102 b , cloud network 104 , server 106 , points of interest 108 a - 108 d , and wireless access points 110 a - 110 e can each include memory elements for storing information to be used in the operations outlined herein.
- Each of electronic devices 102 a - 102 b , cloud network 104 , server 106 , points of interest 108 a - 108 d , and wireless access points 110 a - 110 e may keep information in any suitable memory element (e.g., random access memory (RAM), read-only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), application specific integrated circuit (ASIC), etc.), software, hardware, firmware, or in any other suitable component, device, element, or object where appropriate and based on particular needs.
- RAM random access memory
- ROM read-only memory
- EPROM erasable programmable ROM
- EEPROM electrically erasable programmable ROM
- ASIC application specific integrated circuit
- any of the memory items discussed herein should be construed as being encompassed within the broad term ‘memory element.’
- the information being used, tracked, sent, or received in communication system 100 could be provided in any database, register, queue, table, cache, control list, or other storage structure, all of which can be referenced at any suitable timeframe. Any such storage options may also be included within the broad term ‘memory element’ as used herein.
- the detection of nearby points of interest functions outlined herein may be implemented by logic encoded in one or more tangible media (e.g., embedded logic provided in an ASIC, digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.), which may be inclusive of non-transitory computer-readable media.
- memory elements can store data used for the operations described herein. This includes the memory elements being able to store software, logic, code, or processor instructions that are executed to carry out the activities described herein. In some of these instances, one or more memory elements can store data used for the operations described herein.
- the processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification.
- the processor could transform an element or an article (e.g., data) from one state or thing to another state or thing.
- the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by the processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable ROM (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
- FPGA field programmable gate array
- EPROM erasable programmable read only memory
- EEPROM electrically erasable programmable ROM
- any of these elements can include memory elements for storing information to be used in achieving the detection of nearby points of interest functions, as outlined herein.
- each of these devices may include a processor that can execute software or an algorithm to perform the detection of nearby points of interest as discussed in this Specification.
- These devices may further keep information in any suitable memory element (random access memory (RAM), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs.
- RAM random access memory
- ROM read only memory
- EPROM Erasable programmable read-only memory
- EEPROM electrically erasable programmable read-only memory
- ASIC application specific integrated circuitry
- any of the memory items discussed herein should be construed as being encompassed within the broad term ‘memory element.’
- any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term ‘processor.’
- Each of the network elements can also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment.
- network elements of communication system 100 may include software modules (e.g., wireless module 114 , distance engine 116 , etc.) to achieve, or to foster, operations as outlined herein.
- modules may be suitably combined in any appropriate manner, which may be based on particular configuration and/or provisioning needs. In example embodiments, such operations may be carried out by hardware, implemented externally to these elements, or included in some other network device to achieve the intended functionality.
- the modules can be implemented as software, hardware, firmware, or any suitable combination thereof.
- These elements may also include software (or reciprocating software) that can coordinate with other network elements in order to achieve the operations, as outlined herein.
- electronic devices 102 a - 102 b , cloud network 104 , server 106 , points of interest 108 a - 108 d , and wireless access points 110 a - 110 e each may include a processor that can execute software or an algorithm to perform activities as discussed herein.
- a processor can execute any type of instructions associated with the data to achieve the operations detailed herein.
- the processors could transform an element or an article (e.g., data) from one state or thing to another state or thing.
- the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an EPROM, an EEPROM) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
- programmable logic e.g., a field programmable gate array (FPGA), an EPROM, an EEPROM
- FPGA field programmable gate array
- EPROM programmable read-only memory
- EEPROM electrically erasable programmable read-only memory
- ASIC application specific integrated circuitry
- Cloud network 104 may generally be defined as the use of computing resources that are delivered as a service over a network, such as the Internet.
- the services may be distributed and separated to provide required support for electronic devices.
- compute, storage, and network resources are offered in a cloud infrastructure, effectively shifting the workload from a local network to the cloud network.
- Server 106 can be a network element such as a physical server or virtual server and can be associated with clients, customers, endpoints, or end users wishing to initiate a communication in communication system 100 via some network (e.g., network 112 ).
- the term ‘server’ is inclusive of devices used to serve the requests of clients and/or perform some computational task on behalf of clients within communication systems 100 .
- FIG. 2 is an example flowchart illustrating possible operations of a flow 200 that may be associated with the detection of nearby points of interest, in accordance with an embodiment.
- one or more operations of flow 200 may be performed by wireless module 114 and/or distance engine 116 .
- data related to one or more wireless access points visible to an electronic device is determined.
- the electronic device pairs or interacts with a point of interest at a known location.
- a distance between the electronic device and each point of interest associated with each of the one or more wireless access point visible to the electronic device is determined.
- the data related to the one or more wireless access points visible to an electronic device can be used by a distance engine (e.g., distance engine 116 ) to determine a distance between the point of interest and other electronic devices that can detect the one or more wireless access points.
- a distance engine e.g., distance engine 116
- FIG. 3 is an example flowchart illustrating possible operations of a flow 300 that may be associated with the detection of nearby points of interest, in accordance with an embodiment.
- one or more operations of flow 300 may be performed by wireless module 114 and/or distance engine 116 .
- identification of one or more wireless access points visible to an electronic device are determined.
- a signal strength for the one or more wireless access points visible to the electronic device is determined.
- the electronic device interacts with a point of interest.
- the identification and signal strength of the one or more access points visible to the electronic device and an identifier identifying the point of interest the electronic device interacted with are sent to a network element.
- a second electronic device e.g., electronic device 102 b
- a distance engine e.g., distance engine 116
- FIG. 4 is an example flowchart illustrating possible operations of a flow 400 that may be associated with the detection of nearby points of interest, in accordance with an embodiment.
- one or more operations of flow 400 may be performed by wireless module 114 and/or distance engine 116 .
- identification and signal strength of one or more wireless access points visible to an electronic device are determined.
- the identification and signal strength of the one or more wireless access points are communicated to a network element.
- the network element may be distance engine 116 .
- an approximate distance to one or more points of interest is received by the electronic device from the network element.
- distance engine 116 may determine an approximate distance to one or more points of interest from electronic device 102 a and communicate the approximate distance to electronic device 102 a.
- FIG. 5 is an example flowchart illustrating possible operations of a flow 500 that may be associated with the detection of nearby points of interest, in accordance with an embodiment.
- one or more operations of flow 500 may be performed by wireless module 114 and/or distance engine 116 .
- identification and signal strength of one or more wireless access points visible to an electronic device are determined.
- the identification and signal strength of the one or more wireless access points are communicated to a network element.
- the system determines if the electronic device is within a predetermined distance to a point of interest.
- the electronic devices is not within a predetermined distance to a point of interest (e.g., a threshold distance such as 50 feet, meters, or some other distance unit, 40 feet, meters, or some other distance unit, 35 feet, meters, or some other distance unit, 25 feet, meters, or some other distance unit, etc.), then identification and signal strength of one or more wireless access points visible to an electronic device are again determined, as in 502 .
- the distance may not be a spatial distance measured in distance units.
- the distance can be related to the difference in received signal to noise ratio of all relevant access points between an electronic device's current position and those same signal to noise ratios of the same access points that are visible near know points of interests. If the electronic device is within a predetermined distance to a point of interest, then an approximate distance to the point of interest is received by the electronic device from the network element, as in 508 .
- the detection of nearby points of interest functions outlined herein may be implemented in logic encoded in one or more non-transitory media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or another similar machine, etc.).
- a memory element can store data used for the operations described herein. This includes the memory element being able to store code (e.g., software, logic, processor instructions, etc.) that can be executed to carry out the activities described in this Specification.
- a processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification.
- the processor could transform an element or an article (e.g., data) from one state or thing to another state or thing.
- the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable ROM (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
- FPGA field programmable gate array
- EPROM erasable programmable read only memory
- EEPROM electrically erasable programmable ROM
- communication system 100 and its teachings are readily scalable and can accommodate a large number of components, as well as more complicated/sophisticated arrangements and configurations. Accordingly, the examples provided should not limit the scope or inhibit the broad teachings of communication system 100 as potentially applied to a myriad of other architectures.
- the operations illustrate only some of the possible correlating scenarios and patterns that may be executed by, or within, communication system 100 . Some of these operations may be deleted or removed where appropriate, or these operations may be modified or changed considerably without departing from the scope of the present disclosure. In addition, a number of these operations have been described as being executed concurrently with, or in parallel to, one or more additional operations. However, the timing of these operations may be altered considerably. The preceding operational flows have been offered for purposes of example and discussion. Substantial flexibility is provided by communication system 100 in that any suitable arrangements, chronologies, configurations, and timing mechanisms may be provided without departing from the teachings of the present disclosure.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
Description
- This disclosure relates in general to the field of communications and, more particularly, to the detection of nearby points of interest.
- Often, a point of interest is coupled to or associated with a computer network. A computer network, sometimes referred to as a data network, can include a telecommunications network that allows computers to exchange data. Some computer networks include one or more wireless networks. A wireless network is any type of computer network that uses one or more wireless data connections for connecting network nodes, elements, or devices. For example, a wireless local area network (WLAN) links two or more devices over a relatively short distance using a wireless distribution method, usually providing a connection through an access point for Internet access. To be able to communicate over a wireless network, a device must first be connected to an access point. In some instances, the access point can be associated with one or more points of interest.
- To provide a more complete understanding of the present disclosure and features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying figures, wherein like reference numerals represent like parts, in which:
-
FIG. 1 is a simplified block diagram of a communication system for the detection of nearby points of interest in accordance with one embodiment of the present disclosure; -
FIG. 2 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment; -
FIG. 3 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment; -
FIG. 4 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment; and -
FIG. 5 is a simplified flowchart illustrating potential operations that may be associated with the communication system in accordance with an embodiment. - The FIGURES of the drawings are not necessarily drawn to scale, as their dimensions can be varied considerably without departing from the scope of the present disclosure.
- A method is provided in one example and includes a communication system configured to allow for the detection of nearby points of interest. In an illustrative example, an area can include points of interest and one or more wireless access points. Based on wireless signals from the wireless access points that are visible to an electronic device, an approximate distance between one or more points of interest and the electronic device can be determined.
- In an implementation, a method is provided in one example and includes receiving, at an electronic device, data related to one or more wireless access points visible to the electronic device, communicating the data related to one or more wireless access points to a network element, and receiving an approximate distance to one or more points of interest from the electronic device. The data can include a unique identifier and a signal strength of each wireless access point visible to the electronic device. In some examples, the wireless access points visible to the electronic device are associated with one or more points of interest.
- In an example, the data is communicated to a distance engine located in a network element such as a cloud network or a server. The communicated data can be compared with previously received data from other electronic devices to determine the approximate distance to each of the one or more points of interest from the electronic device. In one example, a root mean square algorithm is used to determine the approximate distance to each of the one or more point of interest from the electronic device. In a specific example, at least one of the one or more points of interest is a telepresence conference center.
- Turning to
FIG. 1 ,FIG. 1 is a simplified block diagram of acommunication system 100 for the detection of nearby points of interest in accordance with one embodiment of the present disclosure.Communication system 100 can include one or moreelectronic devices cloud network 104, aserver 106, one or more points of interest 108 a-108 d, and one or more wireless access points 110 a-110 e. Eachelectronic device wireless module 114. In an example, each point of interest 108 a-108 d has a known static physical location.Wireless module 114 can be configured to detect wireless signals from wireless access points 110 a-110 e. In an example, wireless access points 110 a-110 e are each WiFi access points. Cloudnetwork 104 andserver 106 can each include adistance engine 116 andmemory 118.Memory 118 can include a point of interest table 120. Eachelectronic device wireless module 114. Each wireless access point 110 a-110 e can be in communication withcloud network 104 andserver 106 using anetwork 112. In an example, eachelectronic device cloud network 104 andserver 106 usingnetwork 112. -
Communication system 100 can be configured to automatically identify wireless access points (e.g., wireless access points 110 a-110 e) that are nearby or proximate to an electronic device (e.g.,electronic device 102 a) using data related to the wireless access points identified by or visible to the electronic device. More specifically, a distance engine in a network element can determine an approximate distance between the electronic device and a point of interest using the data related to the wireless access points visible to the electronic device. The approximate distance can be automatically sent to the electronic device and communed to a user. The term “automatically” can include instances where a user does not need to perform a specific action to cause an event or process to occur. For example, the electronic device does not need a user to perform searches, taps, clicks, keystrokes, etc. to determine nearby points of interest. As an example, in a building with a numbers of points of interest (e.g., points of interest 108 a-108 d), a user can be able to determine which point of interest are nearby. The information can be acquired without requiring the user to enter the point of interest, explicitly enable wireless (e.g., WiFi, Bluetooth, etc.) pairing, and without needing to manually search for the points of interest. In an example, each point of interest 108 a-108 d may be a telepresence meeting room, a point of sale (POS) terminal, a learning terminal such as at a museum, a gather or meeting point at a festival, concert, or other gathering or event, or some other physical location connected to a network that may be of interest to a user. - For purposes of illustrating certain example techniques of
communication system 100, it is important to understand how typical communications may traverse the network. The following foundational information may be viewed as a basis from which the present disclosure may be properly explained. - When a user wants to interact or locate a point of interest, typically the user must use a map to locate the desired point of interest. For example, if a user needs to attend a telepresence conference in a specific telepresence room, the user must use a building map or ask a person for directions to locate the specific telepresence room. Also, if a user is at a conference, festive, museum, etc. and wants to visit a specific booth, attraction, or gather place, the user must use a map of the floor space or ask for directions to locate the booth, attraction, or gather place. Sometimes, the point of interest may be associated with a computer network that includes one or more wireless networks that provides a connection through an access point. It would be beneficial if a system and method could help the user locate the point of interest using one or more wireless access points.
- A communication system, as outlined in
FIG. 1 , can resolve these issues (and others).Communication system 100 may be configured gather information related to wireless access points visible to an electronic device and use the data to help determine when the electronic device is near a specific point of interest. More specifically,communication system 100 can be configured to identify wireless access points (e.g., wireless access points 110 a-110 e) that are associated with a point of interest (e.g. point of interest 108 a-108 d) and automatically determine when an electronic device (e.g.,electronic device 102 a) is nearby or proximate to the points of interest. - In a specific example, the system and method can include two phases. In the first phase, when an electronic device (e.g.,
electronic device 102 a) pairs with a wireless access point (e.g.,wireless access point 110 a) associated with a point of interest (e.g., point ofinterest 108 b) data regarding the pairing can be communicated to a distance engine (e.g., distance engine 116). An electronic device can pair with a point of interest when the electronic device or a user of the electronic device interacts with the point of interest. For example, the electronic device or user may activate a function or feature associated with the point of interest or the electronic may connect (e.g., a physical connection or wireless connection) with the point of interest. - Data related to other wireless access points (e.g., wireless access points 110 a-110 e) visible to the electronic device can also be communicated to the distance engine. Some of the data communicated can include a unique identifier (e.g., media access control (MAC) address (e.g., BSSID), unique network identification, etc.) of each wireless access point visible to the electronic device, the signal strength of each wireless access point visible to the electronic device, and the unique identifier of the point of interest that the electronic device has paired with. In other examples, other data may be communicated to a distance engine (e.g., distance engine 116) to help the system determine the approximate distance between points of interests and the electronic device. In some examples, there is no attempt or need to store information about the actual electronic device. The distance engine can aggregate the data with previously received data and build a point of interest table (e.g., point of interest table 120) that can map a relationship between points of interest and visible signals from wireless access points. For example, each point of interest table entry can include a mean wireless signal strength of all the electronic devices that were aware of the wireless access point, a max signal strength, a minimum signal strength, standard deviation of signal strengths, number of electronic devices that reported the access point when engaged with the point of interest, etc. Using this data,
communication system 100 can be configured to determine a location of one or more points of interests relative to an electronic device. - In a second phase, an electronic device can acquire data (e.g., signal strength, MAC address, etc.) related to each wireless access point visible to the electronic device. The electronic device can communicate the data to the distance engine and using the data related to each visible wireless access point, the distance engine can determine points of interest that are nearby the electronic device and/or an approximate distance between the electronic device and points of interest. In a specific example, the distance engine can use the data related to each access point visible to the electronic device and calculate a root mean square distance between the electronic device and one or more points of interest and communicate a list of nearby points of interest to the electronic device. In an example, the list of the points of interest can be ordered by those likely to be closest to the electronic device.
- In a specific example,
distance engine 116 has acquired the following data from prior coupling of electronic devices with a specific point of interest (e.g., point ofinterest 108 a): point ofinterest 108 a: {//wireless access point 110 a is closest,wireless access point 110 e farther away,wireless access point 110 d weakest;wireless access point 110 a {Max: −50 db, Mean: −65 dB,Min: −75 db, std Deviation: 3.0, Count: 4};wireless access point 110 b {Max: −70 db, Mean: −75 dB,Min: −80 db, std deviation: 3.0, Count: 3};wireless access point 110 c {Max: −80 db, Mean: −85 dB,Min: −90 db, std Deviation: 3.0, Count: 2}.}, etc. Whenelectronic device 102 a collects data related to the signal strength of each wireless access point visible toelectronic device 102 a and communicates thedata distance engine 116, the data may include:wireless access point 110 a: signal strength=−65,wireless access point 110 b: signal strength=−70,wireless access point 110 c: signal strength=−80,wireless access point 110 d: signal; strength=−55. If data forwireless access point 110 e was received, the data may be ignored ifdistance engine 116 does not have an entry related towireless access point 110 e for point ofinterest 108 a. - Using the above data,
distance engine 116 can calculate an approximate distance betweenelectronic device 102 a and a point of interest by squaring the difference between the signal strength of each wireless access point visible toelectronic device 102 a and the mean signal strength of each wireless access point visible toelectronic device 102 a, summing the differences, and calculating the square root of the result and dividing that by the number of signals. Applying an example algorithm to the above example, gives an approximate distance from point ofinterest 108 b of (sqrt((65−65)̂2+(75−70)̂2+(80−85)̂2))/3. In this example, an approximate distance of <=5 is calculated meaning thatelectronic device 102 a is very close to point ofinterest 108 b. The determined approximate distance can vary with the layout of the wireless access points and the above example is only provided for illustration purposes. -
Distance engine 116 can be configured to determine one or more thresholds related to the detection of nearby points of interest. For example,distance engine 116 can determine a threshold related to each point of interest as it accumulates data from each successful pairing between a point of interest and an electronic device. If the amount of data related to a point of interest and an access point is low compared with the overall data for that point of interest and other access points, then the access point results are not included in the calculation of the approximate distance. Likewise, if the standard deviation at a point of interest and an access point pair is large, then the access point is not included in the calculation of the approximate distance from that point of interest. - In an example,
distance engine 116 can be configured to determine distance thresholds and count thresholds. These, and other thresholds, can be used by distance engine to help ensure the use of data that has a relatively high level of confidence associated with the data. More specifically, if a specific wireless access point is present in fifty percent (50%) or less of the sets of data submitted after successful pairs for a point of interest, then the count threshold can be determined to have dropped below a threshold where the data related to the wireless access point is considered reliable. In such an example, the data may not be considered in distance calculations for that point of interest. However, the data for the wireless access point may still be collected. It should be noted that the 50% count threshold is for example purposes only and the threshold count can be configurable based on the environment, number or wireless access points visible around or near the point of interest, and other factors. For example, if there are a lot of access points associated with a point of interest, then the threshold may be as high as ninety percent (90%) or even ninety-five percent (95%) as there will likely be several wireless access points visible where one hundred percent (100%) of the time data related to the point of interest is submitted. - Similarly, if the signal strength of a specific wireless access point has a large variance for the point of interest (in an example, the variance can be recorded as the standard deviation of that signal), then it may not be considered very reliable either and may not be considered in distance calculations for the point of interest. In this example, the threshold can be a number that is compare to the standard deviation. For example,
distance engine 116 may have recorded several signals forwireless access point 110 a from variouselectronic devices interest 108 a. The average of the values may be −65 and the standard deviation of the values may be 3. This indicates that the majority of the submitted signal strength readings are in the range of −62 to −68 which is stable enough to have good confidence in the point of interest and WiFi access point pair. If the standard deviation was, for example, 10 then the majority of the values would be in the range −55 to −75 which is far less precise than the previous example, and readings from the WiFi access points for that point of interest would be treated as less confident or could be ignored entirely. If the standard deviation is greater than the predetermined threshold, the wireless access point is not included in distance calculations for that point of interest. The threshold may be configurable based on environment. Data can still be collected and if the variance decreases or if the threshold value is met (e.g., standard deviation is below or above a predetermined number such as 5) then data from the access point may be used in future calculations for that point of interest. - If a point of interest or an access point moves, the system needs to recalibrate data associated with the point of interest or access point that moved. The system can detect such a move when
distance engine 116 receives pairing data inconsistent with its stored data. In this case, the system must clear its stored data for that point of interest or access point that moved. - Using the above example,
communication system 100 can be configured to record the wireless signal strengths received by devices that pair or interact with a point of interest at a known static location, use this information to build the location of the point of interest in terms of the points of interest approximate distance from wireless access points, and use this information to determine when an electronic device is near a point of interest. The above examples are only illustrative examples and other means or methods may be used to detect points of interest near an electronic device. - Turning to the infrastructure of
FIG. 1 ,communication system 100 in accordance with an example embodiment is shown. Generally,communication system 100 can be implemented in any type or topology of networks.Network 112 represents a series of points or nodes of interconnected communication paths for receiving and transmitting packets of information that propagate throughcommunication system 100.Network 112 offers a communicative interface between nodes, and may be configured as any local area network (LAN), virtual local area network (VLAN), wide area network (WAN), wireless local area network (WLAN), metropolitan area network (MAN), Intranet, Extranet, virtual private network (VPN), and any other appropriate architecture or system that facilitates communications in a network environment, or any suitable combination thereof, including wired and/or wireless communication.Network 112 can include any number of hardware or software elements coupled to (and in communication with) each other through a communications medium. - In
communication system 100, network traffic, which is inclusive of packets, frames, signals, data, etc., can be sent and received according to any suitable communication messaging protocols. Suitable communication messaging protocols can include a multi-layered scheme such as Open Systems Interconnection (OSI) model, or any derivations or variants thereof (e.g., Transmission Control Protocol/Internet Protocol (TCP/IP), user datagram protocol/IP (UDP/IP)). Additionally, radio signal communications over a cellular network may also be provided incommunication systems 100. Suitable interfaces and infrastructure may be provided to enable communication with the cellular network. - The term “packet” as used herein, refers to a unit of data that can be routed between a source node and a destination node on a packet switched network. A packet includes a source network address and a destination network address. These network addresses can be Internet Protocol (IP) addresses in a TCP/IP messaging protocol. The term “data” as used herein, refers to any type of binary, numeric, voice, video, textual, or script data, or any type of source or object code, or any other suitable information in any appropriate format that may be communicated from one point to another in electronic devices and/or networks. Additionally, messages, requests, responses, and queries are forms of network traffic, and therefore, may comprise packets, frames, signals, data, etc.
- In an example implementation,
cloud network 104,server 106, points of interest 108 a-108 d, and wireless access points 110 a-110 e, are meant to encompass network appliances, servers, routers, switches, gateways, bridges, load balancers, processors, modules, or any other suitable device, component, element, or object operable to exchange information in a network environment. Network elements may include any suitable hardware, software, components, modules, or objects that facilitate the operations thereof, as well as suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective exchange of data or information. - As used herein in this Specification, the term ‘network element’ is meant to encompass any of the aforementioned elements, as well as servers (physical or virtually implemented on physical hardware), machines (physical or virtually implemented on physical hardware), end-user devices, routers, switches, cable boxes, gateways, bridges, load-balancers, firewalls, inline service nodes, proxies, processors, modules, or any other suitable device, component, element, proprietary appliance, or object operable to exchange, receive, and transmit information in a network environment. These network elements may include any suitable hardware, software, components, modules, interfaces, or objects that facilitate the synonymous labels operations thereof. This may be inclusive of appropriate algorithms and communication protocols that allow for the effective exchange of data or information.
- In one implementation, network elements implementing the detection of nearby points of interest in a network environment features described herein may include software to achieve (or to foster) the functions discussed herein for providing and processing when the software is executed on one or more processors to carry out the functions. This could include the implementation of instances of modules (e.g., distance engine 116) and/or any other suitable element that would foster the activities discussed herein. Additionally, each of these elements can have an internal structure (e.g., a processor, a memory element, etc.) to facilitate some of the operations described herein. In other embodiments, these functions for the detection of nearby points of interest may be executed externally to these elements, or included in some other network element to achieve the intended functionality. Alternatively, network elements may include software (or reciprocating software) that can coordinate with other network elements in order to achieve the detection of nearby points of interest functions described herein. In still other embodiments, one or several devices may include any suitable algorithms, hardware, software, components, modules, interfaces, or objects that facilitate the operations thereof.
- In regards to the internal structure associated with
communication system 100, electronic devices 102 a-102 b,cloud network 104,server 106, points of interest 108 a-108 d, and wireless access points 110 a-110 e can each include memory elements for storing information to be used in the operations outlined herein. Each of electronic devices 102 a-102 b,cloud network 104,server 106, points of interest 108 a-108 d, and wireless access points 110 a-110 e may keep information in any suitable memory element (e.g., random access memory (RAM), read-only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), application specific integrated circuit (ASIC), etc.), software, hardware, firmware, or in any other suitable component, device, element, or object where appropriate and based on particular needs. Any of the memory items discussed herein should be construed as being encompassed within the broad term ‘memory element.’ Moreover, the information being used, tracked, sent, or received incommunication system 100 could be provided in any database, register, queue, table, cache, control list, or other storage structure, all of which can be referenced at any suitable timeframe. Any such storage options may also be included within the broad term ‘memory element’ as used herein. - In certain example implementations, the detection of nearby points of interest functions outlined herein may be implemented by logic encoded in one or more tangible media (e.g., embedded logic provided in an ASIC, digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.), which may be inclusive of non-transitory computer-readable media. In some of these instances, memory elements can store data used for the operations described herein. This includes the memory elements being able to store software, logic, code, or processor instructions that are executed to carry out the activities described herein. In some of these instances, one or more memory elements can store data used for the operations described herein. This includes the memory element being able to store instructions (e.g., software, code, etc.) that are executed to carry out the activities described in this Specification. The processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification. In one example, the processor could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by the processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable ROM (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
- Any of these elements (e.g., the network elements, etc.) can include memory elements for storing information to be used in achieving the detection of nearby points of interest functions, as outlined herein. Additionally, each of these devices may include a processor that can execute software or an algorithm to perform the detection of nearby points of interest as discussed in this Specification. These devices may further keep information in any suitable memory element (random access memory (RAM), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs. Any of the memory items discussed herein should be construed as being encompassed within the broad term ‘memory element.’ Similarly, any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term ‘processor.’ Each of the network elements can also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment.
- In an example implementation, network elements of
communication system 100 may include software modules (e.g.,wireless module 114,distance engine 116, etc.) to achieve, or to foster, operations as outlined herein. These modules may be suitably combined in any appropriate manner, which may be based on particular configuration and/or provisioning needs. In example embodiments, such operations may be carried out by hardware, implemented externally to these elements, or included in some other network device to achieve the intended functionality. Furthermore, the modules can be implemented as software, hardware, firmware, or any suitable combination thereof. These elements may also include software (or reciprocating software) that can coordinate with other network elements in order to achieve the operations, as outlined herein. - Additionally, electronic devices 102 a-102 b,
cloud network 104,server 106, points of interest 108 a-108 d, and wireless access points 110 a-110 e each may include a processor that can execute software or an algorithm to perform activities as discussed herein. A processor can execute any type of instructions associated with the data to achieve the operations detailed herein. In one example, the processors could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an EPROM, an EEPROM) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof. Any of the potential processing elements, modules, and machines described herein should be construed as being encompassed within the broad term ‘processor.’ -
Cloud network 104 may generally be defined as the use of computing resources that are delivered as a service over a network, such as the Internet. The services may be distributed and separated to provide required support for electronic devices. Typically, compute, storage, and network resources are offered in a cloud infrastructure, effectively shifting the workload from a local network to the cloud network.Server 106 can be a network element such as a physical server or virtual server and can be associated with clients, customers, endpoints, or end users wishing to initiate a communication incommunication system 100 via some network (e.g., network 112). The term ‘server’ is inclusive of devices used to serve the requests of clients and/or perform some computational task on behalf of clients withincommunication systems 100. - Turning to
FIG. 2 ,FIG. 2 is an example flowchart illustrating possible operations of aflow 200 that may be associated with the detection of nearby points of interest, in accordance with an embodiment. In an embodiment, one or more operations offlow 200 may be performed bywireless module 114 and/ordistance engine 116. At 202, data related to one or more wireless access points visible to an electronic device is determined. At 204, the electronic device pairs or interacts with a point of interest at a known location. At 206, based on the known location of the point of interest and the data related to one or more access points, a distance between the electronic device and each point of interest associated with each of the one or more wireless access point visible to the electronic device is determined. In an example, the data related to the one or more wireless access points visible to an electronic device can be used by a distance engine (e.g., distance engine 116) to determine a distance between the point of interest and other electronic devices that can detect the one or more wireless access points. - Turning to
FIG. 3 ,FIG. 3 is an example flowchart illustrating possible operations of aflow 300 that may be associated with the detection of nearby points of interest, in accordance with an embodiment. In an embodiment, one or more operations offlow 300 may be performed bywireless module 114 and/ordistance engine 116. At 302, identification of one or more wireless access points visible to an electronic device are determined. At 304, a signal strength for the one or more wireless access points visible to the electronic device is determined. At 306, the electronic device interacts with a point of interest. At 308, the identification and signal strength of the one or more access points visible to the electronic device and an identifier identifying the point of interest the electronic device interacted with are sent to a network element. Based on the known location of the point of interest, a second electronic device (e.g.,electronic device 102 b) can determine the identification and signal strength of the one or more access points visible to the second electronic device and the data can be used by a distance engine (e.g., distance engine 116) to determine an approximate distance between the second electronic device and the point of interest. - Turning to
FIG. 4 ,FIG. 4 is an example flowchart illustrating possible operations of aflow 400 that may be associated with the detection of nearby points of interest, in accordance with an embodiment. In an embodiment, one or more operations offlow 400 may be performed bywireless module 114 and/ordistance engine 116. At 402, identification and signal strength of one or more wireless access points visible to an electronic device are determined. At 404, the identification and signal strength of the one or more wireless access points are communicated to a network element. For example, the network element may bedistance engine 116. At 406, an approximate distance to one or more points of interest is received by the electronic device from the network element. For example,distance engine 116 may determine an approximate distance to one or more points of interest fromelectronic device 102 a and communicate the approximate distance toelectronic device 102 a. - Turning to
FIG. 5 ,FIG. 5 is an example flowchart illustrating possible operations of aflow 500 that may be associated with the detection of nearby points of interest, in accordance with an embodiment. In an embodiment, one or more operations offlow 500 may be performed bywireless module 114 and/ordistance engine 116. At 502, identification and signal strength of one or more wireless access points visible to an electronic device are determined. At 504, the identification and signal strength of the one or more wireless access points are communicated to a network element. At 506, the system determines if the electronic device is within a predetermined distance to a point of interest. If the electronic devices is not within a predetermined distance to a point of interest (e.g., a threshold distance such as 50 feet, meters, or some other distance unit, 40 feet, meters, or some other distance unit, 35 feet, meters, or some other distance unit, 25 feet, meters, or some other distance unit, etc.), then identification and signal strength of one or more wireless access points visible to an electronic device are again determined, as in 502. In an example, the distance may not be a spatial distance measured in distance units. For example, the distance can be related to the difference in received signal to noise ratio of all relevant access points between an electronic device's current position and those same signal to noise ratios of the same access points that are visible near know points of interests. If the electronic device is within a predetermined distance to a point of interest, then an approximate distance to the point of interest is received by the electronic device from the network element, as in 508. - Note that in certain example implementations, the detection of nearby points of interest functions outlined herein may be implemented in logic encoded in one or more non-transitory media (e.g., embedded logic provided in an application specific integrated circuit (ASIC), digital signal processor (DSP) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or another similar machine, etc.). In some of these instances, a memory element can store data used for the operations described herein. This includes the memory element being able to store code (e.g., software, logic, processor instructions, etc.) that can be executed to carry out the activities described in this Specification. A processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification. In one example, the processor could transform an element or an article (e.g., data) from one state or thing to another state or thing. In another example, the activities outlined herein may be implemented with fixed logic or programmable logic (e.g., software/computer instructions executed by a processor) and the elements identified herein could be some type of a programmable processor, programmable digital logic (e.g., a field programmable gate array (FPGA), an erasable programmable read only memory (EPROM), an electrically erasable programmable ROM (EEPROM)) or an ASIC that includes digital logic, software, code, electronic instructions, or any suitable combination thereof.
- Note that with the examples provided herein, interaction may be described in terms of two, three, or more network elements. However, this has been done for purposes of clarity and example only. In certain cases, it may be easier to describe one or more of the functionalities of a given set of flows by only referencing a limited number of network elements. It should be appreciated that
communication system 100 and its teachings are readily scalable and can accommodate a large number of components, as well as more complicated/sophisticated arrangements and configurations. Accordingly, the examples provided should not limit the scope or inhibit the broad teachings ofcommunication system 100 as potentially applied to a myriad of other architectures. - It is also important to note that the operations illustrate only some of the possible correlating scenarios and patterns that may be executed by, or within,
communication system 100. Some of these operations may be deleted or removed where appropriate, or these operations may be modified or changed considerably without departing from the scope of the present disclosure. In addition, a number of these operations have been described as being executed concurrently with, or in parallel to, one or more additional operations. However, the timing of these operations may be altered considerably. The preceding operational flows have been offered for purposes of example and discussion. Substantial flexibility is provided bycommunication system 100 in that any suitable arrangements, chronologies, configurations, and timing mechanisms may be provided without departing from the teachings of the present disclosure. - Although the present disclosure has been described in detail with reference to particular arrangements and configurations, these example configurations and arrangements may be changed significantly without departing from the scope of the present disclosure. Moreover, certain components may be combined, separated, eliminated, or added based on particular needs and implementations. Additionally, although
communication system 100 has been illustrated with reference to particular elements and operations that facilitate the communication process, these elements and operations may be replaced by any suitable architecture, protocols, and/or processes that achieve the intended functionality ofcommunication system 100. - Numerous other changes, substitutions, variations, alterations, and modifications may be ascertained to one skilled in the art and it is intended that the present disclosure encompass all such changes, substitutions, variations, alterations, and modifications as falling within the scope of the appended claims. In order to assist the United States Patent and Trademark Office (USPTO) and, additionally, any readers of any patent issued on this application in interpreting the claims appended hereto, Applicant wishes to note that the Applicant: (a) does not intend any of the appended claims to invoke paragraph six (6) of 35 U.S.C.
section 112 as it exists on the date of the filing hereof unless the words “means for” or “step for” are specifically used in the particular claims; and (b) does not intend, by any statement in the specification, to limit this disclosure in any way that is not otherwise reflected in the appended claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/249,200 US9906939B1 (en) | 2016-08-26 | 2016-08-26 | Detection of nearby points of interest |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/249,200 US9906939B1 (en) | 2016-08-26 | 2016-08-26 | Detection of nearby points of interest |
Publications (2)
Publication Number | Publication Date |
---|---|
US9906939B1 US9906939B1 (en) | 2018-02-27 |
US20180063690A1 true US20180063690A1 (en) | 2018-03-01 |
Family
ID=61225911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/249,200 Active US9906939B1 (en) | 2016-08-26 | 2016-08-26 | Detection of nearby points of interest |
Country Status (1)
Country | Link |
---|---|
US (1) | US9906939B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115243199B (en) * | 2022-07-27 | 2025-07-04 | 北京小米移动软件有限公司 | Position determination method, device, electronic device and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314365B1 (en) * | 2000-01-18 | 2001-11-06 | Navigation Technologies Corp. | Method and system of providing navigation services to cellular phone devices from a server |
US20140236476A1 (en) * | 2013-02-21 | 2014-08-21 | Qualcomm Incorporated | Mobile device positioning |
US20150051829A1 (en) * | 2013-08-13 | 2015-02-19 | Aol Inc. | Systems and methods for providing mapping services including route break point recommendations |
-
2016
- 2016-08-26 US US15/249,200 patent/US9906939B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314365B1 (en) * | 2000-01-18 | 2001-11-06 | Navigation Technologies Corp. | Method and system of providing navigation services to cellular phone devices from a server |
US20140236476A1 (en) * | 2013-02-21 | 2014-08-21 | Qualcomm Incorporated | Mobile device positioning |
US20150051829A1 (en) * | 2013-08-13 | 2015-02-19 | Aol Inc. | Systems and methods for providing mapping services including route break point recommendations |
Also Published As
Publication number | Publication date |
---|---|
US9906939B1 (en) | 2018-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11765057B2 (en) | Systems and methods for performing end-to-end link-layer and IP-layer health checks between a host machine and a network virtualization device | |
US10721595B2 (en) | Location-based VOIP functions in a wireless network | |
EP2922275B1 (en) | Tunnel broker in a service oriented architecture | |
US11588703B2 (en) | Systems and methods for determining a topology of a network comprising a plurality of intermediary devices and paths | |
US10469362B1 (en) | Network routing utilization of application programming interfaces | |
US20180359131A1 (en) | Implementing provider edge with hybrid packet processing appliance | |
EP3720075B1 (en) | Data transmission method and virtual switch | |
CN105594185A (en) | Duplicate mac address detection | |
US10225185B2 (en) | Configuration mechanisms in a switchless network | |
KR20150113597A (en) | Method and apparatus for processing arp packet | |
EP2815546A1 (en) | Construct Large-scale DVPN | |
US20230077440A1 (en) | Link selection in an overlay network | |
WO2022089169A1 (en) | Method and apparatus for sending computing routing information, device, and storage medium | |
CN107113892A (en) | A kind of method and device of gateway device automatic network-building | |
US20210021512A1 (en) | Cluster Oriented Dynamic Routing | |
WO2014059441A1 (en) | Identification of servers by common wide area network addresses | |
CN114025400A (en) | Session state holding method and session state holding device | |
US9906939B1 (en) | Detection of nearby points of interest | |
US20160315858A1 (en) | Load balancing of ipv6 traffic in an ipv4 environment | |
US9996335B2 (en) | Concurrent deployment in a network environment | |
WO2015074258A1 (en) | Method, apparatus and system for controlling forwarding of service data in virtual network | |
US11849339B2 (en) | Selecting a role for an access point | |
US9152465B2 (en) | Prioritzed branch computing system | |
CN117319269A (en) | Data transmission control method and device, equipment and medium | |
KR20170006950A (en) | Network flattening system based on sdn and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CISCO TECHNOLOGY, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FEENEY, MARTIN BERNARD;FRAWLEY, LIAM C.;MCDONNELL, NIALL;SIGNING DATES FROM 20160816 TO 20160823;REEL/FRAME:039558/0644 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |