IP Library › Granted Patent US 10,581,789
Granted Patent B2
US 10,581,789 · App. 16/277,133 · Granted Mar 3, 2020

Managing multiple messages

Inventors: Rishi Jobanputra (Menlo Park, CA); Romer E. Rosales-Delmoral (Burlingame, CA); Joshua Daniel Hartman (Mountain View, CA); Shubhanshu Nagar (Sunnyvale, CA); Ryan Oblak (Mountain View, CA); Cameron Alexander Lee (San Ramon, CA); Hsiao-Ping Tseng (Fremont, CA); Shaunak Chatterjee (Sunnyvale, CA); Rupesh Gupta (Sunnyvale, CA)
Assignee: Microsoft Technology Licensing, LLC
H04L51/32H04L51/14H04L51/26H04L67/10H04L67/306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,581,789
App. No.
16/277,133
Granted
Mar 3, 2020
Kind
B2
Abstract

This disclosure relates to systems and methods for managing multiple messages. In one example, a method includes determining a message transmission frequency threshold for a member of an online social networking service using responses from the member; receiving a message that is to be transmitted to the member; storing the message, without transmitting the message to the member, in a digest of messages for the member; and transmitting the digest to the member in response to a send score for the digest exceeding a send score threshold, the send score calculated using the number of messages in the digest.

Claims (37)

1. A system comprising:

at least one hardware processor;

a machine-readable medium having instructions stored thereon, which, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising:

determining a message transmission frequency threshold for a user of an online service based on positive responses of the user to a first plurality of messages received at a first message transmission frequency that is below the message transmission frequency threshold and on negative responses of the user to a second plurality of messages received at a second message transmission frequency that is at or above the message transmission frequency threshold;

receiving a message that is to be transmitted to the user, the message being received at a time subsequent to the first plurality of messages being received and the second plurality of messages being received;

storing the message in a digest of messages for the user in response to a current message transmission frequency exceeding the transmission frequency threshold, the current message transmission frequency corresponding to the time at which the message is received;

removing messages in the digest in response to the user viewing data in the respective messages using another communication channel; and

transmitting the digest to the user in response to a send score for the digest exceeding a send score threshold, the send score calculated using a number of messages in the digest.

2. The system of claim 1 , wherein the message transmission frequency threshold is specific to a channel, the message is to be transmitted to the user using the channel, and the digest is transmitted to the user using the channel.

3. The system of claim 1 , wherein the messages in the digest are ordered according to a priority value, the digest is limited to messages that exceed a threshold priority value, the digest further including a link to messages that do not exceed the threshold priority value.

4. The system of claim 3 , wherein the priority values for the messages are calculated using values in a profile for the user that are consistent with values in a profile for the respective senders of the messages.

5. The system of claim 1 , wherein the operations further comprise removing messages in the digest in response to the user viewing data in the respective messages using another communication channel.

6. The system of claim 1 , wherein the message transmission frequency threshold is determined using a multi-objective optimization problem, the multi-objective optimization problem using an estimated number of positive responses and an estimated number of negative responses.

7. The system of claim 1 , wherein the positive responses comprise at least one of the user reading a message, the user clicking on the message, and the user performing an action recommended by text in the message.

8. The system of claim 1 , wherein the negative responses comprise at least one of the user not reviewing a message, the user reporting the message as spam, the user submitting a complaint about the message, and the user reporting that the message is undesired.

9. A computer-implemented method comprising:

determining, by at least one hardware processor, a message transmission frequency threshold for a user of an online service based on positive responses of the user to a first plurality of messages received at a first message transmission frequency that is below the message transmission frequency threshold and on negative responses of the user to a second plurality of messages received at a second message transmission frequency that is at or above the message transmission frequency threshold;

receiving, by the at least one hardware processor, a message that is to be transmitted to the user, the message being received at a time subsequent to the first plurality of messages being received and the second plurality of messages being received;

storing, by the at least one hardware processor, the message in a digest of messages for the user in response to a current message transmission frequency exceeding the transmission frequency threshold, the current message transmission frequency corresponding to the time at which the message is received;

removing, by the at least one hardware processor, messages in the digest in response to the user viewing data in the respective messages using another communication channel; and

transmitting, by the at least one hardware processor, the digest to the user in response to a send score for the digest exceeding a send score threshold, the send score calculated using a number of messages in the digest.

10. The computer-implemented method of claim 9 , wherein the message transmission frequency threshold is specific to a channel, the message is to be transmitted to the user using the channel, and the digest is transmitted to the user using the channel.

11. The computer-implemented method of claim 9 , wherein the messages in the digest are ordered according to a priority value, the digest is limited to messages that exceed a threshold priority value, the digest further including a link to messages that do not exceed the threshold priority value.

12. The computer-implemented method of claim 11 , wherein the priority values for the messages are calculated using values in a profile for the user that are consistent with values in a profile for the respective senders of the messages.

13. The computer-implemented method of claim 9 , wherein the operations further comprise removing messages in the digest in response to the user viewing data in the respective messages using another communication channel.

14. The computer-implemented method of claim 9 , wherein the message transmission frequency threshold is determined using a multi-objective optimization problem, the multi-objective optimization problem using an estimated number of positive responses and an estimated number of negative responses.

15. The computer-implemented method of claim 9 , wherein the positive responses comprise at least one of the user reading a message, the user clicking on the message, and the user performing an action recommended by text in the message.

16. The computer-implemented method of claim 9 , wherein the negative responses comprise at least one of the user not reviewing a message, the user reporting the message as spam, the user submitting a complaint about the message, and the user reporting that the message is undesired.

17. A non-transitory machine-readable medium having instructions stored thereon, which, when executed by at least one hardware processor, cause the at least one hardware processor to perform operations comprising:

determining a message transmission frequency threshold for a user of an online service based on positive responses of the user to a first plurality of messages received at a first message transmission frequency that is below the message transmission frequency threshold and on negative responses of the user to a second plurality of messages received at a second message transmission frequency that is at or above the message transmission frequency threshold;

receiving a message that is to be transmitted to the user, the message being received at a time subsequent to the first plurality of messages being received and the second plurality of messages being received;

storing the message in a digest of messages for the user in response to a current message transmission frequency exceeding the transmission frequency threshold, the current message transmission frequency corresponding to the time at which the message is received;

removing messages in the digest in response to the user viewing data in the respective messages using another communication channel; and

transmitting the digest to the user in response to a send score for the digest exceeding a send score threshold, the send score calculated using a number of messages in the digest.

18. The non-transitory machine-readable medium of claim 17 , wherein the message transmission frequency threshold is specific to a channel, the message is to be transmitted to the user using the channel, and the digest is transmitted to the user using the channel.

19. The non-transitory machine-readable medium of claim 17 , wherein the messages in the digest are ordered according to a priority value, the digest is limited to messages that exceed a threshold priority value, the digest further including a link to messages that do not exceed the threshold priority value.

20. The non-transitory machine-readable medium of claim 19 , wherein the priority values for the messages are calculated using values in a profile for the user that are consistent with values in a profile for the respective senders of the messages.

Continuity (2)
Continuation 15010765 · Jan 29, 2016
Related Publication 20190182200A1 · Jun 13, 2019