[英]One API call to send SMS to multiple users (Twilio)
我有一個大約 50 個電話號碼的列表,我需要通過 Twilio 的 API 向其發送相同的 SMS。 我該怎么做(通過 Python)?
我可以像這樣在 for 循環中執行此操作:
from twilio.rest import Client
client = Client(SID, AT)
for number in number_list:
client.messages.create(to=number, from_="+18328955063",body="foo bar")
但是,與其多次訪問 Twilio 的 API,我寧願批量發送一組電話號碼/列表,然后只進行一次 API 調用。 那我該怎么做呢? 有可能嗎?
我正在設置一個后台異步任務來處理傳出的短信,理想情況下我不希望我的任務在 Twilio 一條一條地處理消息時等待很長時間。 我只想發送一個數字列表作為有效負載並完成它。
Twilio 開發者傳播者在這里。
您可以使用Twilio Notify API實現此目的。 Notify 用於向多個平台發送通知,但其中包括 SMS。
以下是您的操作方式:
首先,創建一個Notify 服務。
然后,您需要通過為所有用戶創建綁定來使用 Notify API 注冊所有用戶及其號碼。 每個綁定都需要來自您的系統的某種身份(用戶 ID 或類似的)。
from twilio.rest import Client
account = "YOUR_ACCOUNT_TOKEN"
token = "YOUR_AUTH_TOKEN"
client = Client(account, token)
service = client.notify.services("YOUR_NOTIFY_SERVICE_SID")
for identity, number in user_dict.items():
service.bindings.create(
identity=identity,
binding_type="sms",
address=number
)
然后,要向一組用戶發送通知,您只需為他們的身份創建一個通知:
service.notifications.create(identity=list_of_identities,
body="Hello world!")
這一次只需要 20 個身份,但您也可以在創建綁定或 段以發送更多身份時使用標簽做一些工作。
讓我知道這是否有幫助。
您也可以這樣做: https ://www.twilio.com/docs/notify/api/notification-resource#code-send-a-notification-to-bindings-in-the-request-1
notification = client.notify.services("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")\
.notifications.create(
to_binding=[
"{\"binding_type\":\"sms\",\"address\":\"+15555555555\"}",
"{\"binding_type\":\"facebook-messenger\",\"address\":\"123456789123\"}"
],
body="Hello Bob")
不需要創建綁定,順便說一下,twilio 可以接受 10,000 個數字
指定為 JSON 字符串的目標地址。 可以包含多個 to_binding 參數,但請求實體的總大小不應超過 1MB。 這通常足以容納 10,000 個電話號碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.