J'ai partagé mon code et l'erreur apparue ci-dessous. Fondamentalement, j'ai suivi le tutoriel http://www.girliemac.com/blog/2017/01/06/facebook-apiai-bot-nodejs/ et un autre. Mon chatbot fonctionne pour smalltalk mais pas pour les trucs api météo. J'essaie de faire en sorte que le chatbot me donne des réponses sur la météo dans différentes villes. J'ai suivi le tutoriel exactement.OAuth Exception dans le chatbot de Facebook Messenger en utilisant api.ai et heroku (node.js)
Error: { message: '(#100) No matching user found',
type: 'OAuthException',
code: 100,
error_subcode: 2018001,
fbtrace_id: 'DeubaTWU6Gg' }
Error: { message: '(#100) No matching user found',
type: 'OAuthException',
code: 100,
error_subcode: 2018001,
fbtrace_id: 'FSiMes3IwHv' }
// Code de index.js juste pour des trucs météo api
app.post('/ai', (req, res) => {
//console.log('*** Webhook for api.ai query ***');
//console.log(req.body.result);
if (req.body.result.action === 'weather') {
// console.log('*** weather ***');
let city = req.body.result.parameters['geo-city'];
let restUrl = 'http://api.openweathermap.org/data/2.5/weather?APPID='+process.env.WEATHER_API_KEY+'&q='+city;
request.get(restUrl, (err, response, body) => {
if (!err && response.statusCode == 200) {
let json = JSON.parse(body);
// console.log(json);
let tempF = ~~(json.main.temp * 9/5 - 459.67);
let tempC = ~~(json.main.temp - 273.15);
let msg = 'The current condition in ' + json.name + ' is ' + json.weather[0].description + ' and the temperature is ' + tempF + ' ℉ (' +tempC+ ' ℃).'
return res.json({
speech: msg,
displayText: msg,
source: 'weather'
});
} else {
let errorMessage = 'I failed to look up the city name.';
return res.status(400).json({
status: {
code: 400,
errorType: errorMessage
}
});
}
})
}
});
Comment puis-je corriger cette erreur?