IP Library Granted Patent US 11,005,795
Granted Patent B1
US 11,005,795 · App. 16/432,057 · Granted May 11, 2021

Techniques for media item display configuration

Inventors: Udayan Shiv Bannerjee Bulchandani (Mountain View, CA); Alfonso Gomez Jordana Manas (Mountain View, CA); Brian Furtado (Union City, CA)
Assignee: WHATSAPP INC.
H04L51/10G06F3/0484H04L63/0435
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 11,005,795
App. No.
16/432,057
Granted
May 11, 2021
Kind
B1
Abstract

Techniques for media item display configuration are described. In one embodiment, an apparatus may comprise a media management component operative to retrieve a plurality of contact-associated media items associated with a plurality of contacts for a user account associated with a messaging client by a messaging system; retrieve an engagement score for each of the plurality of contacts; and order the plurality of contact-associated media items based on the engagement score for each of the plurality of contacts; and a user interface component operative to receive a mixed-contact media display interface invocation in the messaging client for the messaging system; and display the plurality of contact-associated media items in a mixed-contact media display interface according to the ordering of the plurality of contact-associated media items. Other embodiments are described and claimed.

Claims (68)

1. A computer-implemented method, comprising:

retrieving a plurality of contact-associated media items associated with a plurality of contacts for a user account associated with a messaging client by a messaging system;

retrieving an engagement score for each of the plurality of contacts;

ordering the plurality of contact-associated media items based on the engagement score for each of the plurality of contacts; and

displaying the plurality of contact-associated media items in a mixed-contact media display interface according to the ordering of the plurality of contact-associated media items, and

the engagement score for each contact calculated by combining a plurality of engagement measures for each contact using a set of defined engagement measure weights, and

the set of defined engagement measure weights is based on engagement success measures received from client devices of the messaging system, the engagement success measures representing differences between media item ranking and actual user engagement.

2. The method of claim 1 , the plurality of contact-associated media items received via a messaging server system for the messaging system using end-to-end encryption, the end-to-end encryption denying the messaging server system access to the media content of the plurality of contact-associated media items, the ordering the plurality of contact-associated media items performed based on local data collection on a client device executing the messaging client.

3. The method of claim 1 , the messaging client comprising a client-side feature datastore, the client-side feature datastore comprising the plurality of engagement measures for each of the plurality of contacts.

4. The method of claim 3 , further comprising:

receiving the set of defined engagement measure weights from the messaging server system.

5. The method of claim 3 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, the plurality of event types comprising two or more of a row seen event, a row consumed event, a row ignored event, a row view engagement event, a row reply engagement event, an incoming message event, an outgoing message event, an incoming media event, an outgoing media event, an incoming group message event, an outgoing group message event, an incoming group media event, an outgoing group media event, an incoming call event, an outgoing call event, a call incoming media event, and a call outgoing media event.

6. The method of claim 3 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, further comprising:

detecting an engagement event associated with a contact;

retrieving a plurality of decay-rate-specific aggregate engagement measures corresponding to an event type of the engagement event, the plurality of decay-rate-specific aggregate engagement measures aggregated across all contacts in the messaging client;

decreasing the plurality of decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific aggregate engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific aggregate engagement measures;

increasing the plurality of decay-rate-specific aggregate engagement measures based on the engagement event; and

storing the plurality of decay-rate-specific aggregate engagement measures.

7. The method of claim 6 , further comprising:

normalizing the plurality of decay-rate-specific engagement measures for each of the plurality of contacts based on the plurality of decay-rate-specific aggregate engagement measures to generate a plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts; and

decreasing the plurality of normalized decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific engagement measures;

the engagement score for each of the plurality of contacts calculated based on combining the plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts using the set of defined engagement measure weights.

8. The method of claim 1 , further comprising:

detecting an engagement event associated with a contact;

retrieving a plurality of decay-rate-specific engagement measures for the contact corresponding to an event type of the engagement event;

decreasing the plurality of decay-rate-specific engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific engagement measures;

increasing the plurality of decay-rate-specific engagement measures based on the engagement event; and

storing the plurality of decay-rate-specific engagement measures in association with the contact.

9. An apparatus, comprising:

at least one processor operable to execute stored instructions that, when executed, cause the at least one processor to:

retrieve a plurality of contact-associated media items associated with a plurality of contacts for a user account associated with a messaging client by a messaging system;

retrieve an engagement score for each of the plurality of contacts;

order the plurality of contact-associated media items based on the engagement score for each of the plurality of contacts; and

display the plurality of contact-associated media items in a mixed-contact media display interface according to the ordering of the plurality of contact-associated media items, and

the engagement score for each contact calculated by combining a plurality of engagement measures for each contact using a set of defined engagement measure weights, and

the set of defined engagement measure weights is based on engagement success measures received from client devices of the messaging system, the engagement success measures representing differences between media item ranking and actual user engagement.

