Abstract:
At an electronic device with a touch-sensitive display, display a message transcript, where the message transcript includes at least one message from at least a first user. Determine, based at least in-part on the at least one message, a plurality of suggested one or more characters. Display, on the touch-sensitive display, the plurality of suggested one or more characters. Detect an input on the touch-sensitive display. Determine whether the input represents user selection of one of the plurality of suggested one or more characters. Display the selected one of the plurality of suggested one or more characters in the message transcript. Send the selected one or more characters to the first user.
Abstract:
A framework for providing multi-device collaboration is described herein. In one embodiment, a method for providing multi-device collaboration between first and second devices can include transferring an initializing function call to create a session object. The function call specifies a mode of the session object, a service type, and a service name. The session object can include functions to discover the second device, connect with the second device, and provide data transport between the connected first and second devices. The service name can include a truncated name, a unique identification, and a state of service of a software application associated with the first device. The method can include detecting a network and advertising the service type and the service name via the network. The service type and service name can be advertised prior to establishing the connection between the first and second devices.
Abstract:
An apparatus and method for detecting and analyzing spikes in network jitter and the estimation of a jitter buffer target size is disclosed. Detected spikes may be classified as jump spikes or slope spikes, and a clipped size of detected spikes may be used in the estimation of the jitter buffer target. Network characteristics and conditions may also be used in the estimation of the jitter buffer target size. Samples may be modified during playback adaptation to improve audio quality and maintain low delay of a receive chain.
Abstract:
A system and method for using bloom filters to identify service providers. Service providers generate bloom filters with the user ID codes of registered users and exchange the filters with one another. A first provider will query its own database to determine if the first user is registered with the first provider. If the first user is not registered with the first provider, then the first provider will query its filters to identify other providers with which the first user may be registered. A positive response from a filter indicates that the first user may or may not be registered with the provider associated with that filter, and a negative response indicates with certainty that the first user is not registered with that provider. The request to locate the first user is only transmitted to those providers for which a positive filter response has been received.
Abstract:
An apparatus, method, and machine-readable medium are described for establishing, maintaining and utilizing backup channels in a peer-to-peer ("P2P") network. For example, in one embodiment, each mobile device can establish a primary P2P communication channel with one or more other mobile devices. Once the primary channel is established, each mobile device can use the primary channel to exchange secondary channel connection data and can subsequently open one or more secondary P2P communication channels with the other mobile devices. Upon detecting that the primary P2P communication channel has failed or has degraded below a specified threshold (e.g., a bandwidth or bitrate threshold), one of the secondary P2P communication channels can be automatically promoted to a primary P2P communication channel.
Abstract:
The subject disclosure provides systems and methods for sender verification for encrypted electronic messaging. The discloses systems and methods may facilitate reducing or preventing spam messages between electronic devices. An electronic device may determine, prior to sending an electronic message to another device with a first level of encryption that is higher than a second level of encryption, whether the electronic device is eligible to send the message with the first level of encryption. If an electronic device determines that it is ineligible to send the message with the first level of encryption to another electronic device, a first message from the electronic device to the other electronic device may be sent with the second level of encryption as part of an unencrypted or low encryption handshake between the devices.
Abstract:
A service for providing messaging extension apps can be an online store that can be browsed and searched for the apps. The store uses extension app identifiers which are related to app identifiers that are sent between devices in a conversation of messages so that a receiving device can, when it does not have the extension app installed to interact with received content, use the extension app identifier to download and install the required extension app. In one embodiment, the download and install can occur while the messaging app remains the foreground app, and the messaging app adds an icon of the newly installed extension app into a browsable tray in the UI of the messaging app.
Abstract:
A device provides user interfaces for capturing and sending media, such as audio, video, or images, from within a message application. The device detects a movement of the device and in response, plays or records an audio message. The device detects a movement of the device and in response, sends a recorded audio message. The device removes messages from a conversation based on expiration criteria. The device shares a location with one or more message participants in a conversation.
Abstract:
A device provides user interfaces for capturing and sending media, such as audio, video, or images, from within a message application. The device detects a movement of the device and in response, plays or records an audio message. The device sends the recorded audio message in response to detecting a movement of the device. The device removes messages from a conversation based on expiration criteria. The device shares a location with one or more message participants in a conversation.
Abstract:
In some embodiments, an electronic device displays status for tracked entities. In some embodiments, an electronic device provides indications of the status of one or more users. In some embodiments, an electronic device presents information about consenting users selected by the user of the electronic device in an aggregated matter that makes accessing and interacting with such information more efficient. In some embodiments, an electronic device facilitates display of widgets associated with users of a family account.