Abstract:
Exemplary embodiments relate to techniques for facilitating a connection between two users in a call by providing an “answering window” when a user calls. When a caller places a call to a callee, the call invitation may remain open for a window of time during which the caller remains available. The callee may opt to answer the call at any time during the window. During the window, the caller may be placed in a lobby and may share audio and/or video. Accepting the call during the answering window may place the callee in the lobby or may directly convert the interaction into an active call. The callee may request that the window can be altered, or may signal their intention to answer the call at a particular time.
Abstract:
In one embodiment, a method includes sending an availability-notification a caller-user in response to an occurrence of a trigger event; establishing a call session to enable a media stream comprising media of the caller-user that is of a first type to be received by a callee-user; sending the media of the first media type to the callee-user; re-establishing the call session to enable a media stream comprising media of the callee-user that is of a second media type to be received by the caller-user; and sending the media of the second media type to the caller-user.
Abstract:
Exemplary embodiments relate to techniques for sharing live video while maintaining an asynchronous copy of the video. According to some embodiments, a user begins to record video and shares the video with selected other users. If one of the other users opts to join the original user, the shared video upgrades to a live video conversation. If no one (or only some participants) joins the original user, the recorded video becomes an asynchronous artifact in the users' messaging history. In some embodiments, the live video may be recorded and shared in response to a first user initiating a video call with at least a second user, but receiving no answer. The first user begins to share a live video (which may become an asynchronous artifact). If the second user joins the call while the video is being recorded, the conversation may upgraded to a video conversation.
Abstract:
Exemplary embodiments relate to uses of face detection in video, and especially in video calls. In some embodiments, face detection may be used to center a camera shot by maintaining a face in the center of a screen. The centering may be applied selectively, such as by overriding centering if the user is looking off-screen. The video may also be cropped to better fit a face in a screen, or to allow multiple faces to appear on screen. In some embodiments, emphasizing the face over the background (or parts of the face over the whole face) allows for improvement in video call performance. Moreover, these techniques can be used to bring certain areas of a camera shot into focus while de-emphasizing the background (or vice versa).
Abstract:
In one embodiment, a method includes determining an occurrence of a trigger event; sending a notification to the caller-user; receiving a request from the caller-user to initiate the call session; establishing the call session to enable a media stream of the caller-user to be received by the callee-user; and sending the media stream to the callee-user.
Abstract:
Techniques for using user input to tune calls include receiving communication data from a first client device, at a server, directed to a second client device during a call between the first client device and the second client device; forwarding the communication data to the second device; receiving from one of the first client device or the second client device, first user input data; using the first user input data as an input to a call-tuning model; and modifying a call parameter of the call according to output from the call-tuning model in response to the first user input. Other embodiments are described and claimed.
Abstract:
An online system determines one or more metrics describing consumption of content by various users by identifying users of the online system capable of being identified based on information received from multiple client devices. For example, the online system identifies users associated with user identifiers that are also associated with other types of identifying information (e.g., cookies, device identifiers). From the identified users, the online system generates a set of users based on a distribution of characteristics. The distribution of characteristics may be determined by the online system as characteristics of a group of users or received by the online system from a third party system and describes characteristics of users of the third party system. Based on interactions with content by users in the set, the online system determines one or more metrics describing consumption of content.
Abstract:
An online system using attributes of users to select content for presentation to the users predicts one or more attributes of users whose attributes are unavailable to the online system. For a user with one or more attributes unavailable to the online system, the online system applies a model to attributes of additional users to predict one or more attributes of the user. Attributes of the additional user use in the prediction may include demographic information and interactions with content by the additional users. The online system may determine an accuracy of the model by using the model to predict attributes for users whose attributes are known to the online system and comparing the predicted attributes to the known attributes. If the model's accuracy is less than a threshold value, the online system discontinues using the model to predict attributes of users.
Abstract:
Exemplary embodiments relate to techniques for sharing live video while maintaining an asynchronous copy of the video. According to some embodiments, a user begins to record video and shares the video with selected other users. If one of the other users opts to join the original user, the shared video upgrades to a live video conversation. If no one (or only some participants) joins the original user, the recorded video becomes an asynchronous artifact in the users' messaging history. In some embodiments, the live video may be recorded and shared in response to a first user initiating a video call with at least a second user, but receiving no answer. The first user begins to share a live video (which may become an asynchronous artifact). If the second user joins the call while the video is being recorded, the conversation may upgraded to a video conversation.
Abstract:
In one embodiment, a method includes determining, by a computer server machine, that a callee-user is available for a communication session based on location information associated with a client system of the callee-user; sending, by the computer server machine, in response to determining that the callee-user is available, a notification to a client system of a caller-user indicating that the callee-user is available; receiving, by the computer server machine, a request from the client system of the caller-user to initiate the communication session; establishing, by the computer server machine, the communication session to enable a media stream comprising media captured at the client system of the caller-user to be received at the client system of a callee-user; and sending, by the computer server machine, the media captured at the client system of the caller-user to the client system of the callee-user.