IP Library › Granted Patent US 12,483,856
Granted Patent B1
US 12,483,856 · App. 17/722,134 · Granted Nov 25, 2025

Framework for reverse geocoding for real user monitoring

Inventor: Joshua Walters (Irvine, CA)
Assignee: Cisco Technology, Inc.
H04W4/022H04W4/029H04W4/24
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 12,483,856
App. No.
17/722,134
Filed
Apr 15, 2022
Granted
Nov 25, 2025
Kind
B1
Art Unit
2631
USPC
455/456.1
Abstract

Described herein is a framework for identifying one or more points-of-interest that are geographically proximal to a geographical location of the mobile device. Geographical location information of a mobile device is transformed from a first format to a second format by performing a Mercator projection of the geographical location information in the first format. Using a point-of-interest search memory structure, one or more points-of-interest are identified that are geographically proximal to a geographical location of the mobile device, wherein the point-of-interest search memory structure includes location information for a plurality of points-of-interest. Information indicative of the one or more points-of-interest are transmitted to an analytical server to enable the analytical server to perform analysis related to the mobile device.

Claims (38)

1 . A method comprising:

transforming geographical location information of a mobile device from a first format to a second format by performing a Mercator projection of the geographical location information in the first format, wherein the first format corresponds to a latitude-longitude information of the mobile device in an ellipsoidal co-ordinate system, and the second format corresponds to a pair of co-ordinates in a Cartesian co-ordinate system;

identifying, using a point-of-interest search memory structure, one or more points-of-interest from a plurality of points-of-interest that are geographically proximal to a geographical location of the mobile device, wherein the point-of-interest search memory structure is a supplemental R tree and includes geographical location information for the plurality of points-of-interest in the second format; and

transmitting, to an analytical server, information indicative of the one or more points-of-interest and the geographical location information of the mobile device in the second format to enable the analytical server to perform analysis related to the mobile device.

2 . The method of claim 1 , wherein the mobile device executes an application provided by a service provider, and the analytical server is configured to monitor the application.

3 . The method of claim 2 , further comprising:

computing, a distance between a geographical location of each of the one or more points-of-interest and the geographical location of the mobile device; and

sending, to the service provider, the geographical location of each of the one or more points-of-interest and the distance.

4 . The method of claim 2 , further comprising:

obtaining configuration information from the service provider, the configuration information indicative of a level of granularity desired with respect to a distance measure between the one or more points-of-interest and the geographical location of the mobile device; and

identifying, from a point-of-interest database, the plurality of points-of-interest in the second format based on the level of granularity.

5 . The method of claim 4 , further comprising:

transforming, via performing the Mercator projection, a geographical position of each of the one or more points-of-interest from the first format to the second format; and

constructing the point-of-interest search memory structure based on the transforming.

6 . The method of claim 3 , wherein the distance between each of the one or more points-of-interest and the geographical location of the mobile device is a Euclidean distance.

7 . The method of claim 2 , further comprising:

repeating, the transforming, the identifying, and the transmitting, with respect to one or more other mobile devices that execute the application provided by the service provider.

8 . A computing device comprising:

a processor; and

a memory including instructions that, when executed with the processor, cause the computing device to, at least:

transform geographical location information of a mobile device from a first format to a second format by performing a Mercator projection of the geographical location information in the first format, wherein the first format corresponds to a latitude-longitude information of the mobile device in an ellipsoidal co-ordinate system, and the second format corresponds to a pair of co-ordinates in a Cartesian co-ordinate system;

identify, using a point-of-interest search memory structure, one or more points-of-interest from a plurality of points-of-interest that are geographically proximal to a geographical location of the mobile device, wherein the point-of-interest search memory structure is a supplemental R tree and includes geographical location information for the plurality of points-of-interest in the second format; and

transmit, to an analytical server, information indicative of the one or more points-of-interest and the geographical location information of the mobile device in the second format to enable the analytical server to perform analysis related to the mobile device.

9 . The computing device of claim 8 , wherein the mobile device executes an application provided by a service provider, and the analytical server is configured to monitor the application.

