IP Library Granted Patent US 9,628,957
Granted Patent B1
US 9,628,957 · App. 14/949,750 · Granted Apr 18, 2017

Method and system for determining location of mobile device

Inventors: Geoffrey Hubert Woo (San Francisco, CA); Jonathan R. Zhang (San Francisco, CA); Jonathan D. Chang (San Francisco, CA)
Assignee: Groupon, Inc.
H04W4/025H04W4/02H04W48/04H04W64/00
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 9,628,957
App. No.
14/949,750
Granted
Apr 18, 2017
Kind
B1
Abstract

Provided herein are system, methods and computer readable storage media in facilitating the determination of a location of at least one mobile device. In providing such functionality, the system may be configured to, for example, receive contextual data corresponding to a contextual state of a mobile device, determine the location of a mobile device, and transmit the location of the mobile device to at least one other mobile device.

Claims (71)

1. A method for tracking a location of at least one mobile device, the method comprising:

receiving mobile device contextual data, wherein receiving mobile device contextual data further comprises at least one of:

receiving mobile device audio data;

receiving mobile device video data;

receiving mobile device velocity data; and

receiving mobile device acceleration data;

determining a velocity and acceleration of the mobile device;

predicting a future location of the mobile device;

determining a new location of the mobile device, wherein determining the new location of the mobile device further comprises:

determining the predicted future location of the mobile device has not met an accuracy threshold;

transmitting a signal to the mobile device corresponding to a request for the new location of the mobile device; and

receiving data corresponding to a current location of the mobile device; and

transmitting data corresponding to the new location of the mobile device, wherein the mobile device is configured to maintain an open socket connection with a mobile device locating system with a VoIP protocol.

2. The method of claim 1 , wherein the new location of the mobile device is based at least in part on the predicted future location of the mobile device.

3. The method of claim 1 , wherein predicting a future location of the mobile device further comprises predicting the future location based at least on one Kalman filter and Markov chain.

4. The method of claim 1 , wherein determining a new location of the mobile device further comprises:

determining the predicted future location of the mobile device has not met an accuracy threshold;

receiving data corresponding to a location of at least one device in communication with the mobile device; and

determining a location of the mobile device based at least upon the data corresponding to the location of the at least one device in communication with the mobile device.

5. The method of claim 1 further comprising receiving a signal from a first mobile device corresponding to a location request of at least one other mobile device.

6. The method of claim 1 further comprising:

receiving a plurality of signals from a plurality of mobile devices, each of the signals corresponding to a location request of at least one other mobile device; and

determining whether any duplication exists between any of the location requests for any of the at least one other mobile device.

7. The method of claim 1 , wherein the mobile device is configured to remain in a low powered state while maintaining the open socket connection.

8. A computer program product comprising:

at least one computer readable non-transitory memory medium having program code instructions stored thereon, the program code instructions which when executed by an apparatus cause the apparatus at least to:

receive mobile device contextual data, wherein receiving mobile device contextual data further comprises at least one of:

receiving mobile device audio data;

receiving mobile device video data;

receiving mobile device velocity data; and

receiving mobile device acceleration data;

determine a velocity and acceleration of the mobile device;

predict a future location of the mobile device;

determine a new location of the mobile device, wherein determining the new location of the mobile device further comprises:

determining the predicted future location of the mobile device has not met an accuracy threshold;

transmitting a signal to the mobile device corresponding to a request for the new location of the mobile device; and

receiving data corresponding to a current location of the mobile device; and

transmit data corresponding to the new location of the mobile device, wherein the mobile device is configured to maintain an open socket connection with a mobile device locating system with a VoIP protocol.

9. The computer program product according to claim 8 , wherein the new location of the mobile device is based at least in part on the predicted future location of the mobile device.

10. The computer program product according to claim 8 , wherein the wherein the program code instructions are further configured to, when executed by the apparatus, cause the apparatus at least to:

predict a future location of the mobile device based at least on one Kalman filter and Markov chain.

11. The computer program product according to claim 8 , wherein the program code instructions are further configured to, when executed by the apparatus, cause the apparatus at least to:

determine the predicted future location of the mobile device has not met an accuracy threshold;

receive data corresponding to a location of at least one device in communication with the mobile device; and

determine a location of the mobile device based at least upon the data corresponding to the location of the at least one device in communication with the mobile device.

12. An apparatus comprising:

at least one processor; and

at least one memory, the memory including computer program instructions which when executed, in conjunction with the at least one processor, are configured to cause the apparatus to:

receive mobile device contextual data, wherein receiving mobile device contextual data further comprises at least one of:

receiving mobile device audio data;

receiving mobile device video data;

receiving mobile device velocity data; and

receiving mobile device acceleration data;

determine a velocity and acceleration of the mobile device;

predict a future location of the mobile device;

determine a new location of the mobile device, wherein determining the new location of the mobile device further comprises:

determining the predicted future location of the mobile device has not met an accuracy threshold;

transmitting a signal to the mobile device corresponding to a request for the new location of the mobile device; and

receiving data corresponding to a current location of the mobile device; and

transmit data corresponding to the new location of the mobile device, wherein the mobile device is configured to maintain an open socket connection with a mobile device locating system with a VoIP protocol.

13. The apparatus of claim 12 , wherein the new location of the mobile device is determined based at least in part on the predicted future location of the mobile device.

14. The apparatus of claim 12 , wherein the computer program instructions configured to cause the apparatus to predict a future location of the mobile device includes the computer program instructions being configured to cause the apparatus to predict the future location based at least on one Kalman filter and Markov chain.

15. The apparatus of claim 12 , wherein the computer program instructions configured to cause the apparatus to determine a new location of the mobile device includes the computer program instructions being configured to cause the apparatus to:

determine the predicted future location of the mobile device has not met an accuracy threshold;

receive data corresponding to a location of at least one device in communication with the mobile device; and

determine a location of the mobile device based at least upon the data corresponding to the location of the at least one device in communication with the mobile device.

16. The apparatus of claim 12 , wherein the computer program instructions are further configured to cause the apparatus to receive a signal from a first mobile device corresponding to a location request of at least one other mobile device.

17. The apparatus of claim 12 , wherein the computer program instructions are further configured to cause the apparatus to:

receive a plurality of signals from a plurality of mobile devices, each of the signals corresponding to a location request of at least one other mobile device; and

determine whether any duplication exists between any of the location requests for any of the at least one other mobile device.

18. The apparatus of claim 12 , wherein the computer program instructions are further configured to cause the apparatus to maintain an open socket connection in a low powered state while maintaining the open socket connection.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2024
From: GROUPON, INC.
To: BYTEDANCE INC.
Reel/Frame 068241/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY RIGHTS Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0251 →
SECURITY INTEREST Recorded Jul 23, 2020
From: GROUPON, INC.; LIVINGSOCIAL, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 053294/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2016
From: WOO, GEOFFREY H.; ZHANG, JONATHAN R.; CHANG, JONATHAN D.
To: GROUPON, INC.
Reel/Frame 038073/0124 →
Continuity (2)
Continuation 13835276 · Mar 15, 2013
Provisional Application 61618693 · Mar 31, 2012