从录制状态回调中检索 From 和 To

Retrieving From and To from recording status callback

我需要在本地保存拨出电话录音,为此我需要获取 From 和 To 进行录音。

我正在使用本指南创建示例应用程序:https://www.twilio.com/docs/voice/client/javascript/quickstart

唯一的区别是为了记录调用的下一个处理程序:

exports.handler = function(context, event, callback) {
    let twiml = new Twilio.twiml.VoiceResponse();

     // Wrap the phone number or client name in the appropriate TwiML verb
     // if is a valid phone number
     const attr = isAValidPhoneNumber(event.To) ? 'number' : 'client';
     const dial = twiml.dial({
       callerId: context.CALLER_ID,
       record: 'record-from-ringing-dual',
       recordingStatusCallback: 'https://hooks.mydomain.com/twilio/recording'
     });
     dial[attr]({}, event.To);

     callback(null, twiml);
};

通话结束后我成功收到通知:

{
    "AccountSid": "AC****",
    "CallSid": "CA****",
    "RecordingChannels": 2,
    "RecordingDuration": 24,
    "RecordingSid": "RE***",
    "RecordingSource": "DialVerb",
    "RecordingStatus": "completed",
    "RecordingUrl": "https://api.twilio.com/2010-04-01/Accounts/****"
}

然而,当我使用 API 接听电话和记录详细信息时,没有发件人和收件人信息:

TwilioClient.Init(accountSid, authToken);

var call = CallResource.Fetch(
            pathAccountSid: accountSid,
            pathSid: "CA****"
);
//Console.WriteLine(call.From);

var recording = RecordingResource.Fetch(pathAccountSid: accountSid,
            pathSid: "RE****"); 

我从 Twilio 控制台发现这个调用生成了两条记录:

我的录音存在于父通话中,但 From 和 To 用于子通话。

现在,知道父 ID 后我无法获取子调用。

有什么建议吗?

此处为 Twilio 开发人员布道师。

您可以使用父调用 sid 获取子调用。您可以将其用作 Calls list resource 上的过滤器。在 C# 中,它看起来像:

    TwilioClient.Init(accountSid, authToken);

    var calls = CallResource.Read(
        parentCallSid: parentCallSid,
        pathAccountSid: accountSid
    );