用途:通过 Telnyx Python SDK 完成短信与彩信收发,适合做通知、双因素验证(2FA)及消息类应用。安装使用 pip install telnyx,随后用 API Key 初始化客户端:client = Telnyx(api_key=os.environ.get("TELNYX_API_KEY"))。所有示例均假定已按上述方式初始化 client。 主要能力:核心发送接口 client.messages.send()(POST /messages),必需参数为 to、from_、text,可选 messaging_profile_id、media_urls、webhook_url 等。另有发送接口支持字母数字发送方 ID(send_with_alphanumeric_sender)、群发 MMS(send_group_mms)、长号(send_long_code)、号码池(send_number_pool)、短号(send_short_code)、定时发送(schedule,含 send_at)以及 WhatsApp 消息(send_whatsapp)。支持查询消息、取消定时消息、管理字母数字发送方 ID、托管号码、退订列表、消息配置指标等运维接口。 使用方式:号码须为 E.164 格式(如 +13125550001),带 + 与国家码,不含空格、横线或括号。列表接口返回自动分页迭代器,可用 for item in page_result 遍历。Webhook 使用 Ed25519 签名,请求头包含 telnyx-signature-ed25519 与 telnyx-timestamp;生产环境应校验签名,例如在 Flask 中用 request.get_data(as_text=True) 取原始请求体,再调用 client.webhooks.unwrap(payload, headers=headers),校验失败返回 400。 适用场景:通知推送、2FA 验证码、营销与客户触达、群发 MMS、定时提醒和 WhatsApp 消息等。 限制与注意事项:发送号码须已分配到正确的消息配置;美国 A2P 长号流量在正式发送前必须完成 10DLC 注册,否则运营商可能拦截或大幅过滤。投递 Webhook 是异步的,发送响应仅代表请求被接受,不代表最终运营商投递成功。生产代码需处理网络错误、429 限流、422 校验错误和 401 认证错误。不要臆造 Telnyx 参数、枚举、响应字段或 Webhook 字段;内联未给出的字段应先查阅对应参考文档。
telnyx-messaging-python
编程与开发
更新于 10-16 03:35