System and method for serving a message client

US9935907B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9935907-B2
Application numberUS-201314084142-A
CountryUS
Kind codeB2
Filing dateNov 19, 2013
Priority dateNov 20, 2012
Publication dateApr 3, 2018
Grant dateApr 3, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 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. 2. The server system of claim 1 , wherein the message service layer is configured to communicate with one or more outside message service providers including at least one email message service provider. 3. The server system of claim 2 , wherein the message service layer is configured to maintain an IMAP connection to an account maintained at the outside email message service provider and wherein the plurality of client messaging application instances include at least two client messaging application instances configured to interact with the account. 4. The server system of claim 2 , further comprising the conflict resolution module configured to resolve conflicts between two or more message updates within one or both of the mailbox service layer and the message service layer. 5. The server system of claim 2 , wherein the message service layer comprises a message processor configured to convert email messages to a native client format. 6. The server system of claim 5 , further comprising an attachment server configured to store resources corresponding to email attachments, wherein the message processor is configured to transform an email attachment in an email message to a reference to a resource stored by the attachment server. 7. The server system of claim 1 , wherein the message service layer includes a plurality of service provider modules, wherein each of the service provider modules is configured to interact with a different one of a plurality of outside message service providers. 8. The server system of claim 1 , wherein the mailbox service layer includes a deferred data engine configured to conditionally apply a message update to a message. 9. The server system of claim 1 , wherein the connection service is configured to communicate with a plurality of client messaging application instances using a real-time protocol connection. 10. The server system of claim 9 , wherein the real-time protocol connection includes a compressed websocket connection. 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. 12. The method of claim 11 , further comprising resolving, at the mailbox service layer, a message state consistency conflict between the message update originating from the first client application instance and another message update originating from the message service provider. 13. The method of claim 12 , wherein resolving the message state consistency conflict comprises: assigning a revision identifier to each of the message updates; and resolving the message state consistency conflict based on the revision identifier. 14. The method of claim 11 , wherein transmitting the translated message update to a message service provider comprises transmitting an email update of an email account associated with the first client application instance to an email service provider that maintains the email account. 15. The method of claim 14 , wherein the message update includes a new email message to send. 16. The method of claim 14 , wherein the message update includes a new label to be applied to a thread of email messages. 17. A method comprising: at a message service layer o

Assignees

Inventors

Classifications

  • H04L51/22Primary

    Electricity · mapped topic

  • Message adaptation to terminal or network requirements · CPC title

  • Electricity · mapped topic

  • Content adaptation, e.g. replacement of unsuitable content · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9935907B2 cover?
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 tha…
Who is the assignee on this patent?
Dropbox Inc
What technology area does this patent fall under?
Primary CPC classification H04L51/22. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 03 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).