![](/img/trans.png)
[英]Why am I getting a “Cannot access a disposed object” error when trying to make a RingOut call via RingCentral SDK?
[英]RingCentral ExtensionCallLogResponse Object for Calls
我是使用 RingCentral 和使用 API 调用的新手。
我正在使用 RingCentral 的 C# nuget 示例来帮助我尝试用他们的腿获取呼出和呼入呼叫日志。
到目前为止,我正在尝试使用
ExtensionCallLogResponse callLogsInBound = await mainAccount.CallLog().List(new {
dateFrom = monday.ToString("yyyy-MM-dd"),
dateTo = monday.AddDays(5),
view = "Detailed",
direction = "Inbound"
});
这是一个嵌套的对象,包含导航信息、分页信息和多条记录(呼叫)。 将此信息读入 gridview 以报告用户名、呼叫计数、呼叫分支的最佳方法是什么? 我曾尝试将此对象转换为数据表,但还没有成功,我想知道是否有更好的方法? 谢谢,K。
有几种方法可以避免阅读一大块或整个通话记录,这会迫使您使用导航数据在页面之间导航。
一种方法是在短时间内读取每个分机的通话记录(fromDate 和 toDate)并将 perPage 参数设置为最多 1000 个项目。 (使用用户呼叫日志端点)
如果您想使用公司呼叫日志端点读取整个公司呼叫日志,则指定更短的时间段以确保它适合每页 1000 个项目。
要将数据添加到您的数据库中,我不确定您正在考虑哪种类型的数据库,但是您可以制作例如 .csv 格式,然后解析响应以提取您想要保留的数据。 有关响应信息,请参阅 API 参考。
// e.g.
var callLogs = await rc.Restapi().Account().Extension(1234567890).CallLog().List(parameters);
var csv = "id,uri,result";
foreach(var record in callLogs.records)
{
csv += "\r\n" + record.id + "," + record.uri + "," + record.result;
}
System.Console.WriteLine(csv);
您提到的用户名是帐户下每个分机/用户的名称吗? 如果是这样,我认为您可以调用分机列表读取帐户下所有分机的信息,使用分机id读取该分机的通话记录,如上图。 然后在解析通话记录响应时,只需将该扩展名的名称添加到 csv 数据的名称列中即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.