2015-08-07 2 views
1

Twilio просто отключает/вызывает зависание, когда пользователь выбирает фунт-ключ «#» в событии нажатия клавиши.Twilio Call отключается, когда пользователь выбирает «#» фунтовый ключ

response = Twilio::TwiML::Response.new do |r| 
     r.Gather action: post_to do 
     r.Play TWILIO["RECORDINGS_URL"] + "recording.wav" 
     r.Say "We have recieved no input. Thank you." 
     end 
     r.Hangup 
    end 

В этом случае, когда пользователь выбирает клавишу # в то время как запись воспроизводится, Twilio переходит к следующему имени в r.Say и зависания вызова. И событие не запускается для сервера приложений с выбранными цифрами как «#».

Когда пользователь выбирает кроме параметров «#», то есть 0-9 или *, он работает нормально.

+0

В чем Ваш вопрос? – sawa

ответ

5

Twilio разработчик евангелист здесь.

По умолчанию <Gather> глагол фактически имеет attribute finishOnKey set to "#". Когда установлен finishOnKey Twilio будет прослушивать все входные данные и отправлять их на URL-адрес action при нажатии этой клавиши. Если нет ввода, отличного от finishOnKey, Twilio рассматривает его как входной сигнал и будет перемещаться в TwiML и, в вашем случае, повесить трубку.

Чтобы исправить это, если вы ожидаете определенного количества символов ввода, я бы установил finishOnKey="" (пустая строка) и numDigits="X", где X - это количество цифр, которое вы хотите ввести. В качестве альтернативы, если у вас нет фиксированного количества цифр, которые вы ожидаете, вы можете установить тайм-аут, который будет либо публиковать все цифры, введенные в течение времени, либо продолжить через TwiML, если ничего не было введено.

Дайте мне знать, если это поможет!

+0

Его работы Прекрасно, как ожидалось, спасибо :) –

+1

Рад это слышать! Если бы это был ответ, не могли бы вы принять его как правильное? Тогда другие люди, рассматривающие этот вопрос, смогут увидеть, что этот ответ им поможет. Благодаря! – philnash

+0

Если ключ # введен как только он работает как ожидалось, и если # нажата дважды или три раза или больше за раз, то он отключает , даже numdigits установлен в 1, а для параметра finishonkey установлено значение "". r.Gather действие: post_to, тайм-аут: 60, numDigits: 1, finishOnKey = «» у пожалуйста совет –

Смежные вопросы