# US 10,484,327 B1 · Systems and methods for presenting in-application messages

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

- Number: US 10,484,327 B1
- Document ID: US10484327B1
- Status: Granted
- Kind: B1
- Application number: 16/458,786
- Filed: 2019-07-01
- Granted: 2019-11-19
- Earliest claimed: 2019-07-01
- Assignees: Braze, Inc.
- Applicants: Braze, Inc.
- Inventors: Brian Wheeler; Jared Poelman
- Web page: https://patentgrep.com/patent/US10484327B1

## CPC

- H04L 51/23: Reliability checks, e.g. acknowledgments or fault reporting
- G06F 11/0793: {Remedial or corrective actions (recovery from an exception in an instruction pipeline G06F9/3861; by retry G06F11/1402; for recovering from a failure of a protocol instance or entity H04L69/40)}
- H04L 51/046: Interoperability with other network applications or services
- H04L 51/06: Message adaptation to terminal or network requirements
- H04L 51/066: Format adaptation, e.g. format conversion or compression
- H04L 51/10: Multimedia information
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods for causing an in-application message to be presented to a user of a software application track when in-application message presentation failures occur. If message presentation failures occur too frequently, the size of image or media files being sent to software application to generate in-application messages is reduced in an attempt to reduce the number of message presentation failures that are occurring.

## Claims

### Claim 1

A method of causing in-application messages to be presented to a user who is using a software application on a user computing device, comprising:
monitoring a plurality of attempts to present in-application messages to a user of a software application running on a user computing device over a first monitoring period of time;
determining when attempts to present the user with in-application messages during the first monitoring period fail;
calculating a first presentation failure rate which is based on a number of times that an attempt to present the user with an in-application message during the first monitoring period failed and a total number of attempts that have been made to present the user with in-application messages during the first monitoring period;
comparing the first presentation failure rate to a failure threshold value; and
causing the amount of data comprising at least some in-application message files downloaded to the software application to be reduced when the first presentation failure rate is determined to be greater than the failure threshold value.

### Claim 2 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises changing an in-application message media setting of the software application.

### Claim 3 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises sending a communication to a server that sends in-application messages to the software application.

### Claim 4 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises causing at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 5 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises causing an image quality of at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 6 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises causing a resolution of at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 7 (depends on 1)

The method of claim 1, wherein causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced comprises causing the amount of data comprising the in-application message files downloaded to the software application to be reduced only for those in-application message files containing media that is not likely to be presented to the user.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
monitoring a plurality of attempts to present in-application messages to the user of the software application during a second monitoring period of time;
determining when attempts to present the user with in-application messages during the second monitoring period fail;
calculating a second presentation failure rate which is based on a number of times that an attempt to present the user with an in-application message during the second monitoring period failed and a total number of attempts that have been made to present the user with in-application messages during the second monitoring period;
comparing the second presentation failure rate to a second failure threshold value; and
causing the amount of data comprising at least some of the in-application message files downloaded to the software application to be increased when the second presentation failure rate is determined to be equal to or less than the second failure threshold value.

### Claim 9 (depends on 1)

The method of claim 1, wherein determining when attempts to present the user with in-application messages during the first monitoring period fail comprises determining when there are errors or failures during attempts to download media files to the user computing device.

### Claim 10 (depends on 1)

The method of claim 1, wherein monitoring a plurality of attempts to present in-application messages to a user of a software application comprises a presentation monitoring unit of a customer engagement service receiving reports about message presentation failures from an element of the software application on the user computing device.

### Claim 11 (depends on 1)

The method of claim 1, wherein monitoring a plurality of attempts to present in-application messages to a user of a software application comprises a presentation monitoring unit of a customer engagement service determining that there have been one or more errors or failures during attempts to download media files to the user computing device.

### Claim 12

A system for causing in-application messages to be presented to a user who is using a software application on a user computing device, comprising:
means for monitoring a plurality of attempts to present in-application messages to a user of a software application running on a user computing device over a first monitoring period of time;
means for determining when attempts to present the user with in-application messages during the first monitoring period fail;
means for calculating a first presentation failure rate which is based on a number of times that an attempt to present the user with an in-application message during the first monitoring period failed and a total number of attempts that have been made to present the user with in-application messages during the first monitoring period;
means for comparing the first presentation failure rate to a failure threshold value; and
means for causing the amount of data comprising at least some in-application message files downloaded to the software application to be reduced when the first presentation failure rate is determined to be greater than the failure threshold value.

### Claim 13

A system for causing in-application messages to be presented to a user who is using a software application on a user computing device, comprising:
a presentation monitoring unit that:
monitors a plurality of attempts to present in-application messages to a user of a software application running on a user computing device over a first monitoring period of time,
determines when attempts to present the user with in-application messages during the first monitoring period fail,
calculates a first presentation failure rate which is based on a number of times that an attempt to present the user with an in-application message during the first monitoring period failed and a total number of attempts that have been made to present the user with in-application messages during the first monitoring period, and
compares the first presentation failure rate to a failure threshold value; and
an image adjustment unit that acts to cause the amount of data comprising at least some in-application message files downloaded to the software application to be reduced when the first presentation failure rate is determined to be greater than the failure threshold value.

### Claim 14 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by changing an in-application message media setting of the software application.

### Claim 15 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by sending a communication to a server that sends in-application messages to the software application.

### Claim 16 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by causing at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 17 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by causing an image quality of at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 18 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by causing a resolution of at least some of the in-application message files that are downloaded to the software application to be reduced.

### Claim 19 (depends on 13)

The system of claim 13, wherein the image adjustment unit acts to cause the amount of data comprising at least some of the in-application message files downloaded to the software application to be reduced by causing the amount of data comprising the in-application message files downloaded to the software application to be reduced only for those in-application message files containing media that is not likely to be presented to the user.

### Claim 20 (depends on 13)

The system of claim 13, wherein the presentation monitoring unit also:
monitors a plurality of attempts to present in-application messages to the user of the software application during a second monitoring period of time;
determines when attempts to present the user with in-application messages during the second monitoring period fail;
calculates a second presentation failure rate which is based on a number of times that an attempt to present the user with an in-application message during the second monitoring period failed and a total number of attempts that have been made to present the user with in-application messages during the second monitoring period;
compares the second presentation failure rate to a second failure threshold value; and
wherein the image adjustment unit causes the amount of data comprising at least some of the in-application message files downloaded to the software application to be increased when the second presentation failure rate is determined to be equal to or less than the second failure threshold value.

### Claim 21 (depends on 13)

The system of claim 13, wherein determining when attempts to present the user with in-application messages during the first monitoring period fail comprises determining when there are errors or failures during attempts to download media files to the user computing device.

### Claim 22 (depends on 13)

The system of claim 13, wherein the presentation monitoring unit is a part of a customer engagement service, and wherein monitoring a plurality of attempts to present in-application messages to a user of a software application comprises the presentation monitoring unit receiving reports about message presentation failures from an element of the software application on the user computing device.

### Claim 23 (depends on 13)

The system of claim 13, wherein the presentation monitoring unit is a part of a customer engagement service, and wherein monitoring a plurality of attempts to present in-application messages to a user of a software application comprises the presentation monitoring unit determining that there have been one or more errors or failures during attempts to download media files to the user computing device.
