調用短信服務API接口后,如果您需要獲取短信發送狀態、用戶回復的短信內容、簽名模板審核狀態等,可通過配置回執消息獲取相關內容。
回執消息簡介
短信服務接收回執消息的模式有MNS消息隊列消費模式和HTTP批量推送模式兩種,您可根據實際情況選擇合適的模式接收回執消息。
MNS消息隊列消費模式
MNS消息隊列消費模式表示通過MNS的Queue模型來接收指定地域的短信回執消息和上行短信內容。云通信的所有業務消息都支持MNS消息服務向外發送。用戶在短信服務控制臺啟用MNS消息服務訂閱指定的消息類型(MessageType)時,系統會自動生成該類型的獨立消息隊列及名稱(QueueName)。您可使用此消息隊列名稱(QueueName)和消息類型(MessageType),通過調用SDK從后臺來獲取隊列中的短信狀態報告。
HTTP批量推送模式
HTTP批量推送模式表示通過HTTP POST方式發送消息到指定的Web URL。在短信服務控制臺設置HTTP回調URL(callback_url)后,當業務消息產生時,系統會使用HTTP請求以POST方式將業務消息(即上行短信消息或短信狀態報告)發送到指定的回調URL上,用戶可直接接收此消息。
回執消息類型
選擇回執消息模式之后,您還需要選擇消息類型(MessageType),接收不同場景下的回執消息。根據短信發送狀態、用戶回復的消息內容等不同場景,我們提供了如下消息類型,您可根據業務需要進行選擇。
國內短信
名稱 | 描述 | MNS消息隊列消費模式 | HTTP批量推送模式 |
SmsUp(上行消息接收) | 上行短信指用戶發送給通信服務提供商的短信,用于定制某種服務、完成某種查詢或是辦理某種業務等。通過訂閱SmsUp上行短信消息,可以獲取終端用戶回復短信的內容。 | ||
SmsReport(下行狀態報告接收) | 與上行短信相對應的是下行短信。下行是指用戶收到的短信,例如運營商發送的消息通知、業務提醒等短信。通過訂閱SmsReport短信下行狀態報告,可以獲知每條短信的發送情況,了解短信是否達到終端用戶的狀態與相關信息。 | 說明 如果您發送短信到國際地區,可以通過GlobeSmsReport獲取短信狀態報告。 | |
SignSmsReport(簽名審核狀態) | 簽名審核狀態消息是指通過API接口AddSmsSign申請短信簽名后,可以通過SignSmsReport接口獲取簽名的審核狀態消息。 | - | |
TemplateSmsReport(模板審核狀態) | 模板審核狀態消息是指通過API接口AddSmsTemplate申請短信模板后,可以通過TemplateSmsReport接口獲取模板的審核狀態消息。 | - |
卡片短信
名稱 | 描述 | MNS消息隊列消費模式 | HTTP批量推送模式 |
MnsCardVender(卡片短信渲染消息) | 卡片短信渲染消息是指在創建卡片模板時,可以通過MnsCardVender接口獲取短信渲染消息。 | ||
MnsCardTemplate(卡片短信模板審核狀態) | 卡片短信模板審核狀態消息是指通過API接口CreateCardSmsTemplate申請模板后,可以通過MnsCardTemplate接口獲取模板的審核狀態消息。 |
配置回執消息
由于系統存在緩存,開啟回執消息后不會立即全量推送,建議等待15分鐘確認是否已生效。
如果出現網絡異常、響應超時等情況,可能會導致回執消息推送重復、回執消息獲取失敗等問題。如果回執消息獲取失敗,您可以通過QuerySendDetails接口查詢短信發送詳情。目前支持查詢24小時內的發送數據、30天內的發送記錄。
回執消息不保證冪等性,如果開發者后續處理邏輯需要考慮冪等性,需要根據業務場景做合適的冪等處理。
配置步驟
登錄短信服務控制臺。
在左側導航欄選擇
。在狀態報告接收、上行消息接收、審核狀態頁簽,開啟指定模式。
以開啟狀態報告接收為例,其他操作類似。
MNS消息隊列消費模式
說明為優化短信服務底層性能,減少隊列調用對您業務的壓力,超過3個月無發送量時,MNS消息隊列將進入休眠狀態,重新發送短信后,MNS隊列將自動取消休眠。
開啟MNS消息隊列消費模式右側的功能開關。
設置地域,選擇地域。
此地域須和調用接口時所選的地域一致。
單擊確定,設置完成。
HTTP批量推送模式
說明HTTP批量推送模式的響應超時時間為700毫秒。
開啟HTTP批量推送模式右側的功能開關。
單擊修改內容,填寫回執消息的接收地址。
示例:http://push.example.com/contextpath/receive.do。
單擊確定。
設置完后,您可以單擊測試,測試已填寫的URL是否可以收到測試用的回執信息。