Patent ID: 7643491

Claim:
A computer-implemented method comprising: receiving an indication that a user has logged-in to a computing device; responsive to the indication, sending, via a peer-to-peer connection, presence information to another user with whom a file sharing relationship exists, the presence information being maintained at the computing device; receiving, from the another user with whom the file sharing relationship exists, an invitation to synchronize files; evaluating, on the computing device, one or more parameters to ascertain whether or not a file sharing connection can be established, wherein the evaluating determines whether or not the file sharing connection can be established by utilizing a synchronization negotiation manager to monitor the one or more parameters that result from file sharing relationships with at least one other computing device; establishing, using the computing device, the file sharing connection in an event said evaluating indicates that the file sharing connection can be established; not establishing the file sharing connection in an event said evaluating indicates that the file sharing connection cannot be established; and in an event the file sharing connection is not established: informing the another user that the computing device will send a separate invitation to synchronize, at a later time, to the another user; utilizing a token to ensure the file sharing connection is established, wherein the token maintains a count of how many times the user and the another user have attempted to synchronize; and in an event the token reaches a predetermined limit, forcing establishing the file sharing connection to ensure that the files are synchronized.