Patent ID: 8832190

Claim:
A system comprising: one or more computing devices; and computer-readable media coupled to the one or more computing devices and having instructions stored thereon which, when executed by the one or more computing devices, cause the one or more computing devices to perform operations comprising: chat-enabling a first social circle and a second social circle in response to user input provided by a first user, the first social circle and the second social circle being defined by the first user and comprising one or more contacts, the one or more contacts comprising a second user; for each of the one or more contacts, issuing a subscription request; determining that the subscription request associated with the second user is fulfilled; in response to determining that the subscription request associated with the second user is fulfilled, adding the second user as a chat contact of the first user and adding the first user as a chat contact of the second user; setting a first visibility of the first user based on the user input provided by the first user and associated with the first social circle, the first visibility including an availability status of the first user in a first time span; setting a second visibility of the first user based on the user input provided by the first user and associated with the second social circle, the second visibility including an availability status of the first user in a second time span; determining whether the first and second visibilities of the first user conflict for the second user that is in both the first social circle and the second social circle by combining the first and second visibilities based on the first time span and the second time span; in response to determining that the first and second visibilities of the first user conflict for the second user: ranking the first and second visibilities based at least in part on priorities associated with a first type of the first social circle and a second type of the second social circle; resolving the conflict by determining a maximum availability status of the first user with respect to the second user based on the rankings of the first and second visibilities; and providing the maximum availability status of the first user to the second user at a user-specific time.