10. The apparatus of claim 9 , the messaging client comprising a client-side feature datastore, the client-side feature datastore comprising the plurality of engagement measures for each of the plurality of contacts.

11. The apparatus of claim 10 , the at least one processor further caused to:

receive the set of defined engagement measure weights from the messaging server system.

12. The apparatus of claim 10 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, the plurality of event types comprising two or more of a row seen event, a row consumed event, a row ignored event, a row view engagement event, a row reply engagement event, an incoming message event, an outgoing message event, an incoming media event, an outgoing media event, an incoming group message event, an outgoing group message event, an incoming group media event, an outgoing group media event, an incoming call event, an outgoing call event, a call incoming media event, and a call outgoing media event.

13. The apparatus of claim 10 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, the at least one processor further caused to:

detect an engagement event associated with a contact; and

retrieve a plurality of decay-rate-specific aggregate engagement measures corresponding to an event type of the engagement event, the plurality of decay-rate-specific aggregate engagement measures aggregated across all contacts in the messaging client; decrease the plurality of decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific aggregate engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific aggregate engagement measures; increase the plurality of decay-rate-specific aggregate engagement measures based on the engagement event; and store the plurality of decay-rate-specific aggregate engagement measures.

14. The apparatus of claim 9 , the at least one processor further caused to:

normalize the plurality of decay-rate-specific engagement measures for each of the plurality of contacts based on the plurality of decay-rate-specific aggregate engagement measures to generate a plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts; and

decrease the plurality of normalized decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific engagement measures;

the engagement score for each of the plurality of contacts calculated based on combining the plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts using the set of defined engagement measure weights.

15. At least one computer-readable storage medium comprising instructions that, when executed, cause a system to:

retrieve a plurality of contact-associated media items associated with a plurality of contacts for a user account associated with a messaging client by a messaging system;

retrieve an engagement score for each of the plurality of contacts;

order the plurality of contact-associated media items based on the engagement score for each of the plurality of contacts; and

display the plurality of contact-associated media items in a mixed-contact media display interface according to the ordering of the plurality of contact-associated media items, and

the engagement score for each contact calculated by combining a plurality of engagement measures for each contact using a set of defined engagement measure weights, and

the set of defined engagement measure weights is based on engagement success measures received from client devices of the messaging system, the engagement success measures representing differences between media item ranking and actual user engagement.

16. The computer-readable storage medium of claim 15 , the messaging client comprising a client-side feature datastore, the client-side feature datastore comprising the plurality of engagement measures for each of the plurality of contacts.

17. The computer-readable storage medium of claim 16 , comprising further instructions that, when executed, cause a system to:

receive the set of defined engagement measure weights from the messaging server system.

18. The computer-readable storage medium of claim 16 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, the plurality of event types comprising two or more of a row seen event, a row consumed event, a row ignored event, a row view engagement event, a row reply engagement event, an incoming message event, an outgoing message event, an incoming media event, an outgoing media event, an incoming group message event, an outgoing group message event, an incoming group media event, an outgoing group media event, an incoming call event, an outgoing call event, a call incoming media event, and a call outgoing media event.

19. The computer-readable storage medium of claim 16 , the plurality of engagement measures corresponding to a plurality of event types, wherein each of the plurality of event types is represented by a plurality of decay-rate-specific engagement measures, comprising further instructions that, when executed, cause a system to:

detect an engagement event associated with a contact;

retrieve a plurality of decay-rate-specific aggregate engagement measures corresponding to an event type of the engagement event, the plurality of decay-rate-specific aggregate engagement measures aggregated across all contacts in the messaging client;

decrease the plurality of decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific aggregate engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific aggregate engagement measures;

increase the plurality of decay-rate-specific aggregate engagement measures based on the engagement event; and

store the plurality of decay-rate-specific aggregate engagement measures.

20. The computer-readable storage medium of claim 15 , comprising further instructions that, when executed, cause a system to:

normalize the plurality of decay-rate-specific engagement measures for each of the plurality of contacts based on the plurality of decay-rate-specific aggregate engagement measures to generate a plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts; and

decrease the plurality of normalized decay-rate-specific aggregate engagement measures according to a defined decay rate for each of the plurality of decay-rate-specific engagement measures and an amount of time between a current time and an update timestamp for the plurality of decay-rate-specific engagement measures;

the engagement score for each of the plurality of contacts calculated based on combining the plurality of normalized decay-rate-specific engagement measures for each of the plurality of contacts using the set of defined engagement measure weights.

Assignments (2)
CHANGE OF NAME Recorded Jun 22, 2021
From: WHATSAPP INC.
To: WHATSAPP LLC
Reel/Frame 056646/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: BULCHANDANI, UDAYAN SHIV BANNERJEE; MANAS, ALFONSO GOMEZ JORDANA; FURTADO, BRIAN
To: WHATSAPP INC.
Reel/Frame 051660/0861 →