我正在使用Google智能助理的Dialogflow聊天机器人,在这里的webhook请求JSON示例中:
https://developers.google.com/actions/reference/v1/dialogflow-webhook
webhook接收设备数据,包括其位置:
"device": {
"location": {
"coordinates": {
"latitude": 123.456,
"longitude": -123.456
},
"formatted_address": "1234 Random Road, Anytown, CA 12345, United States",
"zip_code": "12345",
"city": "Anytown"
}
}
由于某种原因,我的webhook没有收到任何设备数据(“设备”键完全丢失)。有谁知道我做错了什么或如何包含这些数据?
答案 0 :(得分:6)
您首先需要ask for the user's location permissions。然后他们的位置将在请求JSON中提供。这是一个很好的example如何做到这一点。
注意,您可以要求两种不同的位置:
DEVICE_PRECISE_LOCATION
会为您提供准确的latitude
和longitude
,而DEVICE_COARSE_LOCATION
会为您提供更广泛的位置信息。一般来说,只使用您的应用程序所需的最少侵入性权限是一种好习惯,因此如果您的应用程序可以适应粗略位置,那么您应该选择它。
请注意,您正在查看v1 API,该API已弃用并计划在不久的将来删除。确保您使用v2 documentation。