Twilio getNextPage通过SMS日志到页面



我试图在过去6个月中从Twilio中检索所有SMS日志,然后将它们插入表中。去年,Twilio贬低了绝对分页,而有利于相对分页。任何使用TwilioMessageListRequest.PageNumber的尝试都会通过警告失败,而是使用GetNextPage and GetPreviousPage。但是,我找不到有关它们使用的任何文档。我最接近盲目拼凑在一起的是:

        var request = new MessageListRequest();
        var scheck = new TwilioListBase();
        scheck.PageSize = 1000;
        request.DateSentComparison = ComparisonType.GreaterThanOrEqualTo;
        request.DateSent = DateTime.Today.Subtract(TimeSpan.FromDays(180));
        var messages = twilio.ListMessages(request);
        while(scheck.NextPageUri != null)
        {
            foreach (var message in messages.Messages)
            {
                string body = message.Body.ToString();
                SMS_Logs newLog = new SMS_Logs();
                newLog.Sid = message.Sid;
                newLog.DateSent = message.DateSent;
                newLog.To = message.To;
                newLog.From = message.From;
                newLog.Body = message.Body;
                newLog.Status = message.Status;
                newLog.ErrorCode = message.ErrorCode;
                newLog.ErrorMessage = message.ErrorMessage;
                db.SMS_Logs.InsertOnSubmit(newLog);
            }
            twilio.GetNextPage();
        }

但是,这是行不通的。就目前而言,我会收到错误"方法'getNextPage'的否超载'获取0参数"。显然,我缺少GetNextPage的必需组件,但是我在弄清楚到目前为止的情况时已经非常失败。对我在这里忽略的内容的任何解释都将受到极大的赞赏。

这似乎是以下问题的重复:C#?

中的getNextPage使用的示例

尝试一下API Explorer:https://www.twilio.com/console/dev-tools/api-explorer/smss/sms/smss/sms-mms-list

C#中的示例:

using System;
using Twilio;
class Example
{
    static void Main (string [] args)
    {
        // Find your Account Sid and Auth Token at twilio.com/user/account
        string AccountSid = "";
        string AuthToken = "";
        var twilio = new TwilioRestClient (AccountSid, AuthToken);
        var request = new MessageListRequest ();
        var messages = twilio.ListMessages (request);
        while (messages.NextPageUri != null) {
            foreach (var message in messages.Messages) {
                Console.WriteLine (message.Body);
            }
            messages = twilio.GetNextPage<MessageResult> (messages);
        }
    }
}

辅助库将自动从API获取列表,直到处理所有记录匹配您的标准为止。

您可以使用Messagelistequest限制结果。

最新更新