twilio新手。我正在尝试给我公司的IVR拨打twilio电话并记录语音块。例如,当我拨打IVR时,我得到: 您好,欢迎来到...按1进行... 我们的菜单最近更改了,因为...按1
我可以拨打:
static void Main(string[] args)
{
string accountSid = "xxxxxxxx";
string authToken = "xxxxxxx";
Twilio.TwilioClient.Init(accountSid, authToken);
var call = CallResource.Create( 9876543210, 1234567890,
record: true,
recordingChannels: "dual",
url: new Uri("http://www.mycompany.com/DialOption"),
sendDigits: "wwww1234wwww1234567890")
}
在我的网络服务器上,我有:
public class DialOptionController : TwilioController
{
[HttpPost]
public TwiMLResult Index(VoiceRequest request)
{
var response = new VoiceResponse();
response.Pause(19);
response.Play(digits: "1");
response.Pause(19);
response.Play(digits: "1");
response.Pause(9);
response.Play(digits: "1");
return TwiML(response);
}
}
在选择选项之前如何让录音给我块,而不是整个录音在一个文件中?
答案 0 :(得分:1)
我相信你无法以大块的方式接听电话。您只能在通话结束时获得指向整个录音的链接。
如果您选择Gather
或input=speech
而不是默认input=speech dtmf
,则可以在input=dtmf
动词中录制唯一可以录制的录音,并提供partialResultCallback
参数的值。例如:
var response = new VoiceResponse();
var gather = new Gather(input: "speech",
action: new Uri("/completed"),
partialResultCallback: new Uri("/partial"));
gather.Say("Welcome to Twilio, please tell us why you're calling");
response.Append(gather);
Console.WriteLine(response.ToString());