IP Library Granted Patent US 9,842,145
Granted Patent B2
US 9,842,145 · App. 14/095,886 · Granted Dec 12, 2017

Providing profile information using servers

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 9,842,145
App. No.
14/095,886
Granted
Dec 12, 2017
Kind
B2
Abstract

A method includes: generating profile data for users including a first user, the profile data related to contacts or persons used in messages to or from each user; generating, via a server platform, parameters corresponding to the profile data for ranking contacts or persons; and transmitting the parameters to client devices to allow each client device to determine ranks of contacts or persons in the profile data based on the parameters and a function that uses the parameters.

Claims (34)

1. A method, comprising:

generating, on a server platform, profile data for each of a plurality of users including a first user, the profile data related to contacts used in messages to and from each respective user of the plurality of users;

generating, via the server platform, parameters corresponding to the profile data of the first user for ranking the contacts of the first user, wherein the ranking is based on giving different weights to different types of fields in the profile data;

transmitting, from the server platform, the parameters to a plurality of client devices of the first user for storage locally on each client device to allow each client device to compute ranks for at least a portion of the contacts of the first user based on a function that uses the parameters, wherein the client devices include a first client device and a second client device, wherein the rank for a contact computed by the first client device is different from the rank computed for the contact by the second client device, and wherein the rank computed by each of the plurality of client devices is further dependent on a geographic location of the device that is computing the rank;

in response to receiving a new message to the first user, updating the parameters for contacts relevant to the new message, and transmitting the updated parameters to the plurality of client devices; and

synchronizing the profile data among the plurality of client devices, the synchronizing comprising reconciling changes made on different devices using a plurality of ranks for the contacts of the first user, wherein each of the plurality of ranks is computed by a respective one of the plurality of client devices of the first user using the updated parameters.

2. The method of claim 1 , wherein the reconciling changes made on different devices comprises accepting all changes for a first contact and presenting the most relevant change first to the first user based on a rank of the first contact computed by the first client device.

3. The method of claim 1 , wherein the generated parameters include a parameter indicating a level of contact in a social network.

4. The method of claim 1 , further comprising processing, by the server platform, the new message to the first user for updating the profile data for a contact of the first user.

5. The method of claim 4 , wherein the new message is received by the server platform from the first client device.

6. The method of claim 4 , wherein the new message is received by the server platform from a messaging server.

7. The method of claim 1 , further comprising extracting, over a network, a portion of the profile data from a separate web application of a remote server.

8. A non-transitory machine readable media embodying instructions, the instructions causing a system to:

generate, on a server platform, profile data for each of a plurality of users including a first user, the profile data related to contacts used in messages to and from the plurality of users;

generate, via the server platform, parameters corresponding to the profile data of the first user for ranking the contacts of the first user, wherein the ranking is based on giving different weights to different types of fields in the profile data;

transmit, from the server platform, the parameters to a plurality of client devices of the first user for storage locally on each client device to allow each client device to compute ranks for at least a portion of the contacts of the first user based on a function that uses the parameters, wherein the client devices include a first client device and a second client device, wherein the rank for a contact computed by the first client device is different from the rank for the contact computed by the second client device, and wherein the rank computed by each of the plurality of client devices is further dependent on a geographic location of the device that is computing the rank;

in response to receiving a new message to the first user, update the parameters for contacts relevant to the new message, and transmit the updated parameters to the plurality of client devices; and

synchronize the profile data among the plurality of client devices, the synchronizing comprising reconciling changes made on different devices using a plurality of ranks for the contacts of the first user, wherein each of the plurality of ranks is computed by a respective one of the plurality of client devices of the first user using the updated parameters.

9. The machine readable media of claim 8 , wherein the reconciling changes made on different devices comprises accepting all changes for a first contact and presenting the most relevant change to the first user based on a rank of the first contact.

10. The machine readable media of claim 8 , wherein the generated parameters include a parameter indicating a level of contact in a social network.

11. The machine readable media of claim 8 , wherein the instructions further cause the system to process the new message to the first user for updating the profile data for a contact of the first user.

12. The machine readable media of claim 11 , wherein the new message is received by the server platform from the first client device.

13. A system, comprising:

at least one processor; and

memory storing instructions configured to instruct the at least one processor to:

generate profile data for each of a plurality of users including a first user, the profile data related to contacts used in messages to and from each respective user of the plurality of users;

generate parameters corresponding to the profile data of the first user for ranking the contacts of the first user, wherein the ranking is based on giving different weights to different types of fields in the profile data;

transmit the parameters to a plurality of client devices of the first user for storage locally on each client device to allow each client device to compute ranks for at least a portion of the contacts of the first user based on a function that uses the parameters, wherein the client devices include a first client device and a second client device, wherein the rank for a contact computed by the first client device is different from the rank for the contact computed by the second client device, and wherein the rank computed by each of the plurality of client devices is further dependent on a geographic location of the device that is computing the rank;

in response to receiving a new message to the first user, update the parameters for contacts relevant to the new message, and transmit the updated parameters to the plurality of client devices; and

synchronize the profile data among the plurality of client devices, the synchronizing comprising reconciling changes made on different devices using a plurality of ranks for the contacts of the first user, wherein each of the plurality of ranks is computed by a respective one of the plurality of client devices of the first user using the updated parameters.

14. The system of claim 13 , wherein the instructions are further configured to instruct the at least one processor to process the new message to the first user for updating the profile data for a contact of the first user, wherein the new message is received from a messaging server.

15. The system of claim 13 , wherein the instructions are further configured to instruct the at least one processor to extract, over a network, a portion of the profile data from a separate web application.

16. The system of claim 13 , wherein the reconciling changes made on different devices comprises accepting all changes for a first contact and presenting the most relevant change to the first user based on a rank of the first contact computed by the first client device.

17. The system of claim 13 , wherein the generated parameters include a parameter indicating level of contact in a social network of the first user.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2014
From: CORT, FRANK J.; JACOBSON, JOSHUA ROBERT RUSSELL
To: YAHOO! INC.
Reel/Frame 032689/0821 →