Je suis en train de créer un chatbot Facebook avec NodeJS, Express, et un serveur Heroku.
J'ai créé mon webhook sur Heroku et l'avait vérifié et sauvé par facebook. Je puis commencé à ajouter du code qui répondrait aux messages entrants et je ne peux pas sembler l'obtenir connecté. Il ne cesse de dire « Erreur, mauvais jeton de validation » lorsque je tente de charger mon webhook dans mon navigateur. Et lorsque je tente d'envoyer mon bot un message que je reçois pas de réponse. Même si j'avais déjà vérifié et il n'a pas changé le code.
Voici mon code:
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
var port = process.env.PORT || 3000;
// body parser middleware
app.use(bodyParser.urlencoded({ extended: true }));
// test route
//app.get('/', function (req, res) { res.status(200).send('Hello world!') });
app.get('/', function (req, res) {
if (req.query['hub.verify_token'] === '8FKU9XWeSjnZN4ae') {
res.send(req.query['hub.challenge']);
}
res.send('Error, wrong validation token');
})
app.post('/', function (req, res) {
messaging_events = req.body.entry[0].messaging;
for (i = 0; i < messaging_events.length; i++) {
event = req.body.entry[0].messaging[i];
sender = event.sender.id;
if (event.message && event.message.text) {
text = event.message.text;
sendTextMessage(sender, Text received, echo: + text.substring(0, 200));
}
}
res.sendStatus(200);
});
// error handler
app.use(function (err, req, res, next) {
console.error(err.stack);
res.status(400).send(err.message);
});
app.listen(port, function () {
console.log('Listening on port ' + port);
});
var token = <myToken>;
function sendTextMessage(sender, text) {
messageData = {
text:text
}
request({
url: 'https://graph.facebook.com/v2.6/me/messages',
qs: {access_token:token},
method: 'POST',
json: {
recipient: {id:sender},
message: messageData,
}
}, function(error, response, body) {
if (error) {
console.log('Error sending message: ', error);
} else if (response.body.error) {
console.log('Error: ', response.body.error);
}
});
}
Je suis confus quant à la raison pour laquelle rien ne se passe et pourquoi j'obtenir cette erreur. Je me sens comme si je manque une étape dans son ensemble. Je suivais ce tutoriel par la manière: https://developers.facebook.com/docs/messenger-platform/quickstart
Toute aide est appréciée. Merci!
Edit: Voici mes journaux de Heroku














