【发布时间】:2021-01-27 15:26:37
【问题描述】:
我有一个工作室流程,我正在尝试处理多种不同的语言。我有一个小部件可以启动调用,然后将其传递给我的函数。但是,在拨打电话并转到该功能后,通话会立即结束。我做错了什么吗?据我了解,我可以将调用发送到一个函数以继续它。我的功能有问题吗?下面看我的函数代码。
exports.handler = function(context, event, callback) {
let twiml = new Twilio.twiml.VoiceResponse();
const gatherOptions = { Numdigit:"1", Timeout:"5"};
let sayOptions = { Voice:"Alice", Language: event.Language };
if(!event.Retries){
event.Retries = 0;
}
console.log(event.Language);
console.log(event.Body);
if (event.Digits) {
if(event.Digits === '9' && event.Retries < 3) {
event.Retries += 1;
twiml.gather(gatherOptions).say(sayOptions, event.Body);
} else if(event.Digits === '3' || event.Digits === '5'){
return callback(null, twiml);
}else {
twiml.say("sorry, I didnt get that.");
event.Digits = '9';
}
} else {
twiml.gather(gatherOptions).say(sayOptions, event.Body);
}
callback(null, twiml);
};
【问题讨论】:
-
嗨 Nemean,欢迎来到 SO!执行此操作时Twilio Debugger 中是否有任何错误消息?你想用这个函数做什么?
-
有一些错误(在选项中),我已经清除它们并开始获得一些声音。现在我正试图取回响应。我正在尝试使用能够执行以下操作的功能: 1. 仅使用 1 个小部件允许多种语言 2. 收集响应并将其发送回我的工作室流程。 (9 次重复消息,3 或 5 次被接受,其他都是重复)