我正在尝试使用 Python 中的 Twilio API 发送 WhatsApp 消息。具体来说,我想使用 Twilio 对 WhatsApp 模板消息中的动态内容的支持。
我已在 Twilio 中创建了一个目录模板,并填写了目录标题、正文、副标题和缩略图项 ID。我还选择了“在发送时指定”选项,这样当从我的 Python 代码发送消息时,我可以动态地在消息中包含项目详细信息。
但是,我很难理解如何在 API 请求中正确包含这些动态变量。 Twilio 文档提供了基本 WhatsApp 消息传递的示例,但没有明确解释如何在目录模板中传递动态字段的自定义值。
这是我到目前为止的Python代码:
import os
from twilio.rest import Client
import json
# Hardcoded Account SID and Auth Token
account_sid = "AC29e4f65xxxxxxxxxxxxxxxxxxxxxx"
auth_token = "005d910f855463raggggggggregaer"
client = Client(account_sid, auth_token)
message = client.messages.create(
content_sid="HXXXXXXXXX", # Content SID of the catalog template
to="whatsapp:+9193XXXXXXXXXXX", # Recipient WhatsApp number
from_="whatsapp:+1xxxxxxxxxx" # Twilio-provided WhatsApp sender number
)
print(message.body)
这些是我想动态添加的一些产品示例
{
"products": [
{"name": "Burrata", "id": "5t84ih3l2a"},
{"name": "Grilled Salmon", "id": "g29jf8210c"},
{"name": "Lobster Roll", "id": "p84jls9q5v"},
{"name": "Roasted Pumpkin and Coconut Soup", "id": "k7n45x91uz"},
{"name": "Fillet Steak", "id": "q01mz8l7xy"},
{"name": "Steak and Lobster", "id": "f74xjp921v"},
{"name": "T-Bone", "id": "z18uwj53mc"},
{"name": "Farm Raised Chicken Breast", "id": "c23jv891yz"}
]
}
问题: 发送消息时如何在 Python 代码中指定动态内容(例如项目 ID 或其他变量)? 在 client.messages.create 方法中传递这些动态变量是否有特定的格式? 我是否需要以 JSON 格式对动态内容进行编码,或者是否需要在 API 调用中包含特定参数? 使用 Twilio 的 Python SDK 时,是否有任何示例或最佳实践来实现目录模板的动态内容? 任何帮助或代码示例将不胜感激!我已经阅读了官方文档,但找不到这方面的明确指南。如果需要任何其他库或步骤,请告诉我。
几个月前刚刚使用 this
实施我使用node.js实现
await client.messages.create({
contentSid,
contentVariables: JSON.stringify(contentVariables),
from: <messageServiceSid>,
to: `whatsapp:${phone}`,
})