Я вижу, что Dialogflow имеет выполнение и установку webhook, чтобы обеспечить дальнейший динамический и логистический контроль над ответами бота. Я пытаюсь привязать базу данных поверх webhook, но я использую канал обмена текстовыми сообщениями Twilio, и у меня возникли небольшие проблемы с их соединением. Когда я активирую выполнение, бот twilio не читает его. Есть ли способ решить эту проблему?
Я уже создал несколько веб-хуков, используя Flask, и кратко интегрировал их через выполнение, используя ngrok, но бот отвечает через текстовые ответы, которые я установил для него. Это для помощи Google и Facebook Messenger, но не с интеграцией Twilio.
Я также попытался использовать inlineJS, чтобы выяснить, имеет ли это какое-то значение, чтобы конкретно определить Twilio в качестве используемого средства обмена сообщениями, однако он не достиг пика успеха.
const functions = require('firebase-functions');
const {dialogflow} = require('actions-on-google');
const GOODLOCATION = 'location.good'
const NEARLOCATION = 'location.near'
const CHEAPLOCATION = 'location.cheap'
const WELCOME_INTENT = 'Default Welcome Intent'
const FALLBACK_INTENT = 'Default Fallback Intent'
const CRAVINGCULTUREINTENT = 'CravingCulture'
const CRAVINGITEM = 'CravingItem'
const app = dialogflow()
/*Supported Platforms*/
const PLATFORMS = {
UNSPECIFIED: 'PLATFORM_UNSPECIFIED',
FACEBOOK: 'FACEBOOK',
SLACK: 'SLACK',
TELEGRAM: 'TELEGRAM',
KIK: 'KIK',
SKYPE: 'SKYPE',
LINE: 'LINE',
VIBER: 'VIBER',
ACTIONS_ON_GOOGLE: 'ACTIONS_ON_GOOGLE',
TWILIO: 'TWILIO'
};
// Platforms that support Rich messaging
const SUPPORTED_RICH_MESSAGE_PLATFORMS = [
PLATFORMS.FACEBOOK,
PLATFORMS.SLACK,
PLATFORMS.TELEGRAM,
PLATFORMS.KIK,
PLATFORMS.SKYPE,
PLATFORMS.LINE,
PLATFORMS.VIBER,
PLATFORMS.ACTIONS_ON_GOOGLE,
PLATFROM.TWILIO
];
app.intent(WELCOME_INTENT, (conv)=> {
if(agent.requestSource === agent.TWILIO){
conv.ask('This is working, Congratulations!')
}
else{
conv.ask("Could not be served")
}
});
app.intent(FALLBACK_INTENT, (conv)=> {
conv.ask("I am unaware of that phrase, could you repeat that?")
});
exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app)
Я хочу, чтобы на выходе было что-то, что пользователь вставляет через twilio, чтобы этот бот отвечал соответственно тому, что было передано.