IP Library › Granted Patent US 10,257,291
Granted Patent B1
US 10,257,291 · App. 14/299,862 · Granted Apr 9, 2019

Event-based content sharing using geofencing

Inventors: Brian Matiash (Sunnyvale, CA); Nicholas Butko (Mountain View, CA); David M. Cohen (Mountain View, CA); Emily Chang (Mountain View, CA)
Assignee: Google LLC
H04L67/18
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,257,291
App. No.
14/299,862
Granted
Apr 9, 2019
Kind
B1
Abstract

Various embodiments for event-based information sharing are disclosed. In one example embodiment, an event definition describing an event is determined. An event geofence associated with a location of the event is generated and content is shared between invitees attending the event and located within an area of the event geofence.

Claims (70)

1. A computer-implemented method comprising:

determining, using one or more computing devices, an event definition describing an event including a location of the event, a first duration of the event, a group of one or more user-specified exemption requirements specific to the event, and invitees to the event;

generating, using the one or more computing devices, an event geofence associated with the location of the event, the event geofence persisting for a second duration corresponding to the first duration of the event;

determining, using the one or more computing devices, whether a first invitee is within an area of the event geofence or meets an exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein content is shared when the first invitee is within the area of the event geofence or meets the exemption requirement, and wherein the first invitee is one of the invitees to the event included in the event definition; and

responsive to determining that the first invitee meets a first exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein the first exemption requirement includes a client device associated with the first invitee being en route to the event or the first invitee opting to attend the event virtually, sharing, using the one or more computing devices, the content with the first invitee.

2. The method of claim 1 , wherein determining the event definition includes receiving the event definition from a client device of an event stakeholder, and generating the event geofence includes initializing the event geofence to persist for the second duration corresponding to the first duration of the event.

3. The method of claim 1 , further comprising:

receiving, using the one or more computing devices, a request from the first invitee included in the event definition that has not yet arrived to the event;

determining, using the one or more computing devices, that the client device associate with the first invitee is en route to the area of the event geofence, wherein the first exemption requirement includes the client device associated with the first invitee being en route to the event; and

terminating the sharing of the content with the first invitee responsive to the client device associated with the first invitee, having been determined to be en route to the event, failing to enter the area of the event geofence within a specified timeframe.

4. The method of claim 1 , further comprising:

dynamically creating, using the one or more computing devices, a sub-geofence distinct from the event geofence for a sub-group of the invitees in attendance at the event and that have moved to a location outside the area of the event geofence.

5. The method of claim 4 , further comprising:

receiving, using the one or more computing devices, a content share request from an invitee included in the event definition;

determining, using the one or more computing devices, that a client device of the requesting invitee is within an area of the sub-geofence created from the event geofence;

determining, using the one or more computing devices, an access level for the content share request; and

providing, using the one or more computing devices, access to the requesting invitee to share content with other invitees associated with the sub-geofence or the event geofence based on the access level.

6. The method of claim 4 , further comprising:

converting, using the one or more computing devices, the sub-geofence into a new event that includes the sub-group of the invitees in attendance at the event and within the sub-geofence as attendees of the new event.

7. The method of claim 4 , further comprising:

subsequent to determining that the sub-group of the invitees is located within the event geofence, providing, using the one or more computing devices, access, to the sub-group of the invitees, to share content with other invitees attending the event and located within the area of the event geofence; and

dissolving, using the one or more computing devices, the sub-geofence.

8. The method of claim 1 , further comprising:

determining, using the one or more computing devices, a group of the invitees associated with the event geofence are migrating to a new location different from the location defined in the event; and

dynamically updating, using the one or more computing devices, the area of the event geofence to include the new location.

9. The method of claim 1 , further comprising:

determining that one or more of the first duration and second duration has expired; and

subsequent to determining that one or more of the first duration and second duration has expired, sharing content with a third invitee that was neither located within the area of the event geofence nor meets the exemption requirement.

10. A computer program product comprising a non-transitory computer-readable medium storing a computer-readable program, wherein the computer-readable program, when executed on one or more computers, causes the one or more computers to perform operations comprising:

determining an event definition describing an event including a location of the event, a first duration of the event, a group of one or more user-specified exemption requirements specific to the event, and invitees to the event;

generating an event geofence associated with the location of the event, the event geofence persisting for a second duration corresponding to the first duration of the event;

determining whether a first invitee is within an area of the event geofence or meets an exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein the first invitee is an invitee to the event included in the event definition; and

sharing content with the first invitee responsive to determining that the first invitee meets a first exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein the first exemption requirement includes a client device associated with the first invitee being en route to the event or the first invitee opting to attend the event virtually.

11. The computer program product of claim 10 , wherein determining the event definition includes receiving the event definition from a client device of an event stakeholder, and generating the event geofence includes initializing the event geofence to persist for the second duration corresponding to the first duration of the event.

