我想这样做,以便我的谷歌助理聊天机器人可以要求知道用户的位置,然后告诉他们最近的医生手术,例如。我不想让用户看到地图,我只想让机器人回来说“离你最近的医生手术是皇家剧院手术,离你的位置有10英里。”
有办法这样做吗?如果是这样的话,我们将非常感谢您的帮助。
发布于 2018-10-04 17:44:41
是的,您想看看用户信息助手,它将询问用户是否能够获得他们的位置(如果在移动设备上询问他们的当前位置,或者如果使用Google或类似的设备,他们所设置的位置)并与您的动作共享。
如果您使用的是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的位置搜索API为其提供位置和搜索条件,以便获取附近结果的列表并将其发回。
https://stackoverflow.com/questions/52646452
复制相似问题