US 10,891,343 B2
Recommending contacts in a social network
Dafan Liu, Beijing (CN); Hua Chen, Beijing (CN); and Wei-Ying Ma, Beijing (CN)
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Mar. 7, 2017, as Appl. No. 15/452,442.
Application 15/452,442 is a continuation of application No. 12/546,630, filed on Aug. 24, 2009, granted, now 9,626,648, issued on Apr. 18, 2017.
Application 12/546,630 is a continuation of application No. 11/468,863, filed on Aug. 31, 2006, granted, now 7,596,597, issued on Sep. 29, 2009.
Prior Publication US 2017/0177732 A1, Jun. 22, 2017
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/9535 (2019.01); G06F 16/2457 (2019.01); H04L 29/08 (2006.01); G06Q 50/00 (2012.01); G06Q 10/10 (2012.01)
CPC G06F 16/9535 (2019.01) [G06F 16/24575 (2019.01); G06F 16/24578 (2019.01); G06Q 10/10 (2013.01); G06Q 50/01 (2013.01); H04L 67/306 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-readable memory containing instructions for controlling a computing system to identify potential contacts for a target user, the instructions comprising instructions that, when executed, control the computing system to:
access a plurality of contact lists of users, each contact list identifying contacts of a user;
identify, from a contact list of the target user, contact paths from the target user to candidate users that are within a maximum contact path length, a contact path being a directed path of contacts such that each contact in the directed path is in the contact list of the prior contact in the directed path;
filter the identified contact paths to remove contact paths that do not satisfy a set of recommendation criteria for a contact path, the set of recommendation criteria comprising:
a first recommendation criterion that a candidate user of the contact path is not in the contact list of the target user; and
a second recommendation criterion that there are multiple contact paths between the target user and the candidate user; and
generate, based on the filtered contact paths, a list of candidate users, the list ranked according to contact path length.