Synchronized group location updates
Abstract
Systems and methods are disclosed in which a location update for a user is utilized as a location update for the user and one or more additional users that have been location-synchronized to the user. In general, a location update is received for a first user. One or more second users that have been location-synchronized to the first user are then identified. A location reported by the location update for the first user is recorded, or stored, as a current location of the first user and a current location of each of the one or more second users that have been location-synchronized to the first user. A location-based service, such as a social location-based service, may then be provided based on the current locations of the first and one or more second users.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer-implemented method comprising:
receiving a location update for a first user; identifying one or more second users that have been location-synchronized to the first user in response to receiving the location update for the first user; and recording a location reported in the location update for the first user as a current location of the first user and a current location of each of the one or more second users that have been location-synchronized to the first user.
2 . The method of claim 1 further comprising providing a social location-based service based on current locations of a plurality of users comprising the first user and the one or more second users.
3 . The method of claim 1 wherein the location reported in the location update for the first user is a current geographic location of the first user.
4 . The method of claim 1 wherein the location reported in the location update for the first user is a check-in location for the first user.
5 . The method of claim 1 further comprising, prior to receiving the location update for the first user:
receiving, from a requesting user, a request to location-synchronize the requesting user to the first user; and
recording the requesting user as being location-synchronized to the first user;
wherein identifying the one or more second users that have been location-synchronized to the first user comprises identifying the requesting user as one of the one or more second users that have been location-synchronized to the first user.
6 . The method of claim 1 further comprising, prior to receiving the location update for the first user:
receiving, from the first user, a request to location-synchronize a select user to the first user; and
recording the select user as being location-synchronized to the first user;
wherein identifying the one or more second users that have been location-synchronized to the first user comprises identifying the select user as one of the one or more second users that have been location-synchronized to the first user.
7 . The method of claim 1 further comprising, prior to receiving the location update for the first user:
programmatically determining that a user is to be location-synchronized to the first user; and
recording the user as being location-synchronized to the first user;
wherein identifying the one or more second users that have been location-synchronized to the first user comprises identifying the user as one of the one or more second users that have been location-synchronized to the first user.
8 . The method of claim 7 wherein programmatically determining that the user is to be location-synchronized to the first user comprises programmatically determining that the user is to be location-synchronized to the first user based on one or more user settings.
9 . The method of claim 7 wherein programmatically determining that the user is to be location-synchronized to the first user comprises programmatically determining that the user is to be location-synchronized to the first user based on one or more system-defined rules.
10 . The method of claim 7 wherein programmatically determining that the user is to be location-synchronized to the first user comprises programmatically determining that the user is to be location-synchronized to the first user based on current locations of the first user and the user at that time.
11 . The method of claim 7 wherein programmatically determining that the user is to be location-synchronized to the first user comprises programmatically determining that the user is to be location-synchronized to the first user based on one or more historical locations of the first user and the user.
12 . The method of claim 7 wherein programmatically determining that the user is to be location-synchronized to the first user comprises programmatically determining that the user is to be location-synchronized to the first user based on information obtained from one or more third-party sources that is indicative of spatial proximity of the first user and the user.
13 . The method of claim 1 further comprising:
receiving, from a requesting user, a request to de-synchronize the requesting user from the first user; and
de-synchronizing the requesting user from the first user such that the requesting user is no longer location-synchronized to the first user.
14 . The method of claim 1 further comprising:
receiving, from the first user, a request to de-synchronize a select user from the first user; and
de-synchronizing the select user from the first user such that the select user is no longer location-synchronized to the first user.
15 . The method of claim 1 further comprising, prior to receiving the location update for the first user:
programmatically determining that a user is to be de-synchronized from the first user; and
de-synchronizing the user from the first user such that the user is no longer location-synchronized to the first user.
16 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user after a defined amount of time has expired since the user was location-synchronized to the first user.
17 . The method of claim 16 wherein the defined amount of time is defined by the user.
18 . The method of claim 16 wherein the defined amount of time is a system-defined amount of time.
19 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user at a time specified by the user.
20 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user based on one or more user settings.
21 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user based on one or more system-defined rules.
22 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user based on current locations of the first user and the user at that time.
23 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user based on one or more historical locations of the first user and the user.
24 . The method of claim 15 wherein programmatically determining that the user is to be de-synchronized from the first user comprises programmatically determining that the user is to be de-synchronized from the first user based on information obtained from one or more third-party sources that is indicative of spatial proximity of the first user and the user.
25 . A computer server comprising:
a communication interface adapted to communicatively couple the computer server to a network; and a controller associated with the communication interface that is adapted to:
receive, via the communication interface, a location update for a first user;
identify one or more second users that have been location-synchronized to the first user in response to receiving the location update for the first user; and
record a location reported in the location update for the first user as a current location of the first user and a current location of each of the one or more second users that have been location-synchronized to the first user.
26 . A non-transitory computer-readable medium storing software for instructing a controller of a computing device to:
receive a location update for a first user; identify one or more second users that have been location-synchronized to the first user in response to receiving the location update for the first user; and record a location reported in the location update for the first user as a current location of the first user and a current location of each of the one or more second users that have been location-synchronized to the first user.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.