Sto scrivendo un Facebook Messenger bot e sto cercando di memorizzare una risposta testo dopo un postback. Quello che voglio dire con questo è che ho un messaggio che invia un post indietro e seconda di quale opzione scelgono, possono digitare un messaggio indietro e devo conservare quel testo. Il problema è che io voglio solo per memorizzare il testo dopo che selezionare un'opzione per il messaggio palo. Anche il testo può essere qualsiasi cosa, quindi non posso scrivere un'istruzione if per esso.
Ecco il mio codice:
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;
if (text == Start) {
sendTextMessage(sender, Hey User! I'm a bot);
}
}
else if (event.postback) {
// These are for chosing availibility
if (JSON.stringify(event.postback) == '{payload:postback}') {
setTextMessage(sender, Postback recieved);
}
}
}
Tutto è pronto e funzionante. Ma quando viene ricevuto il postback voglio aspettare una risposta da parte dell'utente prima di terminare in modo da poter salvare il testo. Come ho detto prima può essere qualsiasi cosa che significa che non posso solo scrivere un'istruzione if come ho fatto con Start. Ho anche solo voglia di salvare il testo dopo aver fatto clic sul pulsante postback.
Stavo pensando di aggiungere un ciclo while e in attesa per il testo di essere ricevuti prima di terminare la funzione di postback, ma non riuscivo a capire.
Così come dovrei aspettare per il testo dopo che ho inviato un messaggio con un postback?
Ogni aiuto è apprezzato, grazie!













