IP Library › Granted Patent US 11,570,572
Granted Patent B2
US 11,570,572 · App. 17/223,305 · Granted Jan 31, 2023

Geo-fence selection system

Inventors: Samir Ahmed (Marina del Rey, CA); Amit Gaur (Los Angeles, CA); Jean Luo (Los Angeles, CA); Yang Wen (Santa Monica, CA)
Assignee: Snap Inc.
H04W4/021H04L67/06H04L67/306H04L67/52H04W4/027H04W4/029
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 11,570,572
App. No.
17/223,305
Granted
Jan 31, 2023
Kind
B2
Abstract

The present invention relates to improvements to systems and methods for determining a current location of a client device, and for identifying and selecting appropriate geo-fences based on the current location of the client device. An improved geo-fence selection system performs operations that include associating media content with a geo-fence that encompasses a portion of a geographic region, sampling location data from a client device, defining a boundary based on the sampled location data from the client device, detecting an overlap between the boundary and the geo-fence, retrieving the media content associated with the geo-fence, and loading the media content at a memory location of the client device, in response to detecting the overlap.

Claims (51)

1. A method comprising:

associating media content with a geo-fence that encompasses a location;

accessing historical location data associated with a client device, the historical location data comprising a plurality of data points that indicate one or more locations of the client device;

generating a bounding box based on the plurality of data points, the bounding box comprising a boundary;

determining that the boundary of the bounding box intersects with the geo-fence;

determining that the historical location data identifies the location encompassed by the geo-fence based on the boundary of the bounding box intersecting with the geo-fence; and

loading the media content associated with the geo-fence at the client device based on the historical location data identifying the location encompassed by the geo-fence.

2. The method of claim 1 , wherein the method further comprises:

causing display of a presentation of the media content within a message at the client device.

3. The method of claim 2 , wherein the message includes an ephemeral message.

4. The method of claim 1 , wherein the method further comprises:

presenting the media content within a media collection at the client device.

5. The method of claim 1 , wherein the historical location data comprises a plurality of data points, and the determining that the historical location data identifies the location encompassed by the geo-fence includes:

identifying a central data point from among the plurality of data points;

generating a boundary based on a radius that extends from the central data point; and

determining that the boundary intersects with the geo-fence.

6. The method of claim 1 , wherein the historical location data comprises a data point that includes a timestamp, and the loading the media content associated with the geo-fence at the client device based on the historical location data is based on the timestamp.

7. A system comprising:

a memory; and

at least one hardware processor coupled to the memory and comprising instructions that causes the system to perform operations comprising:

associating media content with a geo-fence that encompasses a location;

accessing historical location data associated with a client device, the historical location data comprising a plurality of data points that indicate one or more locations of the client device;

generating a bounding box based on the plurality of data points, the bounding box comprising a boundary;

determining that the boundary of the bounding box intersects with the geo-fence;

determining that the historical location data identifies the location encompassed by the geo-fence based on the boundary of the bounding box intersecting with the geo-fence; and

loading the media content associated with the geo-fence at the client device based on the historical location data identifying the location encompassed by the geo-fence.

8. The system of claim 7 , wherein the operations further comprise:

causing display of a presentation of the media content within a message at the client device.

9. The system of claim 8 , wherein the message includes an ephemeral message.

10. The system of claim 7 , wherein the operations further comprise:

presenting the media content within a media collection at the client device.

11. The system of claim 7 , wherein the historical location data comprises a plurality of data points, and the determining that the historical location data identifies the location encompassed by the geo-fence includes:

identifying a central data point from among the plurality of data points;

generating a boundary based on a radius that extends from the central data point; and

determining that the boundary intersects with the geo-fence.

12. The system of claim 7 , wherein the historical location data comprises a data point that includes a timestamp, and the loading the media content associated with the geo-fence at the client device based on the historical location data is based on the timestamp.

13. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

associating media content with a geo-fence that encompasses a location;

accessing historical location data associated with a client device, the historical location data comprising a plurality of data points that indicate one or more locations of the client device;

generating a bounding box based on the plurality of data points, the bounding box comprising a boundary;

determining that the boundary of the bounding box intersects with the geo-fence;

determining that the historical location data identifies the location encompassed by the geo-fence based on the boundary of the bounding box intersecting with the geo-fence; and

loading the media content associated with the geo-fence at the client device based on the historical location data identifying the location encompassed by the geo-fence.

14. The non-transitory machine-readable storage medium of claim 13 , wherein the operations further comprise:

causing display of a presentation of the media content within a message at the client device.

15. The non-transitory machine-readable storage medium of claim 14 , wherein the message includes an ephemeral message.

16. The non-transitory machine-readable storage medium of claim 13 , wherein the operations further comprise:

presenting the media content within a media collection at the client device.

17. The non-transitory machine-readable storage medium of claim 13 , wherein the historical location data comprises a plurality of data points, and the determining that the historical location data identifies the location encompassed by the geo-fence includes:

identifying a central data point from among the plurality of data points;

generating a boundary based on a radius that extends from the central data point; and determining that the boundary intersects with the geo-fence.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2021
From: AHMED, SAMIR; GAUR, AMIT; LUO, JEAN; WEN, YANG
To: SNAP INC.
Reel/Frame 056155/0380 →
Continuity (4)
Continuation 16702131 · Dec 3, 2019
Continuation 16404440 · May 6, 2019
Continuation 15912769 · Mar 6, 2018
Related Publication 20210227349A1 · Jul 22, 2021
Cited By (1)
US 12,382,244