如何在 Twilio API 中使用 python 检索给定日期后的 SMS 消息

Fig*_*ire 1 python twilio twilio-api

我正在尝试在给定日期之前从 twilio 消息列表中检索 SMS 消息。当我要求它提供带有等号的给定日期时,它会起作用(它会返回 2019 年 2 月 2 日的所有短信:

 timestamp = datetime.datetime(2019, 2, 15, 0, 0,0)
 client = Client(account_sid, auth_token)

 messages = client.messages.list(
                           date_sent=timestamp
                       )
Run Code Online (Sandbox Code Playgroud)

但如果我尝试使用:

 date_sent<=timestamp
Run Code Online (Sandbox Code Playgroud)

或者

 date_sent>=timestamp
Run Code Online (Sandbox Code Playgroud)

我收到一个错误。

global name 'date_sent' is not defined
Run Code Online (Sandbox Code Playgroud)

该文档似乎建议您可以使用 >= 或 <= 运算符,但实际上这种方式不起作用。有什么想法如何让它吐出正确的数据吗?

Kel*_*son 5

Twilio 开发者布道者在此!很好的问题,这没有很好的记录。我将与团队合作解决这个问题。

python 库在日期之前有一个不同的过滤器参数,因此您需要的date_sent_beforedate_sent

import os
import datetime

from twilio.rest import Client

account_sid = os.environ['TWILIO_ACCOUNT_SID']
auth_token = os.environ['TWILIO_AUTH_TOKEN']

timestamp = datetime(2019, 2, 15, 0, 0,0)
client = Client(account_sid, auth_token)

# retrieve all messages before a given date
messages = client.messages.list(date_sent_before=timestamp)

print(len(messages1))
print(len(messages2))
Run Code Online (Sandbox Code Playgroud)

如果您还有其他问题,请告诉我:)