Как преобразовать twilio twiML с шаблонами в код node.js - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь преобразовать twiML с шаблонами в код node.js, используя библиотеку twilio npm.Более конкретно, я пытаюсь сделать аналогичный вызов (с node.js) для следующего twiML:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Dial callerId="+302111982501">{{#e164}}{{To}}{{/e164}}</Dial>
</Response>

Я использовал другие twiMLs в своем коде, используя библиотеку twilio npm в своем коде.У меня возникли проблемы с тем, как преобразовать те, которые используют шаблоны в форме {{}}.

ОБНОВЛЕНИЕ: вышеуказанный twiML-файл использовался в качестве голосовой URL-ссылки в домене Voice SIP twilio для всех исходящих сообщений.звонки из моего домена sip, кажется, исходят с того же номера (callerId).Я изменил URL, чтобы попасть в остальные API в node.js, а также смог ответить на twilio (из REST API) с помощью XML, используя следующий код:

const voiceResponse = new VoiceResponse();
const dial = voiceResponse.dial({ callerId: '+302111982501' }); 
dial.number('+306944444444'); 
res.status(200).contentType('text/xml') 
.send(voiceResponse.toString());

вызов отлично работает.

Проблема в том, что я хочу получить набранный номер {{To}} и поместить его в dial.number ().Поэтому я попытался прочитать req, который входит в мой REST API, используя req.body, req.params, req.query.Я не смог найти данные, касающиеся вызова twilio.REST API работает на Google App Engine, используя экспресс.

Итак, обновленный вопрос:

Как получить исходящую информацию twilio (Кому) из запроса POST, который twilio отправляет, когда домен голосового SIP связан с голосовым URL, который попадает вREST API вместо TwiML?

1 Ответ

0 голосов
/ 26 января 2019

Я наконец-то понял.

Мне пришлось добавить: app.use(bodyParser.urlencoded({ extended: true })); к api экспресс-отдыха, поскольку запросы от twilio относятся к типу содержимого: x-www-form-urlencoded.

...