Согласно этой документации, я все сделал и получил конечный URL, как указано ниже:
https://dialogflow-twilio-4syckuoz4a-uc.a.run.app
установите этот URL-адрес в веб-перехватчике сообщений как метод HTTP POST. Когда я проверил этот URL-адрес в браузере и не получил никаких результатов, он отображается как Cannot GET /.
Отключил проверку SSL в настройках Twilio. Проверено с http и https, но оба не работают. Получена ошибка 11200 в отладчике twilio. Что я упустил. Пожалуйста, помогите мне.
это сценарий server.js согласно документации
const express = require('express');
const request = require('request');
const app = express();
const dialogflowSessionClient =
require('../botlib/dialogflow_session_client.js');
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
const projectId = 'xxxxxxxxxx';
const phoneNumber = "xxxxxxxxxx";
const accountSid = 'xxxxxxxxxx';
const authToken = 'xxxxxxxxxxxxxxx';
const client = require('twilio')(accountSid, authToken);
const MessagingResponse = require('twilio').twiml.MessagingResponse;
const sessionClient = new dialogflowSessionClient(projectId);
const listener = app.listen(process.env.PORT, function() {
console.log('Your Twilio integration server is listening on port '
+ listener.address().port);
});
app.post('/', async function(req, res) {
const body = req.body;
const text = body.Body;
const id = body.From;
const dialogflowResponse = (await sessionClient.detectIntent(
text, id, body)).fulfillmentText;
const twiml = new MessagingResponse();
const message = twiml.message(dialogflowResponse);
res.send(twiml.toString());
});
process.on('SIGTERM', () => {
listener.close(() => {
console.log('Closing http server.');
process.exit(0);
});
});