12. The computer program product of claim 10 , wherein the computer-readable program, when executed on the one or more computers, further causes the one or more computers to perform operations of:

receiving a request from the first invitee included in the event definition that has not yet arrived to the event;

determining that the client device of the first invitee is en route to the area of the event geofence, wherein the first exemption requirement includes the client device associated with the first invitee being en route to the event; and

terminating the sharing of the content with the first invitee responsive to the client device associated with the first invitee, having been determined to be en route to the event, failing to enter the area of the event geofence within a specified timeframe.

13. The computer program product of claim 10 , wherein the computer-readable program, when executed on the one or more computers, further causes the one or more computers to perform operations of:

dynamically creating a sub-geofence distinct from the event geofence for a sub-group of the invitees in attendance at the event and that have moved to a location outside the area of the event geofence.

14. The computer program product of claim 13 , wherein the computer-readable program, when executed on the one or more computers, further causes the one or more computers to perform operations of:

receiving a content share request from an invitee included in the event definition;

determining that a client device of the requesting invitee is within an area of the sub-geofence created from the event geofence;

determining an access level for the content share request; and

providing access to the requesting invitee to share content with other invitees associated with the sub-geofence or the event geofence based on the access level.

15. The computer program product of claim 10 , wherein the computer-readable program, when executed on the one or more computers, further causes the one or more computers to perform operations of:

determining a group of the invitees associated with the event geofence are migrating to a new location different from the location defined in the event; and

dynamically updating the area of the event geofence to include the new location.

16. A system comprising:

one or more processors;

one or more memories storing instructions that, when executed by the one or more processors, cause the system to perform operations including:

determining an event definition describing an event including a location of the event, a first duration of the event, a group of one or more user-specified exemption requirements specific to the event, and invitees to the event;

generating an event geofence associated with the location of the event, the event geofence persisting for a second duration corresponding to the first duration of the event;

determining whether a first invitee is within an area of the event geofence or meets an exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein the first invitee is one of the invitees to the event included in the event definition; and

sharing content with the first invitee responsive to determining that the first invitee meets a first exemption requirement from the group of one or more user-specified exemption requirements specific to the event, wherein the first exemption requirement includes a client device associated with the first invitee being en route to the event or the first invitee opting to attend the event virtually.

17. The system of claim 16 , wherein determining the event definition includes receiving the event definition from a client device of an event stakeholder, and generating the event geofence includes initializing the event geofence to persist for the second duration corresponding to the first duration of the event.

18. The system of claim 16 , wherein the instructions, when executed by the one or more processors, further cause the system to perform operations including:

receiving a request from the first invitee included in the event definition that has not yet arrived to the event;

determining that the client device associated with the first invitee is en route to the area of the event geofence, wherein the first exemption requirement includes the client device associated with the first invitee being en route to the event; and

terminating the sharing of the content with the first invitee responsive to the client device associated with the first invitee, having been determined to be en route to the event, failing to enter the area of the event geofence within a specified timeframe.

19. The system of claim 16 , wherein the instructions, when executed by the one or more processors, further cause the system to perform operations including:

dynamically creating a sub-geofence distinct from the event geofence for a sub-group of the invitees in attendance of the event that have moved to a location outside the area of the event geofence.

20. The system of claim 19 , wherein the instructions, when executed by the one or more processors, further cause the system to perform operations including:

receiving a content share request from an invitee included in the event definition;

determining that a client device of the requesting invitee is within an area of the sub-geofence created from the event geofence;

determining an access level for the content share request; and

providing access to the requesting invitee to share content with other invitees associated with the sub-geofence or the event geofence based on the access level.

21. The system of claim 16 , wherein the instructions, when executed by the one or more processors, further cause the system to perform operations including:

determining a group of the invitees associated with the event geofence are migrating to a new location different from the location defined in the event; and

dynamically updating the area of the event geofence to include the new location.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE FORTH ASSIGNOR'S NAME PREVIOUSLY RECORDED AT REEL: 033397 FRAME: 0468. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 18, 2018
From: MATIASH, BRIAN; BUTKO, NICHOLAS; CHANG, EMILY; COHEN, DAVID M.
To: GOOGLE INC.
Reel/Frame 047951/0909 →
CHANGE OF NAME Recorded Oct 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044567/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2014
From: MATIASH, BRIAN; BUTKO, NICHOLAS; CHANG, EMILY; COHEN, DAVE
To: GOOGLE INC.
Reel/Frame 033397/0468 →
Cited By (9)
US 12,235,915 US 12,339,877 US 12,355,719 US 12,475,239 US 12,520,105 US 12,542,848 US 12,572,318 US 12,647,751 US 12,732,686