Twilio нажмите, чтобы позвонить и собрать цифру
Я разработал сеть, которая соединяет двух человек в вызов после этого урока: https://www.twilio.com/docs/tutorials/click-to-call-node-express и все работает отлично.
Теперь мне нужно собрать 1 цифру вызываемого, чтобы выполнить команду.
Читая документацию по Twilio, кажется, что я не могу использовать Gather до тех пор, пока не закончится глагол Dial, но в этом случае вызов закрывается, и вызываемый абонент ничего не может набрать.
Я попытался это без успеха, циферблат работает нормально, но обратный вызов цифр никогда не выполняется:
twimlResponse.say(
'Please wait for the other person to join the call'
);
twimlResponse.dial({
timeLimit: 30
})
twimlResponse.dial(to_number)
const gather = twimlResponse.gather({
input: 'dtmf',
timeout: 30,
numDigits: 1,
action: url // the url is the callback that should handle the digit entered
});
Это ограничение Twilio? любой обходной путь или альтернативная стратегия вызова?
1 ответ
Я считаю, что вам нужно отправить url
с number
вы набираете номер, и этот URL-адрес отвечает сообщением TwiML, которое вы хотите использовать для взаимодействия с вызываемым абонентом. С https://www.twilio.com/docs/api/twiml/number:
Атрибут 'url' позволяет вам указать URL для документа TwiML, который будет выполняться на конце вызываемой стороны, после того, как она ответит, но до того, как стороны будут соединены. Вы можете использовать этот TwiML для частного воспроизведения или передачи информации вызываемой стороне или предоставления возможности отклонить телефонный звонок, используя
<Gather>
а также<Hangup>
,
Так что-то вроде этого:
const dial = twimlResponse.dial({
timeLimit: 30
});
dial.number({
url: urlToGather // respond to this URL with your <Gather> TwiML
}, to_number);