# US 2013/0157699 A1 · Messaging Object Generation for Synchronous Conversation Threads

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0157699 A1
- Document ID: US20130157699A1
- Status: Published application
- Kind: A1
- Application number: 13/330,241
- Filed: 2011-12-19
- Published: 2013-06-20
- Earliest claimed: 2011-12-19
- Assignees: Facebook, Inc.
- Inventors: Mohit Talwar; Miladin Pavlicic; Siddharth Murlidhar
- Web page: https://patentgrep.com/patent/US20130157699A1

## CPC

- H04L 51/18: Commands or executable codes
- H04L 51/216: Handling conversation history, e.g. grouping of messages in sessions or threads
- H04L 51/58: Message adaptation for wireless communication
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In particular embodiments, a messaging device or server may be operable to receive a message including a thread identifier or a list of conversation participants; if the message includes a thread identifier, then append the message to a locally-stored conversation thread possessing the same thread identifier; if the message includes a list of participants, then: search a plurality of locally-stored conversation threads for a conversation threads having participants matching the list of participants; and in response to a match, append the message to the matching thread; in response to failing to find a match, generate an offline identifier for the message and storing the message locally.

## Claims

### Claim 1

A method comprising, by one or more computing systems:
receiving a message including a thread identifier or a list of conversation participants;
if the message includes a thread identifier, then appending the message to a locally-stored conversation thread possessing the same thread identifier;
if the message includes a list of participants, then:
searching a plurality of locally-stored conversation threads for a conversation threads having participants matching the list of participants; and
in response to a match, appending the message to the matching thread;
in response to failing to find a match, generating an offline identifier for the message and storing the message locally.

### Claim 2 (depends on 1)

The method of claim 1, wherein the offline identifier is a universally unique identifier (QUID).

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
generating a message object;
if the message includes a thread identifier, then adding a message body and the thread identifier to the message object;
if the message includes a list of participants, then adding a message body, the list of participants, and the offline identifier to the message object;
transmitting, to a server, the message object and a request for the server to store the message in a mailbox associated with the one or more computing systems.

### Claim 4 (depends on 3)

The method of claim 3, wherein the message object is a JavaScript object notation (JSON) object.

### Claim 5 (depends on 3)

The method of claim 3, further comprising:
receiving, from a server, a thread identifier for one or more locally stored messages lacking thread identifiers.

### Claim 6 (depends on 1)

The method of claim 1, wherein the message is a short message service (SMS) or multimedia service (MMS) message, and is received from an external endpoint represented by a phone number.

### Claim 7 (depends on 1)

The method of claim 1, wherein the message is a short message service (SMS) or multimedia service (MMS) message, and is received from a short code.

### Claim 8 (depends on 1)

The method of claim 1, wherein the message is an outgoing message received from a graphical user interface including a list of participants.

### Claim 9 (depends on 1)

The method of claim 1, wherein the message is a call-log for an outgoing voice call received from a dialer application including a list of participants.

### Claim 10 (depends on 1)

The method of claim 1, wherein the message is a call-log for an incoming voice call received from a dialer application including a list of participants.

### Claim 11

A non-transitory, computer-readable media comprising instructions operable, when executed by one or more computing systems, to:
receive a message including a thread identifier or a list of conversation participants;
if the message includes a thread identifier, then append the message to a locally-stored conversation thread possessing the same thread identifier;
if the message includes a list of participants, then:
search a plurality of locally-stored conversation threads for a conversation threads having participants matching the list of participants; and
in response to a match, append the message to the matching thread;
in response to failing to find a match, generate an offline identifier for the message and storing the message locally.

### Claim 12 (depends on 11)

The media of claim 11, wherein the offline identifier is a universally unique identifier (QUID).

### Claim 13 (depends on 11)

The media of claim 11, the instructions further operable, when executed by one or more computing systems, to:
generate a message object;
if the message includes a thread identifier, then add a message body and the thread identifier to the message object;
if the message includes a list of participants, then add a message body, the list of participants, and the offline identifier to the message object;
transmit, to a server, the message object and a request for the server to store the message in a mailbox associated with the one or more computing systems.

### Claim 14 (depends on 13)

The media of claim 13, wherein the message object is a JavaScript object notation (JSON) object.

### Claim 15 (depends on 13)

The media of claim 13, the instructions further operable, when executed by one or more computing systems, to:
receive, from a server, a thread identifier for one or more locally stored messages lacking thread identifiers.

### Claim 16 (depends on 11)

The media of claim 11, wherein the message is a short message service (SMS) or multimedia service (MMS) message, and is received from an external endpoint represented by a phone number.

### Claim 17 (depends on 11)

The media of claim 11, wherein the message is a short message service (SMS) or multimedia service (MMS) message, and is received from a short code.

### Claim 18 (depends on 11)

The media of claim 11, wherein the message is an outgoing message received from a graphical user interface including a list of participants.

### Claim 19 (depends on 11)

The media of claim 11, wherein the message is a call-log for an outgoing voice call received from a dialer application including a list of participants.

### Claim 20

An apparatus comprising:
one or more processors;
a communications interface;
one or more non-transitory, computer-readable media comprising instructions operable, when executed by the one or more processors, to:
receive a message including a thread identifier or a list of conversation participants;
if the message includes a thread identifier, then append the message to a locally-stored conversation thread possessing the same thread identifier;
if the message includes a list of participants, then:
search a plurality of locally-stored conversation threads for a conversation threads having participants matching the list of participants; and
in response to a match, append the message to the matching thread;
in response to failing to find a match, generate an offline identifier for the message and storing the message locally.
