изменение входящего текста в бот Facebook

Я сделал свой основной бот FB Messenger, и он отвечает на входящие сообщения Facebook. Теперь я хочу, чтобы пользователь отправлял сообщения моему боту, скажем на испанском, я хотел бы захватить сообщение, прежде чем оно будет отображено на моем боте, и использовать машинный перевод для преобразования текста в английский, а затем отобразить сообщение на моем бот.

Как я могу получить тест до того, как он будет опубликован на боте?

-3

Решение

в основном я бы посоветовал вам сделать это в 2 этапа (при условии, что вы используете nodejs)

Шаг 1: собрать пользовательский ввод (см. ниже пример кода, начинающийся с «self.messagereact»)

шаг 2, который нужно поместить в шаг 1: обработать ввод в любой движок языка (см. ниже функцию getengineanswer (функция sendMessage доступна в fb docs)

//Шаг 1:

 self.messagereact = function(){
console.log('start processing incoming event');
self.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;
// Handle a text message from this sender
//test the generic template if the user writes generic
if (text === 'generic'){
sendGenericMessage(sender);
}
else{
console.log("This is the text sent to the engine to be analyzed "+ text);
var answer = getanswer_from_engine(sender,text);
}
}
//handle postback when a button is clicked
if (event.postback) {
var text2 = event.postback.payload;
console.log("This is the payload of the button" + text2);
var answer2 = getanswer_from_engine(sender,text2);
//continue;
}
}
res.sendStatus(200);

})
};

//шаг 2 :

function getanswer_from_engine (sender,text_to_analyse) {
console.log("This is the text that I have to analyse " + text_to_analyse);
var request = require('request');
request({
url: 'PUT HERE THE URL OF THE SERVICE', //URL to hit
method: 'POST',
//parameters to connect to the service
form: {
token : TOKEN OF YOUR SERVICE
parameter 1 : xxxx,
parameter 2 : yyyy,
input: text_to_analyse
}
}, function(error, response, body){
if(error) {
console.log("The error is " + error);
console.log("The body is " + body);
sendTextMessage(sender,'Oops something went wrong');
} else {

//process here the answer from your engine
var answer = ENGINE OUTPUTsendTextMessage(sender,answer);

}

});
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector