我希望能够在dialogflow webhook中实现以下代码...以距离响应:“ + result.routes [0] .legs [0] .steps [0] .distance.text);当意图匹配时...
var Request = require("request");
var voso = "https://maps.googleapis.com/maps/api/directions/json?origin=ikoyi&destination=egbeda&key****"
Request.get(voso, (error, response, body) => {
if(error) {
return console.dir(error);
}
var result = JSON.parse(body);
console.log("Distance is : "+ result.routes[0].legs[0].steps[0].distance.text);
console.log("Duration is : "+ result.routes[0].legs[0].steps[0].duration.text);
return result;
});
答案 0 :(得分:0)
我用axios打了电话。您可以将此代码放入函数中。您将需要指定一个特定的地方而不是一个通用区域,并且还需要指定在这种情况下为尼日利亚的地区。
function Distance(agent) {
let url ='https://maps.googleapis.com/maps/api/directions/json?origin=TBS&destination=zone+park+gbagada&key=AIzaSyD7-V9F5DxU-Mn4WM-CBoI8_Muhtsnu5pM®ion=NG';
return axios.get(url).then((response) => {
console.log(response.data);
var distance = response.data.routes[0].legs[0].distance.text;
let bot_response = "The distance is " + distance;
agent.add(bot_response);
});
}