IP Library Granted Patent US 10,783,189
Granted Patent B2
US 10,783,189 · App. 15/848,098 · Granted Sep 22, 2020

Saving and retrieving locations of objects

Inventor: Ajay Joshi (Mountain View, CA)
Assignee: Google LLC
G06F16/90335G06F16/3329
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 10,783,189
App. No.
15/848,098
Granted
Sep 22, 2020
Kind
B2
Abstract

Among other things, this document describes a computer-implemented method for storing and retrieving information about the locations of objects. The method can include receiving a first query that includes one or more terms identifying an object. The first query can be determined to include a command to store location information for the object. The first query can be parsed to determine identifying information for the object, and a location can be determined for the object. The method further includes identifying one or more attributes of the object that are not specified in the first query, and causing a first set of data to be stored that characterizes the identifying information for the objet, the location of the object, and the one or more attributes of the object.

Claims (56)

1. A computer-implemented method, comprising:

receiving, by a computing device at a first time, a first voice query that identifies a physical object and a location where a user left the physical object for storage, wherein the physical object is portable or movable by the user;

transmitting the first voice query from the computing device to a remote computing system to cause the remote computing system to store an indication that the physical object was left for storage at the location identified in the first voice query;

receiving, by the computing device, at a second time that is after having caused the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, a second voice query that identifies an attribute of the physical object, wherein the attribute of the physical object was not identified in the first voice query;

transmitting the second voice query to the remote computing system;

receiving, by the computing device as a response to the second voice query, information that indicates the physical object was left for storage at the location identified in the first voice query; and

providing, for presentation to a user, the information that indicates the physical object was left for storage at the location identified in the first voice query.

2. The computer-implemented method of claim 1 , wherein the second voice query includes one or more terms not included in the first voice query that identifies the physical object.

3. The computer-implemented method of claim 1 , further comprising determining that the computing device is located within a threshold distance of the location where the user left the physical object for storage, and in response, causing the computing device to present information indicating the physical object is located in proximity of the computing device.

4. The computer-implemented method of claim 1 , further comprising in response to transmitting the first voice query from the computing device to the remote computing system to cause the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, causing the remote computing system to:

generate in a data structure a first node that represents the physical object;

generate in the data structure a second node that represents the location where the user left the physical object for storage; and

link the first node and the second node in the data structure to represent the indication that the physical object was left for storage at the location identified in the first voice query.

5. The computer-implemented method of claim 1 , wherein receiving, by the computing device as the response to the second voice query, the information that indicates the physical object was left for storage at the location identified in the first voice query further comprises:

receiving the information that indicates the physical object was left for storage at the location identified in the first voice query in response to the remote computing system matching the attribute of the physical object in the second voice query to one or more attributes of the physical object that were identified by the remote computing system but not identified in the first voice query.

6. The computer-implemented method of claim 1 , further comprising:

causing the remote computing system to store data for the physical object in the data structure that corresponds to a particular account for the user, wherein the data:

(i) includes representations of one or more physical objects and one or more corresponding locations where the user has left the one or more physical objects for storage; and

(ii) maps relationships among particular ones of the one or more physical objects and the one or more corresponding locations where the user has left the one or more physical objects.

7. The computer-implemented method of claim 1 , wherein the first voice query does not include information that identifies the location where the user left the physical object, and wherein the location where the user left the physical object is determined based on a current location of the computing device at which the first voice query was originally spoken.

8. The computer-implemented method of claim 1 , wherein the second voice query that identifies an attribute of the physical object further comprises a retrieval command that requests for the location of the physical object identified in the first voice query.

9. The computer-implemented method of claim 1 , wherein the attribute of the physical object comprises a relationship of the physical object to another object.

10. A system comprising:

one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving, by a computing device at a first time, a first voice query that identifies a physical object and a location where a user left the physical object for storage, wherein the physical object is portable or movable by the user;

transmitting the first voice query from the computing device to a remote computing system to cause the remote computing system to store an indication that the physical object was left for storage at the location identified in the first voice query;

