The prevalence of instant messaging is ever increasing as users are able to communicate instant messages using an ever expanding variety of devices, such as personal computers, wireless phones, media devices, and so on. Instant messaging may be utilized, for instance, to enable two or more users to exchange messages via a network during an instant messaging session. When two users are online at the same time, instant messages may be exchanged in real time between the two users. Thus, the instant messages may be utilized to support a text conversation in a manner that mimics how the two users would participate in a typical spoken conversation.
Typical instant messaging sessions, however, do not provide data sharing techniques that may persist outside of the instant messaging session. For example, sharing data in a typical instant messaging session generally requires that each of the users is online at the same time. Therefore, if a user is not available via the instant messaging session, that user is not provided with data that is shared by the other users that are online. Further, no sharing state is persisted between instant messaging sessions. This may lead to inconsistencies in the data between the users which may be difficult to manually manage, such as to determine which version of the data is current, whether a particular version includes changes from each of the clients, and so on. These inconsistencies may lead to user frustration and consequently a diminished instant messaging experience.