Server-side rate-limiting algorithms for piggybacking social updates for mobile devices
First Claim
1. A method, by one or more computing devices, comprising:
- receiving, from a mobile device of a first user, device status information selected from the group consisting of;
information related to power for the device, information related to network connectivity of the device, or a notification mode of the device;
identifying one or more outgoing messages to be sent to the first user;
computing a value for each of the outgoing messages, the computed value being based on an affinity score determined with respect to an originator of the message and the first user;
selecting, based on the computed value, at least one of the outgoing messages for placement into an outgoing message queue; and
upon the detection of a triggering condition, sending the messages in the outgoing message queue to the mobile device, the triggering condition based on the device status information and the respective values of the outgoing messages.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, device status information is received from a mobile device of a first user. The device status information may include: information related to power for the device, information related to network connectivity of the device, or a notification mode of the device. Outgoing messages may be identified to be sent to the first user. A value may be computed for each of the outgoing messages. The computed value may be based on an affinity score determined with respect to an originator of the message and the first user. Based on the computed value, at least one of the outgoing messages may be selected for placement into an outgoing message queue. Upon the detection of a triggering condition, the selected messages may be sent to the mobile device. The triggering condition may be based on the device status information and the respective values of the outgoing messages.
12 Citations
29 Claims
-
1. A method, by one or more computing devices, comprising:
-
receiving, from a mobile device of a first user, device status information selected from the group consisting of;
information related to power for the device, information related to network connectivity of the device, or a notification mode of the device;identifying one or more outgoing messages to be sent to the first user; computing a value for each of the outgoing messages, the computed value being based on an affinity score determined with respect to an originator of the message and the first user; selecting, based on the computed value, at least one of the outgoing messages for placement into an outgoing message queue; and upon the detection of a triggering condition, sending the messages in the outgoing message queue to the mobile device, the triggering condition based on the device status information and the respective values of the outgoing messages. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory, computer-readable media comprising instructions operable, when executed by one or more computing devices, to:
-
receive, from a mobile device of a first user, device status information selected from the group consisting of;
information related to power for the device, information related to network connectivity of the device, or a notification mode of the device;identify one or more outgoing messages to be sent to the first user; compute a value for each of the outgoing messages, the computed value being based on an affinity score determined with respect to an originator of the message and the first user; select, based on the computed value, at least one of the outgoing messages for placement into an outgoing message queue; and upon the detection of a triggering condition, sending the messages in the outgoing message queue to the mobile device, the triggering condition based on the device status information and the respective values of the outgoing messages. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 21)
-
-
20. A system comprising:
-
one or more processors; and a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to; receive, from a mobile device of a first user, device status information selected from the group consisting of;
information related to power for the device, information related to network connectivity of the device, or a notification mode of the device;identify one or more outgoing messages to be sent to the first user; compute a value for each of the outgoing messages, the computed value being based on an affinity score determined with respect to an originator of the message and the first user; select, based on the computed value, at least one of the outgoing messages for placement into an outgoing message queue; and upon the detection of a triggering condition, send the selected messages to the mobile device, the triggering condition based on the device status information and the respective values of the outgoing messages. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
-
Specification