IP Library Granted Patent US 10,497,019
Granted Patent B2
US 10,497,019 · App. 15/582,523 · Granted Dec 3, 2019

Geographic positions of mobile devices and external data sources correlation

Inventors: Brian Gabriel Nash (Seattle, WA); Andrew Hoy Stein (Carlsbad, CA)
Assignee: Splunk Inc.
G06Q30/0242G06Q30/0259G06Q30/0267G06Q30/0268
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,497,019
App. No.
15/582,523
Granted
Dec 3, 2019
Kind
B2
Abstract

Embodiments are disclosed for a method that may include accessing, from a first data source, events including interactions between a mobile device and one or more network devices on a network at a locale, and receiving external data from a second data source that excludes the network devices. The method may further include determining, based on the interactions, one or more geographic positions and one or more corresponding time intervals of the mobile device at the geographic positions, and correlating the geographic positions and the time intervals with the external data to obtain a metric.

Claims (115)

1. A method, comprising:

receiving, via a network connection, an event log from at least one wireless access point in a plurality of network devices at a locale,

wherein the at least one wireless access point is in a communication path between a plurality of mobile devices and a wireless network,

wherein the event log lists a plurality of network interactions between the plurality of mobile devices and the at least one wireless access point in order for the plurality of mobile devices to access the wireless network, the plurality of network interactions each corresponding to a single event of a plurality of events in the event log;

storing the event log at a data intake and query system;

processing, by the data intake and query system, a query for a subset of the plurality of events corresponding to a mobile device of the plurality of mobile devices;

receiving, by a processor, external data from a second data source, the second data source excluding the at least one wireless access point;

determining, by the processor and based on the plurality of interactions, at least one geographic position and at least one corresponding time interval of the mobile device at the at least one geographic position, wherein determining the at least one geographic position comprises:

determining that a first event in the plurality of events is recording an initial access request to access the wireless network using a particular wireless access point;

determining that a second event in the plurality of events is recording a termination access request to stop access the wireless network using the particular wireless access point;

determining, by the data intake and query system, a duration of time that the mobile device is connected to a particular wireless access point based on a time difference between a time of the first event and a time of the second event as recorded in the event log; and

correlating, by the processor, the at least one geographic position and the at least one time interval with the external data to obtain a metric.

2. The method of claim 1 ,

wherein the external data comprises a plurality of sales transactions obtained from a point-of-sale (POS) device at the locale, and

wherein the metric is a walk-by conversion rate at the locale.

3. The method of claim 1 ,

wherein the external data comprises sensor data obtained from at least one sensor at the locale, and

wherein the metric is a spike in a size of walk-by traffic at the locale.

4. The method of claim 1 ,

wherein the external data comprises sensor data obtained from at least one sensor at the locale, and

wherein the metric is a wait time in a line at a register at the locale.

5. The method of claim 1 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, the method further comprising:

determining, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions.

6. The method of claim 1 , further comprising:

predicting a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval.

7. The method of claim 1 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, the method further comprising:

determining, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions; and

predicting, using the impact on the metric, a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval.

8. The method of claim 1 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, the method further comprising:

determining, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions;

predicting, using the impact on the metric, a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval; and

adjusting, in response to predicting the value of the metric, an operating parameter of the locale.

9. The method of claim 1 , wherein correlating the at least one geographic position and the at least one time interval generates at least one correlation, the at least one correlation comprising a first correlation of a first geographic position and a first time interval, the method further comprising:

identifying the first correlation as an anomaly; and

excluding, in response to identifying the first correlation as an anomaly, the first correlation from the at least one correlation.

10. The method of claim 1 , wherein the external data comprises user data obtained from an application of the mobile device, the method further comprising:

identifying, using the user data, a purchasing preference for a product, wherein the product is being sold at a geographic position at the locale within a threshold of the at least one geographic position; and

transmitting a promotion for the product to the mobile device.

11. The method of claim 1 , wherein the external data comprises user data obtained from an application of the mobile device, the method further comprising:

identifying, using the user data, a purchasing preference for a first product having an attribute; and

