# US 11,451,505 B2 · Storage and processing of ephemeral messages

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

- Number: US 11,451,505 B2
- Document ID: US11451505B2
- Status: Granted
- Kind: B2
- Application number: 16/946,310
- Filed: 2020-06-16
- Published: 2020-12-03
- Granted: 2022-09-20
- Earliest claimed: 2015-02-06
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Aaron Son
- Web page: https://patentgrep.com/patent/US11451505B2

## CPC

- H04L 51/42: Mailbox-related aspects, e.g. synchronisation of mailboxes
- H04L 51/18: Commands or executable codes
- H04L 51/216: Handling conversation history, e.g. grouping of messages in sessions or threads
- H04L 51/234: for tracking messages
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A server includes volatile and non-volatile memories for storing messages received from a client device. A message reception module of the server stores a message received from a first client device in the volatile memory for an extended time period based on an indicator included in the message. The message reception module deletes the message from the volatile memory based on detection of a triggering event or stores the message in the non-volatile memory based on not detecting the triggering event before the extended time period has expired. The triggering event may include the message having been read by all specified recipients of the message. The indicator may be included in the message based on a relationship of the message to other messages. The message including the indicator may be related to other messages as part of a same conversation that has been determined to be suitable for short-term storage.

## Claims

### Claim 1

A system comprising:
a processor; and
a memory storing instructions that, when executed by the processor, configure the processor to perform operations comprising:
determining that a message includes an indicator to store the message for a specified time period;
storing the message in a volatile memory based on the determination; and
copying the message from the volatile memory to a non-volatile memory based on not detecting a triggering event during the specified time period.

### Claim 2 (depends on 1)

The system of claim 1, the operations further comprising:
deleting the message from the volatile memory based on detecting the triggering event prior to an expiration of the specified time period.

### Claim 3 (depends on 1)

The system of claim 1, wherein the triggering event comprises the message having been read by all specified recipients of the message.

### Claim 4 (depends on 1)

The system of claim 1, wherein the indicator is included in the message based on at least one of: a mode of operation of a client device which sent the message; a relation of the message to another message; a count of messages related to the message; a size of the message; a recipient of the message; or a subject of the message.

### Claim 5 (depends on 4)

The system of claim 4, wherein the relation of the message to the other message including the indicator comprises being part of a same conversation as the other message, and
wherein the other message was deleted within the specified time period.

### Claim 6 (depends on 4)

The system of claim 4, wherein the indicator is included in the message based on a chatroom mode of operation of a client device which sent the message, the triggering event comprising exiting the chatroom mode.

### Claim 7 (depends on 6)

The system of claim 6, the operations further comprising:
transmitting a warning to the client device that the message will be automatically deleted upon exiting chatroom mode.

### Claim 8 (depends on 1)

The system of claim 1, the operations further comprising:
transmitting the message to a client device associated with a recipient of the message upon receipt of a request from the client device;
inserting instructions in the message to instruct the client device to display the message for only a specified time period; and
deleting the message from at least one of the volatile memory and the non-volatile memory based on the specified time period expiring.

### Claim 9 (depends on 8)

The system of claim 8, wherein the triggering event comprises responding to the message at the client device.

### Claim 10

A method comprising:
determining that a message includes an indicator to store the message for a specified time period;
storing the message in a volatile memory based on the determination; and
copying the message from the volatile memory to a non-volatile memory based on not detecting a triggering event during the specified time period.

### Claim 11 (depends on 10)

The method of claim 10, further comprising:
deleting the message from the volatile memory based on detecting the triggering event prior to an expiration of the specified time period.

### Claim 12 (depends on 10)

The method of claim 10, wherein the triggering event comprises the message having been read by all specified recipients of the message.

### Claim 13 (depends on 10)

The method of claim 10, wherein the indicator is included in the message based on at least one of: a mode of operation of a client device which sent the message; a relation of the message to another message; a count of messages related to the message; a size of the message; a recipient of the message; or a subject of the message.

### Claim 14 (depends on 13)

The method of claim 13, wherein the relation of the message to the other message including the indicator comprises being part of a same conversation as the other message, and
wherein the other message was deleted within the specified time period.

### Claim 15 (depends on 13)

The method of claim 13, wherein the indicator is included in the message based on a chatroom mode of operation of a client device which sent the message, the triggering event comprising exiting the chatroom mode.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
transmitting a warning to the client device that the message will be automatically deleted upon exiting chatroom mode.

### Claim 17 (depends on 10)

The method of claim 10, further comprising:
transmitting the message to a client device associated with a recipient of the message upon receipt of a request from the client device;
inserting instructions in the message to instruct the client device to display the message for only a specified time period; and
deleting the message from at least one of the volatile memory and the non-volatile memory based on the specified time period expiring.

### Claim 18 (depends on 17)

The method of claim 17, wherein the triggering event comprises responding to the message at the client device.

### Claim 19

A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a computer, cause the computer to perform operations comprising:
determining that a message includes an indicator to store the message for a specified time period;
storing the message in a volatile memory based on the determination; and
copying the message from the volatile memory to a non-volatile memory based on not detecting a triggering event during the specified time period.

### Claim 20 (depends on 19)

The computer-readable medium of claim 19, the operations further comprising:
deleting the message from the volatile memory based on detecting the triggering event prior to an expiration of the specified time period.
