Generating Search Results based on Proximate Computing Devices
Techniques include receiving a search query and an indication of a proximate device located near a user device from the user device and identifying one or more records included in a search data store based on the query and, e.g., the indication. In this example, the user device receives the indication from the proximate device via a local wireless network using which the proximate device communicates. Also in this example, each record includes record content (e.g., web links, documents, media files, software applications, or other data) and record information describing the content. In some examples, the techniques further include generating result scores for the identified records based on the indication and selecting one or more of the records based on the scores. The techniques also include selecting the record content from the identified (and, e.g., selected) records and transmitting the content to the user device as search results.
1 . A method comprising:
receiving a search query from a user device;
receiving an indication of a proximate device from the user device, wherein the proximate device is located proximate to the user device, wherein the proximate device is configured to communicate via a local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network;
identifying one or more records based on the search query and based on the indication, each record including record content and record information that describes the record content;
selecting the record content from the identified one or more records; and
transmitting the selected record content to the user device as search results.
2 . The method of claim 1 , wherein the indication of the proximate device indicates one or more of a model name, a model number, and a device ID of the proximate device, and wherein identifying the one or more records based on the indication comprises identifying each record based on one or more matches between the one or more of the model name, the model number, and the device ID and one or more terms of the record information included in the record.
3 . The method of claim 1 , wherein the indication of the proximate device indicates a category of the proximate device, and wherein identifying the one or more records based on the indication comprises identifying each record based on one or more matches between the category and one or more terms of the record information included in the record.
4 . The method of claim 1 , wherein the indication of the proximate device includes one or more terms describing a state of the proximate device, and wherein identifying the one or more records based on the indication comprises identifying each record based on one or more matches between the one or more terms describing the state and one or more terms of the record information included in the record.
5 . The method of claim 1 , wherein identifying the one or more records based on the search query comprises identifying each record based on one or more matches between one or more terms of the search query and one or more terms of the record information included in the record.
6 . The method of claim 1 , wherein the user device and the proximate device are communicatively coupled via the local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network as part of the proximate device communicating with the user device.
7 . The method of claim 1 , wherein the proximate device is connected to the local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network in response to the user device performing a scan for computing devices that are connected to the local wireless network.
8 . The method of claim 1 , wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network in response to the user device pinging the proximate device via the local wireless network.
9 . The method of claim 1 , wherein the proximate device and another computing device are communicatively coupled via the local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network as part of the proximate device communicating with the other computing device.
10 . The method of claim 1 , wherein the local wireless network comprises a Wi-Fi network.
11 . The method of claim 1 , wherein the local wireless network comprises a Bluetooth network.
12 . The method of claim 1 , wherein the local wireless network comprises a near-field communications (NFC) network.
13 . A method comprising:
receiving a search query from a user device;
identifying one or more records based on the search query, each record including record content and record information that describes the record content;
receiving an indication of a proximate device from the user device, wherein the proximate device is located proximate to the user device, wherein the proximate device is configured to communicate via a local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network;
generating a result score for each of the identified one or more records based on the indication;
selecting one or more records from the identified one or more records based on the one or more result scores;
selecting the record content from the selected one or more records; and
transmitting the selected record content to the user device as search results.
14 . The method of claim 13 , wherein the indication of the proximate device indicates one or more of a model name, a model number, and a device ID of the proximate device, and wherein generating the result score for each of the identified one or more records based on the indication comprises generating the result score based on one or more matches between the one or more of the model name, the model number, and the device ID and one or more terms of the record information included in the record.
15 . The method of claim 13 , wherein the indication of the proximate device indicates a category of the proximate device, and wherein generating the result score for each of the identified one or more records based on the indication comprises generating the result score based on one or more matches between the category and one or more terms of the record information included in the record.
16 . The method of claim 13 , wherein the indication of the proximate device includes one or more terms describing a state of the proximate device, and wherein generating the result score for each of the identified one or more records based on the indication comprises generating the result score based on one or more matches between the one or more terms describing the state and one or more terms of the record information included in the record.
17 . The method of claim 13 , wherein generating the result score for each of the identified one or more records based on the indication comprises generating the result score using the indication as a scoring feature input into a machine-learned relevance (MLR) model.
18 . The method of claim 13 , wherein identifying the one or more records based on the search query comprises identifying each record based on one or more matches between one or more terms of the search query and one or more terms of the record information included in the record.
19 . A system comprising one or more computing devices configured to:
receive a search query from a user device;
receive an indication of a proximate device from the user device, wherein the proximate device is located proximate to the user device, wherein the proximate device is configured to communicate via a local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network;
identify one or more records based on the search query and based on the indication, each record including record content and record information that describes the record content;
select the record content from the identified one or more records; and
transmit the selected record content to the user device as search results.
20 . A system comprising one or more computing devices configured to:
receive a search query from a user device;
identify one or more records based on the search query, each record including record content and record information that describes the record content;
receive an indication of a proximate device from the user device, wherein the proximate device is located proximate to the user device, wherein the proximate device is configured to communicate via a local wireless network, and wherein the user device receives the indication of the proximate device from the proximate device via the local wireless network;
generate a result score for each of the identified one or more records based on the indication;
select one or more records from the identified one or more records based on the one or more result scores;
select the record content from the selected one or more records; and
transmit the selected record content to the user device as search results.