transmitting a promotion for a second product having the attribute to the mobile device.

12. The method of claim 1 , wherein the external data comprises user data obtained from an application of the mobile device and inventory data obtained from an inventory system, the method further comprising:

identifying, using the inventory data, a product with expiring inventory;

identifying, using the user data, a purchasing preference for the product; and

transmitting a promotion for the product to the mobile device.

13. The method of claim 1 ,

wherein at least a subset of the plurality of events each include a mobile device identifier of the mobile device, a timestamp, and an interaction type,

wherein the timestamp records a time of a corresponding network interaction between the mobile device and the at least one wireless access point, and

wherein, for the first event, the interaction type is the initial access request, wherein, for the second event, the interaction type is the termination access request.

14. The method of claim 1 , wherein determining the geographic position of the mobile device is further performed using triangularization based on measuring the radial distance of the plurality of network devices to the mobile device as recorded in the plurality of events.

15. A computer system, comprising:

a first data source comprising a plurality of events comprising a plurality of interactions between a mobile device and at least one wireless access point on a network at a locale; and

circuitry configured to:

receive, via a network connection, an event log from at least one wireless access point in a plurality of network devices at a locale,

wherein the at least one wireless access point is in a communication path between a plurality of mobile devices and a wireless network,

wherein the event log lists a plurality of network interactions between the plurality of mobile devices and the at least one wireless access point in order for the plurality of mobile devices to access the wireless network, the plurality of network interactions each corresponding to a single event of a plurality of events in the event log;

store the event log at a data intake and query system;

process, by the data intake and query system, a query for a subset of the plurality of events corresponding to a mobile device of the plurality of mobile devices;

receive external data from a second data source, the second data source excluding the at least one wireless access point;

determine, based on the plurality of interactions, at least one geographic position and at least one corresponding time interval of the mobile device at the at least one geographic position, wherein determining the at least one geographic position comprises:

determining that a first event in the plurality of events is recording an initial access request to access the wireless network using a particular wireless access point;

determining that a second event in the plurality of events is recording a termination access request to stop access the wireless network using the particular wireless access point;

determining, by the data intake and query system, a duration of time that the mobile device is connected to a particular wireless access point based on a time difference between a time of the first event and a time of the second event as recorded in the event log; and

correlate the at least one geographic position and the at least one time interval with the external data to obtain a metric.

16. The system of claim 15 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, wherein the circuitry is further configured to:

determine, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions.

17. The system of claim 15 , wherein the circuitry is further configured to:

predict a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval.

18. The system of claim 15 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, wherein the circuitry is further configured to:

determine, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions; and

predict, using the impact on the metric, a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval.

19. The system of claim 15 , wherein correlating the at least one geographic position and the at least one time interval generates at least one correlation, the at least one correlation comprising a first correlation of a first geographic position and a first time interval, wherein the circuitry is further configured to:

identify the first correlation as an anomaly; and

exclude, in response to identifying the first correlation as an anomaly, the first correlation from the at least one correlation.

20. The system of claim 15 , wherein the external data comprises user data obtained from an application of the mobile device, wherein the circuitry is further configured to:

identify, using the user data, a purchasing preference for a product, wherein the product is being sold at a geographic position at the locale within a threshold of the at least one geographic position; and

transmit a promotion for the product to the mobile device.

21. The system of claim 15 , wherein the external data comprises user data obtained from an application of the mobile device and inventory data obtained from an inventory system, wherein the circuitry is further configured to:

identify, using the inventory data, a product with expiring inventory;

identify, using the user data, a purchasing preference for the product; and

transmit a promotion for the product to the mobile device.

22. The system of claim 15 ,

wherein at least a subset of the plurality of events each include a mobile device identifier of the mobile device, a timestamp, and an interaction type,

wherein the timestamp records a time of a corresponding network interaction between the mobile device and the at least one wireless access point, and

wherein, for the first event, the interaction type is the initial access request, wherein, for the second event, the interaction type is the termination access request.

