【发布时间】:2020-06-24 01:02:31
【问题描述】:
我正在编写一个 Twilio 函数,它记录呼叫者的语音邮件,然后将带有录音 URL 的 SMS 发送到一个固定的电话号码。当呼叫者按任意onFinishKey 键结束语音邮件录制时,它会按预期工作。但是,如果用户通过挂断方式结束语音邮件录制,代码仍会到达下面的 console.log,但不会发送短信。我猜测 TwiML 响应被忽略了,因为调用者已经挂断了。我尝试让Record 的action 指向 TwiML 箱,但 TwiML 箱似乎不支持将 SMS/消息命令作为对语音呼叫的响应 (https://support.twilio.com/hc/en-us/articles/360017437774-Combining-Voice-SMS-and-Fax-TwiML-in-the-Same-Response)。我还尝试让Record 的action 指向一个不同的函数,该函数只发送短信,但当短信代码在同一个函数中时会导致相同的结果。
伪代码:
exports.handler = function(context, event, callback) {
let twiml = new Twilio.twiml.VoiceResponse();
if (!event.RecordingUrl) {
twiml.say('Starting to record...');
twiml.record();
} else {
twiml.sms(`${event.RecordingUrl}`, {to: '+1-222-333-4444'});
console.log('Prepared TwiML to send text message!');
}
callback(null, twiml);
}
有没有办法解决这个问题?
【问题讨论】:
标签: twilio twilio-api twilio-twiml