摘要:
An invitation service performs a series of transactions to enable P2P communication between two or more mobile data processing devices. Prior to attempting to establish a P2P network communication channel, the invitation service may first collect network information for each of the mobile devices and use the network information to determine if a direct P2P network communication channel is feasible. If a direct connection is feasible, then the invitation service provides for direct P2P communication, pushing the necessary network information to each of the mobile devices. If, however, a direct connection is infeasible or if a direct connection is attempted and fails, then the invitation service may identify network information associated with a relay service. The network information may then be used by any pair of mobile devices to establish a connection through the relay service.
摘要:
An apparatus, method, and machine-readable medium are described for establishing peer-to-peer (“P2P”) communication channels. In particular, in one embodiment, a matchmaker service performs a series of operations to service match requests received from a group of mobile devices. In one embodiment, the matchmaker service groups the match requests into matchable sets based on the application for which the requests are received and one or more variables associated with the application. Match requests within each match set can then be matched based on variables such as the NAT type, connection type and language associated with each of the mobile devices. Other variables such as geographical location, experience level, and age of the match requests may also be used to render match decisions.
摘要:
An apparatus, method, and machine-readable medium are described for establishing peer-to-peer (“P2P”) communication channels. In particular, in one embodiment, an invitation service performs a series of transactions to enable P2P communication between two or more mobile data processing devices. Prior to attempting to establish a P2P network communication channel, the invitation service may first collect network information for each of the mobile devices and use the network information to determine if a direct P2P network communication channel is feasible. If a direct connection is feasible, then the invitation service provides for direct P2P communication, pushing the necessary network information to each of the mobile devices. If, however, a direct connection is infeasible or if a direct connection is attempted and fails, then the invitation service may identify network information associated with a relay service. The network information may then be used by any pair of mobile devices to establish a connection through the relay service. In addition, in one embodiment, the invitation service can perform its functions without maintaining any per-connection state information for any of the mobile devices.
摘要:
An apparatus, method, and machine-readable medium are described for establishing peer-to-peer (“P2P”) communication channels. In particular, in one embodiment, a matchmaker service performs a series of operations to service match requests received from a group of mobile devices. In one embodiment, the matchmaker service groups the match requests into matchable sets based on the application for which the requests are received and one or more variables associated with the application. Match requests within each match set can then be matched based on variables such as the NAT type, connection type and language associated with each of the mobile devices. Other variables such as geographical location, experience level, and age of the match requests may also be used to render match decisions.
摘要:
An apparatus, method, and machine-readable medium are described for managing data within a friend service. In one embodiment, a key/value data store can be used to provide an efficient and highly-scalable friend service database. Various techniques can be used to ensure data consistency between friend service data records. For example, in one embodiment, operations are detected which require updates to a plurality of related friend state records. A key may be generated to represent each of the operations and then used to create an entry in a write-ahead log database. In one embodiment, each entry in the write-ahead log database may specify the operation to be performed on the friend state records. If the plurality of friend state records are successfully updated, then the entry in the write-ahead log database may be deleted. However, if the plurality of friend state records are not successfully completed, then the entry is not deleted from the write-ahead log database. The friend state records associated with old entries in the write-ahead log database are checked for consistency and inconsistent records are repaired. In addition, optimistic locking techniques may be used in one embodiment to improve performance of the friend service database.
摘要:
A client computing device registers an email address as an identifier for online communication sessions. An email validation request message is received from the client computing device to validate an email address that includes the email address and an online communication session profile identifier that identifies an online communication session profile of a user of the client computing device. Responsive to determining that the email address has been validated, an email validated success message is sent to the client computing device. An activated email address request message is received from the client computing device that includes the email address and the online communication session profile identifier. The email address is then activated as an identifier associated with the online communication session profile to be used for online communication sessions.
摘要:
An online communication session invitation request message for an online communication session is received from an initiating client computing device. The invitation request message includes connection data of the initiating client computing device and an online communication session endpoint identifier of an intended participant of the online communication session. The session endpoint identifier is associated with a plurality of push tokens that correspond to a plurality of recipient client computing devices respectively. An invitation request message is sent in the form of a push notification message to each of the plurality of recipient client computing devices using the corresponding push tokens. Each invitation request message includes the connection data of the initiating client computing device.
摘要:
An online communication session invitation request message for an online communication session is received from an initiating client computing device. The invitation request message includes connection data of the initiating client computing device and an online communication session endpoint identifier of an intended participant of the online communication session. The session endpoint identifier is associated with a plurality of push tokens that correspond to a plurality of recipient client computing devices respectively. An invitation request message is sent in the form of a push notification message to each of the plurality of recipient client computing devices using the corresponding push tokens. Each invitation request message includes the connection data of the initiating client computing device.
摘要:
Methods and arrangements for facilitating generation of media mixes for a program participant based at least in part on media library inventory information provided by a number of program participants. Those individuals that decide to be program participants are interested in organizing, maintaining and playing their music, based at least in part, on data derived from a population of other participants in the program. A program participant must send, and the system, receive, data representative of that program participant's media inventory. The system or program determines a relative similarity of each item from the collection of program participants as compared to each other item and from the similarity information clusters of similar items are identified. The clusters can be used to identify clusters of similar items in an individual program participant's media library and therefrom mixes of similar media items can be created.
摘要:
Registering a client computing device for online communication sessions. A registration server receives a message that has a push token that is unique to the client computing device and a phone number of the client computing device from an SMS (Short Message Service) transit device, which received an SMS message having the push token from the client computing device and determined the phone number of the client computing device from that SMS message. The registration server associates the push token and the phone number and stores it in a registration data store, which is used for inviting users for online communication sessions.