我对使用RingCentral和使用应用程序接口调用是个新手。
我正在使用RingCentral的C# nuget示例来帮助我尝试使用它们的腿来获取呼出和呼入日志。
到目前为止,我正在尝试通过使用以下命令获取传入呼叫
ExtensionCallLogResponse callLogsInBound = await mainAccount.CallLog().List(new {
dateFrom = monday.ToString("yyyy-MM-dd"),
dateTo = monday.AddDays(5),
view = "Detailed",
direction = "Inbound"
});
这是一个嵌套的对象,包含导航信息、寻呼信息和多个记录(调用)。将此信息读取到网格视图中以报告UserNames、呼叫计数、呼叫支路的最佳方式是什么?我曾尝试将此对象转换为datatable,但尚未成功,我想知道是否有更好的方法?谢谢,K。
发布于 2018-09-06 04:59:36
有几种方法可以避免读取大块或整个呼叫日志,这将迫使您使用导航数据在页面之间导航。
一种方法是短时间内读取每个分机的呼叫日志(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数据的name列。
https://stackoverflow.com/questions/52168353
复制相似问题