Location Aware Shared Spaces
In one embodiment, a geo-social networking system maintains a data store of shared space, wherein each shared space comprises one or more content objects, a location, and one or more privacy settings. The geo-social networking system allows a user read-access to a shared space based on privacy settings associated with the shared space. The geo-social networking system allows a user write-access to a shared space if the user is at the location associated with the shared space.
1 . A method, by one or more computing devices, comprising:
maintaining a data store of shared spaces, wherein each shared space comprises one or more content objects and is associated with a location;
allowing, a first user, read-access to the shared spaces based on one or more read access controls with the shared spaces; and
allowing the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space.
2 . The method of claim 1 , wherein the allowing, a first user, read-access to the shared spaces based on respective privacy settings associated with the shared spaces, further comprises:
accessing data indicating a current location of the first user;
accessing the data store of shared spaces;
identifying one or more nearby shared spaces wherein each of the nearby shared spaces has a location within a threshold distance from the first user's current location;
selecting at least one shared space from the one or more nearby shared spaces based on respective read-access controls associated with the one or more nearby shared spaces; and
transmitting one or more content objects of the selected shared space to the first user.
3 . The method of claim 2 , wherein read-access controls associated with a nearby shared space comprise one or more privacy settings associated with the nearby shared space.
4 . The method of claim 1 , wherein the allowing the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space, further comprises:
receiving, from the first user, a message comprising one or more new content objects;
accessing data indicating a current location of the first user;
determining the first user's write-accessibility to the shared space based at least in part on one or more write-access controls associated with the shared space and a determination whether the first user's current location is within the threshold distance of the location associated with the shared space; and
updating the shared space stored in the data store of shared spaces with the one or more new content objects, if the first user has write-access to the shared space.
5 . The method of claim 4 , wherein the one or more write-access controls associated with the shared space comprise one or more privacy settings associated with the shared space.
6 . A system comprising:
a memory;
one or more processors; and
a non-transitory storage medium storing computer-readable instructions operative, when executed, to cause the one or more processors to:
maintain a data store of shared spaces, wherein each shared space comprises one or more content objects and is associated with a location;
allow, a first user, read-access to the shared spaces based on one or more read access controls with the shared spaces; and
allow the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space.
7 . The system of claim 6 , wherein to allow, a first user, read-access to the shared spaces based on respective privacy settings associated with the shared spaces, further comprises instructions operable to cause the one or more processors to:
access data indicating a current location of the first user;
access the data store of shared spaces;
identify one or more nearby shared spaces wherein each of the nearby shared spaces has a location within a threshold distance from the first user's current location;
select at least one shared space from the one or more nearby shared spaces based on respective read-access controls associated with the one or more nearby shared spaces; and
transmit one or more content objects of the selected shared space to the first user.
8 . The system of claim 7 , wherein read-access controls associated with a nearby shared space comprise one or more privacy settings associated with the nearby shared space.
9 . The system of claim 6 , wherein to allow the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space, further comprises instructions operable to cause the one or more processors to:
receive, from the first user, a message comprising one or more new content objects;
access data indicating a current location of the first user;
determine the first user's write-accessibility to the shared space based at least in part on one or more write-access controls associated with the shared space and a determination whether the first user's current location is within the threshold distance of the location associated with the shared space; and
update the shared space stored in the data store of shared spaces with the one or more new content objects, if the first user has write-access to the shared space.
10 . The system of claim 9 , wherein the one or more write-access controls associated with the shared space comprise one or more privacy settings associated with the shared space.
11 . One or more computer-readable tangible storage media embodying software operable when executed by one or more computing devices to:
maintain a data store of shared spaces, wherein each shared space comprises one or more content objects and is associated with a location;
allow, a first user, read-access to the shared spaces based on one or more read access controls with the shared spaces; and
allow the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space.
12 . The media of claim 11 , wherein to allow, a first user, read-access to the shared spaces based on respective privacy settings associated with the shared spaces, further comprises software operable when executed by one or more computing devices to:
access data indicating a current location of the first user;
access the data store of shared spaces;
identify one or more nearby shared spaces wherein each of the nearby shared spaces has a location within a threshold distance from the first user's current location;
select at least one shared space from the one or more nearby shared spaces based on respective read-access controls associated with the one or more nearby shared spaces; and
transmit one or more content objects of the selected shared space to the first user.
13 . The media of claim 12 , wherein read-access controls associated with a nearby shared space comprise one or more privacy settings associated with the nearby shared space.
14 . The media of claim 11 , wherein to allow the first user write-access to a shared space as long as the first user is within a threshold distance of the location associated with the shared space, further comprises software operable when executed by one or more computing devices to:
receive, from the first user, a message comprising one or more new content objects;
access data indicating a current location of the first user;
determine the first user's write-accessibility to the shared space based at least in part on one or more write-access controls associated with the shared space and a determination whether the first user's current location is within the threshold distance of the location associated with the shared space; and
update the shared space stored in the data store of shared spaces with the one or more new content objects, if the first user has write-access to the shared space.
15 . The media of claim 14 , wherein the one or more write-access controls associated with the shared space comprise one or more privacy settings associated with the shared space.