В моем приложении я устанавливаю ограничение записи для пользователя (60 секунд). Если пользователь превышает эту длину в записи, Twilio воспроизводит сообщение » произошла ошибка приложения.»
Вместо того, чтобы воспроизводить это сообщение, Я хочу, чтобы Twilio просто повесил трубку (вместо того, чтобы сообщать пользователю об ошибке).
Как бы я это сделал? Это мой текущий код.
twiml.say("Hello...");
twiml.record({
action: "/nowhere",
method: "POST",
maxLength: recordingLength,
recordingStatusCallback: config.get("RECORDING_CALLBACK")
});
twiml.hangup();
Twilio разработчик евангелист здесь.
Ваша проблема здесь заключается в использовании
action
атрибута для указания"/nowhere"
. Я предполагаю, что"/nowhere"
это действительно никуда не ведет.После
<Record>
завершения , в том числе при попадании в негоmaxLength
, Twilio сделает запрос кaction
атрибуту, чтобы узнать, что делать дальше. Если URL-адрес не отвечает с TwiML тоже, то вы услышите сообщение об ошибке. Потому<Record>
что всегда вызывает егоaction
или текущий URL-адрес документа, когда он завершен, то наличие TwiML после<Record>
не будет работать. Таким образом, вам нужно указатьaction
to"/somewhere"
вместо этого, и эта конечная точка должна вернуть TwiML<Hangup>
.Дайте мне знать, если это поможет.