Да, вы хотите взглянуть на помощника по пользовательской информации , который спросит пользователя, может ли он узнать его местоположение (либо его текущее местоположение, если его спросят на мобильном устройстве, либо местоположение, которое онУкажите, используете ли вы Google Home или подобное устройство) и поделитесь им с вашим действием.
Если вы используете библиотеку actions-on-google, это делается с помощью помощника разрешения, и ваш код может выглядеть как-тонапример,
app.intent('ask_for_permissions_detailed', (conv) => {
// Choose one or more supported permissions to request:
// NAME, DEVICE_PRECISE_LOCATION, DEVICE_COARSE_LOCATION
const options = {
context: 'To address you by name and know your location',
// Ask for more than one permission. User can authorize all or none.
permissions: ['NAME', 'DEVICE_PRECISE_LOCATION'],
};
conv.ask(new Permission(options));
});
Использование библиотеки диалогового потока аналогично.
Если вы используете многофакторную библиотеку, вы хотите, чтобы была установлена среда Session/Location
, поэтому вам может потребоваться, чтобыдля любых Намерений, в которых вы нуждаетесь, и они будут запрашиваться с чем-то вроде
"Local": {
"und": {
"Requirements": {
"Intent.compute.distance": "Session/Location"
}
}
}
. Затем вы можете использовать Maps ' Place Search API , чтобы указать местоположение и условия поиска для того, что вам нужно.ищите, чтобы получить список ближайших результатов и отправить их обратно.