Voice commands for online social networking systems
First Claim
Patent Images
1. A method comprising, by a computing device:
- accessing a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, each of the edges between two of the nodes representing a single degree of separation between them, the nodes comprising;
a first-user node corresponding to a first user associated with an online social network; and
a plurality of second nodes that each correspond to a concept or a second user associated with the online social network, each second node being of a particular node-type;
receiving from the first user a voice message comprising one or more commands;
receiving location information associated with the first user;
determining one or more edge-types and one or more node-types, each edge-type and node-type being determined based on at least one of the commands of the voice message;
identifying one or more second nodes based on the location information associated with the first user and further based on at least one of the commands of the voice message, each of the identified second nodes being one of the determined node-types; and
generating one or more new edges in the social graph connecting the first-user node to one or more of the identified second nodes based on the location information and the voice message, each of the new edges being one of the determined edge-types.
2 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes accessing a social graph that includes a plurality of nodes and edges, receiving from a first user a voice message comprising one or more commands, receiving location information associated with the first user, identifying edges and nodes in the social graph based on the location information, where each of the identified edges and nodes corresponds to at least one of the commands of the voice message, and generating new nodes or edges in the social graph based on the identified nodes or identified edges.
5 Citations
19 Claims
-
1. A method comprising, by a computing device:
-
accessing a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, each of the edges between two of the nodes representing a single degree of separation between them, the nodes comprising; a first-user node corresponding to a first user associated with an online social network; and a plurality of second nodes that each correspond to a concept or a second user associated with the online social network, each second node being of a particular node-type; receiving from the first user a voice message comprising one or more commands; receiving location information associated with the first user; determining one or more edge-types and one or more node-types, each edge-type and node-type being determined based on at least one of the commands of the voice message; identifying one or more second nodes based on the location information associated with the first user and further based on at least one of the commands of the voice message, each of the identified second nodes being one of the determined node-types; and generating one or more new edges in the social graph connecting the first-user node to one or more of the identified second nodes based on the location information and the voice message, each of the new edges being one of the determined edge-types.
-
-
2. The method of claim 1, wherein the voice message is received via an audio input of a mobile computing device of associated with the first user.
-
3. The method of claim 1, wherein the location information comprises the geographic location of a mobile client system associated with the first user.
-
4. The method of claim 1, wherein the location information comprises information indicating that the first user is at a particular event.
-
5. The method of claim 1, wherein the location information comprises information indicating that the first user is at a particular venue.
-
6. The method of claim 1, wherein the location information comprises information indicating that the first user is proximate to a particular second user.
-
7. The method of claim 1, further comprising:
generating one or more new nodes in the social graph based on the location information and the voice message, each of the new nodes being one of the determined node-types, the generated new edges connecting the generated new nodes to the first-user node.
-
8. The method of claim 7, further comprising:
receiving one or more content files associated with the first user, wherein the one or more new nodes correspond to one or more of the content files, respectively.
-
9. The method of claim 7, further comprising:
-
identifying a privacy setting corresponding to at least one of the commands of the voice message, the privacy setting indicating which second users of the online social network may access content files respectively corresponding to the new nodes; and applying the privacy setting to one or more of the new nodes.
-
-
10. The method of claim 1, wherein identifying one or more second nodes comprises:
-
determining a score for each command of the voice message that the command corresponds to a second node; and identifying one or more second nodes having a score greater than a threshold score, each of the identified second nodes corresponding to at least one of the commands, and each of the identified second nodes being one of the determined node-types.
-
-
11. The method of claim 10, wherein determining a score comprises determining a probability, for each command of the voice message, that the command corresponds to a second node, and wherein the probability is determined based on a probabilistic language model.
-
12. The method of claim 10, wherein the voice message comprises one or more commands for creating one or more relationships in the social graph, wherein the relationships are represented by one or more edges of particular edge-types.
-
13. The method of claim 1, wherein identifying one or more second nodes is further based on a social relevance of the particular second nodes.
-
14. The method of claim 1, wherein identifying one or more second nodes is further based on the degree of separation between the first-user node and the identified second nodes.
-
15. The method of claim 1, wherein identifying one or more second nodes is further based on the search history associated with the first user.
-
16. The method of claim 1, wherein each of the identified second nodes is within a threshold degree of separation from the first-user node.
-
17. The method of claim 16, wherein the threshold degree of separation is one, two, three, or all.
-
18. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
access a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, each of the edges between two of the nodes representing a single degree of separation between them, the nodes comprising; a first-user node corresponding to a first user associated with an online social network; and a plurality of second nodes that each correspond to a concept or a second user associated with the online social network, each second node being of a particular node-type; receive from the first user a voice message comprising one or more commands; receive location information associated with the first user; determine one or more edge-types and one or more node-types, each edge-type and node-type being determined based on at least one of the commands of the voice message; identify one or more second nodes based on the location information associated with the first user and further based on at least one of the commands of the voice message, each of the identified second nodes being one of the determined node-types; and generate one or more new edges in the social graph connecting the first-user node to one or more of the identified second nodes based on the location information and the voice message, each of the new edges being one of the determined edge-types.
-
-
19. A system comprising:
- one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to;access a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, each of the edges between two of the nodes representing a single degree of separation between them, the nodes comprising; a first-user node corresponding to a first user associated with an online social network; and a plurality of second nodes that each correspond to a concept or a second user associated with the online social network, each second node being of a particular node-type; receive from the first user a voice message comprising one or more commands; receive location information associated with the first user; determine one or more edge-types and one or more node-types, each edge-type and node-type being determined based on at least one of the commands of the voice message; identify one or more second nodes based on the location information associated with the first user and further based on at least one of the commands of the voice message, each of the identified second nodes being one of the determined node-types; and generate one or more new edges in the social graph connecting the first-user node to one or more of the identified second nodes based on the location information and the voice message, each of the new edges being one of the determined edge-types.
- one or more processors; and
Specification