Abstract:
In one embodiment, a method includes determining a current geo-location of a mobile client computing device associated with a first user; and selecting content associated with the current geo-location that was provided by a second user. The selection is based at least in part on a relationship between the first and second users. The method also includes sending to the mobile client computing device while the mobile client computing device is at or near the current geo-location a notification associated with the content.
Abstract:
A social networking system user identifies one or more social networking system users authorized to present content items to the user via the social networking system (“authorized users”). When an additional user requests presentation of a content item to the user, the social networking system determines if the additional user is an authorized user. If the additional user is an authorized user, the content item is presented to the user. However, if the additional user is not an authorized user, the social networking system identifies the additional user to the user along with a request to identify the additional user as an authorized user. If the user identifies the additional user as an authorized user in response to the request, the content item is presented to the user.
Abstract:
A messaging system facilitates communication between users through various messaging channels. The messaging system supports multiple communication channels and includes a messaging module that automatically selects one or more of the messaging channels for delivering a message to a recipient of the message using, for example, a set of policy rules or a trained model. The messaging module may also provide, in a user interface for sending and receiving messages, a visual indication of the selected messaging channel to the sender of the message to provide the user with transparency about how the message will be delivered. Additionally, the message may be delivered via multiple messaging channels, where the messaging module may rescind messages from some of the messaging channels upon receiving a reply from the recipient of the message or other confirmation that the recipient has seen the message via one of the communication channels.
Abstract:
In one embodiment, a method includes one or more server computing devices receiving first data associated with an activity recently performed or currently being performed by a user of one or more client computing devices. A current state of the user is inferred at least in part by analyzing at least the first data, and second data associated with one or more historical durations associated with the inferred current state is accessed. An end time associated with the inferred current state is estimated based at least in part on the second data.
Abstract:
A messaging system facilitates communication between users through various messaging channels. The messaging system supports multiple communication channels and includes a messaging module that automatically selects one or more of the messaging channels for delivering a message to a recipient of the message using, for example, a set of policy rules or a trained model. The messaging module may also provide, in a user interface for sending and receiving messages, a visual indication of the selected messaging channel to the sender of the message to provide the user with transparency about how the message will be delivered. Additionally, the message may be delivered via multiple messaging channels, where the messaging module may rescind messages from some of the messaging channels upon receiving a reply from the recipient of the message or other confirmation that the recipient has seen the message via one of the communication channels.