receiving, by the computing device, at a second time that is after having caused the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, a second voice query that identifies an attribute of the physical object, wherein the attribute of the physical object was not identified in the first voice query;

transmitting the second voice query to the remote computing system;

receiving, by the computing device as a response to the second voice query, information that indicates the physical object was left for storage at the location identified in the first voice query; and

providing, for presentation to a user, the information that indicates the physical object was left for storage at the location identified in the first voice query.

11. The system of claim 10 , wherein the operations further comprise determining that the computing device is located within a threshold distance of the location where the user left the physical object for storage, and in response, causing the computing device to present information indicating the physical object is located in proximity of the computing device.

12. The system of claim 10 , wherein the operations further comprise in response to transmitting the first voice query from the computing device to the remote computing system to cause the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, causing the remote computing system to:

generate in a data structure a first node that represents the physical object;

generate in the data structure a second node that represents the location where the user left the physical object for storage; and

link the first node and the second node in the data structure to represent the indication that the physical object was left for storage at the location identified in the first voice query.

13. The system of claim 10 , wherein receiving, by the computing device as the response to the second voice query, the information that indicates the physical object was left for storage at the location identified in the first voice query further comprises:

receiving the information that indicates the physical object was left for storage at the location identified in the first voice query in response to the remote computing system matching the attribute of the physical object in the second voice query to one or more attributes of the physical object that were identified by the remote computing system but not identified in the first voice query.

14. The system of claim 10 , wherein the operations further comprise:

causing the remote computing system to store data for the physical object in the data structure that corresponds to a particular account for the user, wherein the data:

(i) includes representations of one or more physical objects and one or more corresponding locations where the user has left the one or more physical objects for storage; and

(ii) maps relationships among particular ones of the one or more physical objects and the one or more corresponding locations where the user has left the one or more physical objects.

15. The system of claim 10 , wherein the first voice query does not include information that identifies the location where the user left the physical object, and wherein the location where the user left the physical object is determined based on a current location of the computing device at which the first voice query was originally spoken.

16. The system of claim 10 , wherein the second voice query that identifies an attribute of the physical object further comprises a retrieval command that requests for the location of the physical object identified in the first voice query.

17. A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon such execution, cause the one or more computers to perform operations comprising:

receiving, by a computing device at a first time, a first voice query that identifies a physical object and a location where a user left the physical object for storage, wherein the physical object is portable or movable by the user;

transmitting the first voice query from the computing device to a remote computing system to cause the remote computing system to store an indication that the physical object was left for storage at the location identified in the first voice query;

receiving, by the computing device, at a second time that is after having caused the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, a second voice query that identifies an attribute of the physical object, wherein the attribute of the physical object was not identified in the first voice query;

transmitting the second voice query to the remote computing system;

receiving, by the computing device as a response to the second voice query, information that indicates the physical object was left for storage at the location identified in the first voice query; and

providing, for presentation to a user, the information that indicates the physical object was left for storage at the location identified in the first voice query.

18. The computer-readable medium of claim 17 , wherein the second voice query includes one or more terms not included in the first voice query that identifies the physical object.

19. The computer-readable medium of claim 17 , wherein the operations further comprise determining that the computing device is located within a threshold distance of the location where the user left the physical object for storage, and in response, causing the computing device to present information indicating the physical object is located in proximity of the computing device.

20. The computer-readable medium of claim 17 , wherein the operations further comprise in response to transmitting the first voice query from the computing device to the remote computing system to cause the remote computing system to store the indication that the physical object was left for storage at the location identified in the first voice query, causing the remote computing system to:

generate in a data structure a first node that represents the physical object;

generate in the data structure a second node that represents the location where the user left the physical object for storage; and

link the first node and the second node in the data structure to represent the indication that the physical object was left for storage at the location identified in the first voice query.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2017
From: JOSHI, AJAY
To: GOOGLE INC.
Reel/Frame 044450/0490 →
CHANGE OF NAME Recorded Dec 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044922/0691 →
Continuity (3)
Continuation 14620246 · Feb 12, 2015
Provisional Application 62031186 · Jul 31, 2014
Related Publication 20180113953A1 · Apr 26, 2018