我正在建立一个网站,允许人们通过Twilio在线接收短信。
我计划通过Twilio接收数据,然后将其存储在数据库中。以下是我想出的处理此问题的快速示例数据库架构:
CREATE TABLE InboundSMS(
MessageSid TEXT,
SmsSid TEXT,
AccountSid TEXT,
MessagingServiceSid TEXT,
From TEXT,
To TEXT,
Body TEXT,
NumMedia TEXT
);
但是当我阅读文档时,我看到了下面关于MessageSid
的内容。
消息的 34 个字符的唯一标识符。以后可以使用 从 REST API 检索此消息。
这让我质疑我是否需要将收到的 SMS 消息存储在我自己的数据库中?我可以将它们存储在 Twilio 上并使用 API 检索它们吗?
这里建议做什么?它们在 Twilio 上保留多长时间?
Twilio开发者布道者在这里。
您绝对可以使用Twilio作为这些消息的存储。我们不会删除短信,因此您可以随时查找它们。
但是,这取决于您希望如何访问应用程序中的消息。您可以通过各种方式过滤 SMS 消息列表,但这可能不适用于您希望如何使用它们。将消息存储在您自己的数据库中也有性能优势,您可以在其中使用连接的数据库驱动程序而不是通过 HTTP 访问它们。
如果您确实想保留它们,则可以很好地使用 MessageSid 作为数据库表上的键字段,以匹配 Twilio 存储消息的方式。
另外,请注意,MessageSid 和 SmsSid 是相等的。SmsSid 只是一个保留的遗留值,以便与旧版本的 API 向后兼容。
让我知道这是否有帮助。
Twillio 将无限期地存储您的消息,直到您删除它们,但它们确实会收取存储费用。
Twilio 按月收取存储费用。每月前 5GB 免费存储,额外存储按每GB 20¢收费 每月。
如果您想节省几美元,最好将它们存储在本地,并在插入本地存储后从 Twilio 中删除它们。无论如何,从本地数据库中检索它们可能会更快。
Twilio员工会建议你远程存储,这样他们就可以赚几块钱:P这是有道理的。
https://www.twilio.com/help/faq/sms