簡訊為何是盡力而為
簡訊沒有保證送達。在你的 API 呼叫與手機之間,橫著匯總商、國際閘道與目標電信業者——它們中任何一個都可能延遲、過濾或悄然丟棄一則訊息。驗證流量受到尤其嚴格的審視,因為電信業者正是在這些路由上打擊詐騙與垃圾。
實際後果是:你必須為部分失敗設計(重送、降級),並主動監控送達,而不是假定已傳送的訊息就是已送達的訊息。
- 送達取決於目標電信業者的過濾政策。
- 國際路由增加閘道,每個都是可能的失敗點。
- 應用程式(A2P)流量比個人對個人流量被過濾得更狠。
寄件者 ID 及其為何重要
寄件者 ID 是收件者看到的「寄件人」——一個長碼、一個短碼,或一個英數名稱。各國差異鮮明:有的要求預先註冊的英數寄件者 ID,有的強制 A2P 使用短碼,有的會改寫或攔截未註冊的寄件者。為每個國家使用正確、已註冊的寄件者 ID,是最大的送達槓桿之一。
- 英數寄件者 ID:以品牌文字作為寄件者;許多國家需要預先註冊。
- 短碼:對 A2P 有最高的吞吐與信任,但需要電信業者核准。
- 長碼:在許多市場沒問題,但在美國需要 10DLC 註冊。
- 在嚴格國家使用未註冊寄件者,是常見的靜默失敗原因。
電信業者過濾與訊息內容
電信業者會給訊息內容評分。URL,尤其是縮短連結、公用短連結服務與異常格式,是過濾的經典觸發點。OTP 訊息應極簡且一致:你的應用程式名稱、驗證碼,別無其他。一致性也有幫助,因為有些電信業者會隨時間在「寄件者 + 範本」的配對上累積聲譽。
- 避免在 OTP 訊息中放連結;縮短連結是強烈的過濾觸發點。
- 保持範本一致——飄忽的內容看起來像垃圾。
- 不要在交易型 OTP 訊息中夾帶行銷。
- 在國家有要求處註冊訊息範本。
如果某個國家的送達突然下降,先懷疑那裡的內容或寄件者 ID 規則變更,再去懷疑你程式碼裡的任何東西。
依國家路由
路由是你的訊息通往目標電信業者所走的路徑,而路由品質因供應商與國家而異。便宜的灰色路由在測試中可能看起來沒問題,隨後卻悄然劣化。對驗證而言,請為你重要的國家優先選擇直連或高品質路由,即便成本更高,並告知你的供應商該流量是 OTP,以便其適當路由。
- 在關鍵市場為驗證優先選擇直連/優質路由。
- 警惕灰色路由:價格低、送達不穩、DLR 差。
- 有些供應商允許你把流量標記為 OTP 以獲得更好路由。
- 分別測試每個重要國家——平均值會掩蓋國家級失敗。
監控送達並據此行動
你無法修復你不去度量的東西。收集送達回條(DLR),依國家與依電信業者追蹤送達率與延遲,再對退化發出警示。把它與降級邏輯結合,讓送達下滑優雅降級,而非阻斷註冊。
- 1
收集 DLR
啟用送達回條,並把它們對每次傳送存檔,這樣你知道的是已送達對失敗,而不只是已傳送。
- 2
依國家與電信業者分段
依目的地追蹤送達率與延遲——平均值會掩蓋某個正在失敗的單一市場。
- 3
對退化警示
當某國的送達率或延遲劣化超過門檻時觸發警示。
- 4
容錯移轉
自動繞開劣化的供應商,或升級到降級管道。