System and method for serving a message client
First Claim
1. A server system comprising:
- one or more processors; and
a computer-readable storage medium coupled to the one or more processors, the computer-readable storage medium having stored thereon computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to execute;
a connection service configured to communicate with a plurality of client messaging application instances;
a mailbox service layer configured to temporarily store and process message updates inbound from and outbound to one or more of the client messaging application instances;
a message service layer configured to communicate with one or more outside message service providers and to directly convert message updates received from the one or more message service providers to a client native message format by removing one or more web instructions from at least one message update, wherein the client native message format is compatible with native rendering by a client application instance, wherein the one or more web instructions include one or more styling attributes, and wherein the message service layer comprises a first provider module that is configured to interact with an outside message service providers;
a conflict resolution module configured to resolve a message state consistency conflict between two or more message updates originating from two or more components including the message service layer, wherein the message update originating from the message service layer has a higher priority over other message updates originating from other components including the mailbox service layer;
a first intermediary transfer layer communicatively coupled between the connection service and the mailbox service layer, the first intermediary transfer layer including a first inbound message data queue to transfer message updates from the plurality of client messaging application instances to the mailbox service layer and a first outbound message data queue to transfer message updates from the mailbox service layer to the connection service for communication to one or more of the client messaging application instances; and
a second intermediary transfer layer communicatively coupled between the mailbox service layer and the message service layer, the second intermediary transfer layer including a second inbound message data queue to transfer translated message updates from the messaging service to the mailbox service and a second outbound message data queue to transfer message updates from the mailbox service layer to the message service layer.
4 Assignments
0 Petitions
Accused Products
Abstract
A system and method for synchronizing messages between client application instances and a message service provider includes a connection service communicatively coupled to a plurality of client messaging application instances; a first intermediary transfer layer with an inbound message data queue that queues message updates of a client application instance and an outbound message data queue that queues message updates and notifications from a mailbox service layer; a mailbox service layer communicatively coupled to the connection service through the first intermediary transfer layer; a second intermediary transfer layer with an mailbox message data queue that contains queued message data directed at the mailbox service layer and a message service data queue that contains queued message updates directed at a message service layer; and a message service layer configured for message interactions with an outside message service provider.
145 Citations
21 Claims
-
1. A server system comprising:
-
one or more processors; and a computer-readable storage medium coupled to the one or more processors, the computer-readable storage medium having stored thereon computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to execute; a connection service configured to communicate with a plurality of client messaging application instances; a mailbox service layer configured to temporarily store and process message updates inbound from and outbound to one or more of the client messaging application instances; a message service layer configured to communicate with one or more outside message service providers and to directly convert message updates received from the one or more message service providers to a client native message format by removing one or more web instructions from at least one message update, wherein the client native message format is compatible with native rendering by a client application instance, wherein the one or more web instructions include one or more styling attributes, and wherein the message service layer comprises a first provider module that is configured to interact with an outside message service providers; a conflict resolution module configured to resolve a message state consistency conflict between two or more message updates originating from two or more components including the message service layer, wherein the message update originating from the message service layer has a higher priority over other message updates originating from other components including the mailbox service layer; a first intermediary transfer layer communicatively coupled between the connection service and the mailbox service layer, the first intermediary transfer layer including a first inbound message data queue to transfer message updates from the plurality of client messaging application instances to the mailbox service layer and a first outbound message data queue to transfer message updates from the mailbox service layer to the connection service for communication to one or more of the client messaging application instances; and a second intermediary transfer layer communicatively coupled between the mailbox service layer and the message service layer, the second intermediary transfer layer including a second inbound message data queue to transfer translated message updates from the messaging service to the mailbox service and a second outbound message data queue to transfer message updates from the mailbox service layer to the message service layer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
at a connection service on a server system, maintaining a plurality of real-time connections between the connection service and a plurality of client application instances wherein the server system further comprises one or more processors, a computer readable storage medium coupled to the one or more processors, a first transfer layer, a mailbox service layer, and a message service layer; at the connection service on the server system, receiving a message update from a first one of the client application instances; transmitting, by the server system, the message update through an inbound queue of the first transfer layer to the mailbox service layer; at the mailbox service layer on the server system, temporarily storing the message update; transmitting, by the server system, the message update from the mailbox service layer through a message service queue of a second transfer layer to the messaging service layer; at the messaging service layer and via a first provider module that is configured to interact with a first outside message service provider, directly converting the message update to a client native message format by removing one or more web instructions from at least one message update, resolving a message state consistency conflict between two or more message updates originating from two or more components including the message service layer, wherein the message update originating from the message service layer has a higher priority over other message updates originating from other components including the mailbox service layer, wherein the client native message format is compatible with the first outside message service provider, and wherein the one or more web instructions include one or more styling attributes; and at the message service layer on the server system, transmitting the translated message update to the first outside message service provider. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
at a message service layer on a server system, receiving a message update from a first outside message service provider, the message update associated with an account, wherein the server system further comprises one or more processors, a computer readable storage medium coupled to the one or more processors, a mailbox service layer, a first transfer layer, and a connection service; at the message service layer and via a first provider module that is configured to interact with the first outside message service provider, directly converting the message update to a client native message format by removing one or more web instructions from at least one message update, resolving a message state consistency conflict between two or more message updates originating from two or more components including the message service layer, wherein the message update originating from the message service layer has a higher priority over other message updates originating from other components including the mailbox service layer, wherein the client native message format is compatible with native rendering by a client application instance, and wherein the one or more web instructions include one or more styling attributes; transmitting the translated message update through a message service queue of the first transfer layer to the mailbox service layer; at the mailbox service layer on the server system, caching the message update for communication to a client application instance associated with the account; transmitting, by the server system, the message update through an outbound queue to the connection service; and communicating the message update from the connection service on the server system to the client application instance associated with the account. - View Dependent Claims (18, 19, 20, 21)
-
Specification