Creo que a todos nos esta pasando que “Mi Bot no responde”.
Mi codigo lo he puesto con cualquiera de las dos lineas, en cualquiera de los dos casos si me responde.
"uri": "https://graph.facebook.com/me/messages",
"uri": "https://graph.facebook.com/v2.6/me/messages",
Creo debemos revisar que el codigo este bien, aqui les dejo el mio, pero si esta bien el problema puede ser que tenemos que actualizar la configuracion del Webhook con la nueva ruta que nos da al correr ngrok http 5000
'use strict'
const express = require('express');
const bodyParser = require('body-parser');
const request = require('request');
const access_token = "EAAFO6rQZDZD";
const app = express();
app.set('port', 5000);
app.use(bodyParser.json());
app.get('/', function(req, response){
response.send('Hola Mundoooo Eh vueltoooooooooo!');
})
app.get('/webhook', function(req, response){
if(req.query['hub.verify_token'] === 'spt_token'){
response.send(req.query['hub.challenge']);
} else {
response.send('No tienes permisos.')
}
})
app.post('/webhook/', function(req, res){
const webhook_event = req.body.entry[0];
if(webhook_event.messaging) {
webhook_event.messaging.forEach(event => {
console.log(event);
handleMessage(event);
});
}
res.sendStatus(200);
});
function handleMessage(event){
const senderId = event.sender.id;
const messageText = event.message.text;
const messageData = {
recipient: {
id: senderId
},
message: {
text: messageText
}
}
callSendApi(messageData);
}
function callSendApi(response) {
request({
"uri": "https://graph.facebook.com/me/messages",
// "uri": "https://graph.facebook.com/v2.6/me/messages",
"qs": {
"access_token": access_token
},
"method": "POST",
"json": response
},
function(err) {
if(err) {
console.log('Ha ocurrido un error')
} else {
console.log('Mensaje enviado')
}
}
)
}
app.listen(app.get('port'), function(){
console.log('Nuestro servidor esta funcionando en el puerto', app.get('port'));
})```
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.