Message synchronization across multiple clients
Abstract
Methods for message synchronization are described herein. The methods include establishing, via a message server, a communication channel session between a first client of a first user and a second client among a plurality of clients of a second user. The second client is designated as a primary client among the plurality of clients of a second user during the session, and a message to be exchanged between the first client and the second client via the message server is enabled. The methods may also include providing, from the message server, message history associated with the session to a message history data store comprising a computing device that is discrete from the message server. The message history may be provided to a third client among the plurality of clients of the second user via the message history data store, rather than the message server.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 - 7 . (canceled)
8 . A system for message synchronization, the system comprising:
a message server configured to:
establish a communication channel session between a first client of a first user and a second client among a plurality of clients of a second user;
designate the second client as a primary client among the plurality of clients of the second user during the session;
enable a message to be exchanged between the first client and the second client;
a message history data store comprising a computing device discrete from the message server configured to:
receive message history associated with the session; and
provide the message history to a third client among the plurality of clients of the second user via the message history data store rather than the message server.
9 . The system of claim 8 , wherein the communication channel is predetermined before establishing the communication channel session.
10 . The system of claim 8 , wherein the message server is further configured to:
determine communication capabilities of the first client; determine communication capabilities of the second client; and restrict the communication channel based on capabilities of the first client being less than the capabilities of the second client.
11 . The system of claim 8 , wherein the communication channel session is a first communication channel session, and wherein the message server is further configured to:
establish a second communication channel session between the first and the third client; terminate the second client as the primary client; and designate the third client as the primary client among the plurality of clients of the second user.
12 . The system of claim 8 , wherein the message history is provided to the third client via the message history data store in response to polling, via the third client, received at the message history data store.
13 . The system of claim 8 , wherein the communication channel session is a first communication channel session, and wherein the message history is provided to the third client via the message history data store by pushing the message history to the third client via a second communication channel that is distinct from the first communication channel.
14 . The system of claim 8 , wherein designating the second client as the primary client comprises restricting any other clients of the plurality of clients of the second user to access the message server during the communication channel session, except via the message history data store.
15 . A computer program product for message synchronization, the computer program product comprising one or more computer readable storage mediums having program code embodied therewith, the program code executable by a processor to perform a method comprising:
establishing, via a message server, a communication channel session between a first client of a first user and a second client among a plurality of clients of a second user; designating the second client as a primary client among the plurality of clients of the second user during the session; enabling a message to be exchanged between the first client and the second client via the message server; providing message history associated with the session to a message history data store comprising a computing device that is discrete from the message server; and providing the message history to a third client among the plurality of clients of the second user via the message history data store, rather than the message server.
16 . The computer program product of claim 15 , wherein the communication channel is predetermined before establishing the communication channel session.
17 . The computer program product of claim 15 , the method further comprising:
determining communication capabilities of the first client; determining communication capabilities of the second client; and restricting the communication channel based on capabilities of the first client being less than the capabilities of the second client.
18 . The computer program product of claim 15 , wherein the communication channel session is a first communication channel session, the method further comprising:
establishing a second communication channel session between the first and the third client; terminating the second client as the primary client; and designating the third client as the primary client among the plurality of clients of the second user.
19 . The computer program product of claim 15 , wherein the communication channel session is a first communication channel session, and wherein providing the message history to the third client via the message history data store comprises providing the message history to the third client via a second communication channel that is distinct from the first communication channel.
20 . The computer program product of claim 15 , wherein designating the second client as the primary client comprises restricting any other clients of the plurality of clients of the second user to access the message server during the communication channel session, except via the message history data store.Join the waitlist — get patent alerts
Track US2016344807A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.