10 . The computing device of claim 9 , further configured to:

compute, a distance between a geographical location of each of the one or more points-of-interest and the geographical location of the mobile device; and

send, to the service provider, the geographical location of each of the one or more points-of-interest and the distance.

11 . The computing device of claim 9 , further configured to:

obtain configuration information from the service provider, the configuration information indicative of a level of granularity desired with respect to a distance measure between the one or more points-of-interest and the geographical location of the mobile device; and

identify, from a point-of-interest database, the plurality of points-of-interest in the second format based on the level of granularity.

12 . The computing device of claim 11 , further configured to:

transform, via performing the Mercator projection, a geographical position of each of the one or more points-of-interest from the first format to the second format; and

construct the point-of-interest search memory structure based on transforming the geographical position.

13 . A non-transitory computer readable medium storing specific computer-executable instructions that, when executed by a processor, cause a computer system to perform operations comprising:

transforming geographical location information of a mobile device from a first format to a second format by performing a Mercator projection of the geographical location information in the first format, wherein the first format corresponds to a latitude-longitude information of the mobile device in an ellipsoidal co-ordinate system, and the second format corresponds to a pair of co-ordinates in a Cartesian co-ordinate system;

identifying, using a point-of-interest search memory structure, one or more points-of-interest from a plurality of points-of-interest that are geographically proximal to a geographical location of the mobile device, wherein the point-of-interest search memory structure is a supplemental R tree and includes geographical location information for the plurality of points-of-interest in the second format; and

transmitting, to an analytical server, information indicative of the one or more points-of-interest and the geographical location information of the mobile device in the second format to enable the analytical server to perform analysis related to the mobile device.

14 . The non-transitory computer readable medium storing specific computer-executable instructions of claim 13 , wherein the mobile device executes an application provided by a service provider, and the analytical server is configured to monitor the application.

Assignments (3)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2022
From: WALTERS, JOSHUA
To: SPLUNK INC.
Reel/Frame 059614/0897 →
References Cited (18)
US 6473692B2 · Hancock · 2002 [cited by examiner]
US 7937344B2 · Baum et al. · 2011 [cited by applicant]
US 8112425B2 · Baum et al. · 2012 [cited by applicant]
US 8548735B2 · Forstall · 2013 [cited by examiner]
US 8751529B2 · Zhang et al. · 2014 [cited by applicant]
US 8788525B2 · Neels et al. · 2014 [cited by applicant]
US 8799799B1 · Cervelli · 2014 [cited by examiner]
US 9215240B2 · Merza et al. · 2015 [cited by applicant]
US 9286413B1 · Coates et al. · 2016 [cited by applicant]
US 10127258B2 · Lamas et al. · 2018 [cited by applicant]
US 20190098106A1 · Mungel et al. · 2019 [cited by applicant]
Address geocoding. Wikipedia. The Way Back Machine. Mar. 19, 2022. https://web.archive.org/web/20220412185833/https://en.wikipedia.org/wiki/Mercator_projection (Year: 2022). [cited by examiner]
Mercator projection. Wikipedia. The Way Back Machine. Apr. 12, 2022. https://web.archive.org/web/20220319222410/https://en.wikipedia.org/wiki/Address_geocoding (Year: 2022). [cited by examiner]
Splunk Enterprise 8.0.0 Overview, available online, retrieved May 20, 2020 from docs.splunk.com. [cited by applicant]
Splunk Cloud 8.0.2004 User Manual, available online, retrieved May 20, 2020 from docs.splunk.com. [cited by applicant]
Splunk Quick Reference Guide, updated 2019, available online at https://www.splunk.com/pdfs/solution-guides/splunk-quick-reference-guide.pdf, retrieved May 20, 2020. [cited by applicant]
Carraso, David, “Exploring Splunk,” published by CITO Research, New York, NY, Apr. 2012. [cited by applicant]
Bitincka, Ledion et al., “Optimizing Data Analysis with a Semi-structured Time Series Database,” self-published, first presented at “Workshop on Managing Systems via Log Analysis and Machine Learning Techniques (SLAML)”… [cited by applicant]