23. The system of claim 15 , wherein determining the geographic position of the mobile device is further performed using triangularization based on measuring the radial distance of the plurality of network devices to the mobile device as recorded in the plurality of events.

24. A non-transitory computer-readable medium comprising instructions, execution of which in a computer system causes the computer system to:

receive, via a network connection, an event log from at least one wireless access point in a plurality of network devices at a locale,

wherein the at least one wireless access point is in a communication path between a plurality of mobile devices and a wireless network,

wherein the event log lists a plurality of network interactions between the plurality of mobile devices and the at least one wireless access point in order for the plurality of mobile devices to access the wireless network, the plurality of network interactions each corresponding to a single event of a plurality of events in the event log;

store the event log at a data intake and query system;

process, by the data intake and query system, a query for a subset of the plurality of events corresponding to a mobile device of the plurality of mobile devices;

receive external data from a second data source, the second data source excluding the at least one wireless access point;

determine, based on the plurality of interactions, at least one geographic position and at least one corresponding time interval of the mobile device at the at least one geographic position, wherein determining the at least one geographic position comprises:

determining that a first event in the plurality of events is recording an initial access request to access the wireless network using a particular wireless access point;

determining that a second event in the plurality of events is recording a termination access request to stop access the wireless network using the particular wireless access point;

determining, by the data intake and query system, a duration of time that the mobile device is connected to a particular wireless access point based on a time difference between a time of the first event and a time of the second event as recorded in the event log; and

correlate the at least one geographic position and the at least one time interval with the external data to obtain a metric.

25. The non-transitory computer-readable medium of claim 24 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, wherein the instructions, upon execution, further cause the computer system to:

determine, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions.

26. The non-transitory computer-readable medium of claim 24 , wherein the external data comprises a plurality of sales transactions obtained from a POS device at the locale, wherein the instructions, upon execution, further cause the computer system to:

determine, in response to the correlating, an impact on the metric by a promotion used in the plurality of sales transactions; and

predict, using the impact on the metric, a value of the metric in a periodic time interval using a trend in previous values of the metric in the periodic time interval.

27. The non-transitory computer-readable medium of claim 24 , wherein the external data comprises user data obtained from an application of the mobile device, wherein the instructions, upon execution, further cause the computer system to:

identify, using the user data, a purchasing preference for a product, wherein the product is being sold at a geographic position at the locale within a threshold of the at least one geographic position; and

transmit a promotion for the product to the mobile device.

28. The non-transitory computer-readable medium of claim 24 , wherein the external data comprises user data obtained from an application of the mobile device and inventory data obtained from an inventory system, wherein the instructions, upon execution, further cause the computer system to:

identify, using the inventory data, a product with expiring inventory;

identify, using the user data, a purchasing preference for the product; and

transmit a promotion for the product to the mobile device.

29. The non-transitory computer readable medium of claim 24 ,

wherein at least a subset of the plurality of events each include a mobile device identifier of the mobile device, a timestamp, and an interaction type,

wherein the timestamp records a time of a corresponding network interaction between the mobile device and the at least one wireless access point, and

wherein, for the first event, the interaction type is the initial access request, wherein, for the second event, the interaction type is the termination access request.

30. The non-transitory computer readable medium of claim 24 , wherein determining the geographic position of the mobile device is further performed using triangularization based on measuring the radial distance of the plurality of network devices to the mobile device as recorded in the plurality of events.

Assignments (5)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069825/0558 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF ASSIGNEE PREVIOUSLY RECORDED AT REEL: 045243 FRAME: 0660. ASSIGNOR(S) HEREBY CONFIRMS THE ASSGNMENT. Recorded Jul 22, 2019
From: NASH, BRIAN GABRIEL; STEIN, ANDREW HOY
To: SPLUNK INC.
Reel/Frame 050493/0596 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2018
From: NASH, BRIAN GABRIEL; STEIN, ANDREW HOY
To: SPLUNK, INC.
Reel/Frame 045243/0660 →
Continuity (1)
Related Publication 20180315074A1 · Nov 1, 2018
Cited By (1)
US 12,456,137