IP Library Granted Patent US 9,092,532
Granted Patent B2
US 9,092,532 · App. 14/277,319 · Granted Jul 28, 2015

Method and server for searching for nearby user in social networking services

Inventors: Junchao Chen (Shenzhen, CN); Zhonghua Lai (Shenzhen, CN); Haochuan Cui (Shenzhen, CN); Yu Wu (Shenzhen, CN); Cuilong Ma (Shenzhen, CN); Jingqiong Feng (Shenzhen, CN); Tianqing Huang (Shenzhen, CN); Wa Ye (Shenzhen, CN); Xiangyao Lin (Shenzhen, CN); Xueqin Lin (Shenzhen, CN); Yuxuan Zhang (Shenzhen, CN); Kunfeng Rong (Shenzhen, CN); Guo Ling (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
G06F17/30867G06F17/3053G06F17/30241G06Q10/10G06Q50/01
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,092,532
App. No.
14/277,319
Granted
Jul 28, 2015
Kind
B2
Abstract

When location information and a user Identification (ID) is received from a client terminal device of a user X, a grid Y, to which the location information belongs, is determined. The user ID and the location information of the user X is stored in a list of the grid Y. The grid Y is in a grid array obtained by dividing a surface of the earth into the grids and areas of the grids are the same. Users in the grid Y and other grids are searched. The grid Y and the other grids form an N-grid and the grid Y is a center of the N-grid. The users are ranked in an ascending order of distances between the users and the user X. The ranked user IDs and distances between the users and the user X are sent to the client terminal device of the user X.

Claims (26)

1. A method for searching for nearby users in Social Networking Services (SNS) applied to a computer comprising a storage and a processor, which executes instructions stored in the storage to execute steps of:

receiving location information and a user Identification (ID) from a client terminal device of a user X; determining a grid Y, to which the location information belongs;

saving the user ID, the location information and reporting time of the user X in a list of the grid Y; wherein the grid Y is one of grids in a grid array obtained by dividing a surface of the earth into the grids and areas of the grids are the same;

searching for users in the grid Y and other girds; wherein the grid Y and the other grids form an N-grid and the grid Y is a center of the N-grid, N=n*n, n is an odd larger than or equal to 3;

ranking the users according to distances between the users and the user X and the reporting time of the user X; wherein the closer a distance between a user and the user X, the higher rank of the user is, and the shorter time between the reporting time of the user and a current time is, the higher the rank of the user is; and

sending the ranked user IDs of the users and the distances between the users and the user X to the client terminal device of the user X,

wherein the ranked user IDs of the users are received by the user X and used by the user X to contact other users;

wherein ranking the users according to the distances between the users and the user X and the reporting time of the user X comprises:

computing a weight A i =a*D i +b*T i of a user i; wherein a and b are weighting coefficients, D i is a distance between the user i and the user X, T i is time between the current time and the reporting time of the user i; and

ranking the users in an ascending order of the weight.

2. The method according to claim 1 , wherein sending the ranked user IDs of the users and distances between the users and the user X to the client terminal device of the user X comprises:

determining whether number of the users is less than or equal to M;

sending the ranked user IDs of the users and distances between the users and the user X to the client terminal device of the user X if the number of the users is less than or equal to M; and

sending ranked user IDs of top M users and distances between the top M users and the user X to the client terminal device of the user X if the number of the users is larger than M; wherein M is a positive integer larger than one.

3. The method according to claim 1 , wherein before receiving the location information of the user X, the method further comprises:

obtaining, by the client terminal device of the user X, the location information of the user X according to any of method one to method three; wherein method one is a Global Positioning System (GPS) function, method two is a Cell ID of an eNode B and method three is a Media Access Control (MAC) address of a connected Wireless Fidelity (WiFi) access point;

reporting, by the client terminal device of the user X, the location information of the user X if the location information of the user X is successfully obtained with one of the method one to method three; and

obtaining, by the client terminal device of the user X, the location information of the user X with another method of the method one to method three if the location information of the user X is not successfully obtained with the one of method one to method three.

4. A server, comprising: a processor and a storage;

wherein the storage comprises: a first processing module and a second processing module, wherein

the first processing module executed by the processor, to divide a surface of the earth into a grid array, in which an area of each grid is the same, and set a list for a grid;

the second processing module executed by the processor, when location information and a user Identification (ID) from a client terminal device of a user X is received, to determine a grid Y, to which the location information belongs, store the user ID, the location information and reporting time of the user X in a list of the grid Y, search for users in the grid Y and other girds, in which the grid Y and the other grids form an N-grid and the grid Y is a center of the N-grid,

N=n*n and n is an odd larger than or equal to 3, rank the users according to distances between the users and the user X and the reporting time of the user X and send the ranked user IDs of the users and distances between the users and the user X to the client terminal device of the user X; wherein the closer a distance between a user and the user X is, the higher rank of the user is, and the shorter time between the reporting time of the user and a current time is, the higher the rank of the user is;

wherein the ranked user IDs of the users are received by the user X and used by the user X to contact other users;

wherein the second processing module is further executed by the processor to compute a weight A i =a*D i +b*T i of a user i; wherein a and b are weighting coefficients, D i is a distance between the user i and the user X, T i is time between the current time and the reporting time of the user i and rank the users in an ascending order of the weight.

5. The server according to claim 4 , wherein the second processing module is further executed by the processor to determine whether number of the users is less than or equal to M after the users are ranked, send the ranked user IDs of the users and distances between the users and the user X to the client terminal device of the user X if the number of the users is less than or equal to M and send ranked user IDs of top M users and distances between the top M users and the user X to the client terminal device of the user X if the number of the users is larger than M; wherein M is a positive integer larger than one.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2014
From: CHEN, JUNCHAO; LAI, ZHONGHUA; CUI, HAOCHUAN; WU, YU; MA, CUILONG; FENG, JINGQIONG; HUANG, TIANQING; YE, WA; LIN, XIANGYAO; LIN, XUEQIN; ZHANG, YUXUAN; RONG, KUNFENG; LING, GUO
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Reel/Frame 032886/0866 →
Priority Claims (1)
CN 2011 1 0363120 · Nov 16, 2011 · national
Continuity (2)
Continuation PCTCN2012079561 · Aug 2, 2012
Related Publication 20140258281A1 · Sep 11, 2014