Identifying paths using social networking data and application data
First Claim
1. A system for combining data from multiple social networking applications and productivity applications and for responding to queries using the combined data comprising:
- at least one computing device adapted to generate a query for a user; and
a graph engine adapted to;
receive first social networking data from a first social networking application, wherein the first social networking data comprises a first plurality of contacts associated with the user and a first communication type of a plurality of communication types;
receive second social networking data from a second social networking application, wherein the second social networking data comprises a second plurality of contacts associated with the user and a second communication type of the plurality of communication types;
receive application data from a productivity application, wherein the application data comprises a third plurality of contacts associated with the user and a third communication type of the plurality of communication types;
generate a graph from the first social networking data, the second social networking data, and the application data, wherein the graph comprises a plurality of nodes and each node represents one of a contact of the first plurality of contacts, a contact from the second plurality of contacts, a contact from the third plurality of contacts, or the user, and wherein the graph further comprises a plurality of edges, each edge connects two nodes of the plurality of nodes, and each edge represents one of the first communication type, the second communication type, or the third communication type;
receive the query from the user;
identify at least one node of the graph that is responsive to the query;
identify one or more paths in the graph that connect the identified at least one node and a node representing the user, wherein each of the identified one or more paths comprises a sequence of nodes and edges from the graph; and
provide the identified one or more paths to the at least one computing device in response to the query.
1 Assignment
0 Petitions
Accused Products
Abstract
Data from social networking applications and other applications that can be used to communicate are combined for a user to generate a graph of the various relationships that the user has with other users in the social networking applications and other applications. In addition, the behaviors of each user with respect to communicating through the various social networking applications and other applications are monitored to generate task data that describes user preferences for communicating using each social networking application or other application for different tasks. At a later time, when a user is looking to connect with another user for an indicated task such as networking, the graph can be used to recommend paths to other users in the various social networking applications and other applications, and the generated task data can be used to rank the recommended paths based on the indicated task.
-
Citations
20 Claims
-
1. A system for combining data from multiple social networking applications and productivity applications and for responding to queries using the combined data comprising:
-
at least one computing device adapted to generate a query for a user; and a graph engine adapted to; receive first social networking data from a first social networking application, wherein the first social networking data comprises a first plurality of contacts associated with the user and a first communication type of a plurality of communication types; receive second social networking data from a second social networking application, wherein the second social networking data comprises a second plurality of contacts associated with the user and a second communication type of the plurality of communication types; receive application data from a productivity application, wherein the application data comprises a third plurality of contacts associated with the user and a third communication type of the plurality of communication types; generate a graph from the first social networking data, the second social networking data, and the application data, wherein the graph comprises a plurality of nodes and each node represents one of a contact of the first plurality of contacts, a contact from the second plurality of contacts, a contact from the third plurality of contacts, or the user, and wherein the graph further comprises a plurality of edges, each edge connects two nodes of the plurality of nodes, and each edge represents one of the first communication type, the second communication type, or the third communication type; receive the query from the user; identify at least one node of the graph that is responsive to the query; identify one or more paths in the graph that connect the identified at least one node and a node representing the user, wherein each of the identified one or more paths comprises a sequence of nodes and edges from the graph; and provide the identified one or more paths to the at least one computing device in response to the query. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for combining data from multiple social networking applications and productivity applications and for responding to queries using the combined data comprising:
-
receiving first social networking data from a first social networking application by a computing device, wherein the first social networking data comprises a first plurality of contacts associated with a user and a first communication type of a plurality of communication types; receiving second social networking data from a second social networking application by the computing device, wherein the second social networking data comprises a second plurality of contacts associated with the user and a second communication type of the plurality of communication types; generating a graph from the first social networking data and the second social networking data by the computing device, wherein the graph comprises a plurality of nodes and each node represents one of a contact of the first plurality of contacts, a contact from the second plurality of contacts, or the user, and wherein the graph further comprises a plurality of edges, each edge connects two nodes of the plurality of nodes, and each edge represents either the first communication type or the second communication type; receiving a query from the user by the computing device; identifying at least one node of the graph that is responsive to the query by the computing device; identifying one or more paths in the graph that connect the identified at least one node and a node representing the user by the computing device, wherein each identified one or more path comprises a sequence of nodes and edges from the graph; and providing the identified one or more paths in response to the query by the computing device. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for combining data from multiple social networking application and productivity applications and for responding to queries using the combined data comprising:
-
receiving a graph of a first social networking application and a second social networking application for a user by a computing device, wherein the first social networking application is associated with a first communication type of a plurality of communication types and the second social networking application is associated with a second communication type of the plurality of communication types, wherein the graph comprises a plurality of nodes and each node represents one of a contact of a first plurality of contacts of the first social networking application, a contact of a second plurality of contacts of the second social networking application, or the user, and wherein the graph further comprises a plurality of edges, each edge connects two nodes of the plurality of nodes, and each edge represents either the first communication type or the second communication type; monitoring activity of the user on the computing device to generate task data, wherein the task data identifies a plurality of tasks, each identified task is associated with a contact from either the first or the second plurality of contacts, each identified task is associated with an indication of whether or not the task was successful, and each identified task is associated with either the first or the second communication types; receiving a query from the user by the computing device, wherein the query identifies a task; identifying at least one node of the graph that is responsive to the query by the computing device; identifying one or more paths in the graph that connect the identified at least one node and a node representing the user by the computing device, wherein each of the identified one or more paths comprises a sequence of nodes and edges from the graph; ranking each of the identified one or more paths based on the contacts represented by the nodes of the sequence of nodes comprising each path, the contacts associated with the tasks of the plurality of tasks, the first type of communication or second type of communication associated with the edges in each path, and the indication associated with each task of the plurality of tasks; and providing the identified one or more paths according to the ranking in response to the query by the computing device. - View Dependent Claims (18, 19, 20)
-
Specification