IOSOR 知識庫
進站簡訊 Webhook:重試、事件順序與接收冪等
B2B 接收路徑指南:進站簡訊 Webhook 如何重試、為何事件順序不可靠,以及冪等處理器如何保護預付費營運與客服巨集。
出站簡訊占據儀表板。進站才是 STOP、HELP 與客戶回覆真正落地之處——也是天真處理器製造重複工單、雙重錢包副作用,以及「我們從未收到 STOP」合規幽靈的地方。若接收路徑假設嚴格有序的恰好一次投遞,第一次真實故障就會擊垮你。
IOSOR 將進站訊息放在與出站相同的白標預付費表面上:可核驗的事件、品牌安全酬載,無需窩在外來營運入口核對回覆風暴。
為何 Webhook 會重試
. Your server might return 200 . at-least-once delivery with retries on timeout, 5xx, and ambiguous network errors.
必須設計的三種失敗模式
| Failure mode | What happens | What breaks if you ignore it |
|---|---|---|
| Duplicate delivery | Same event ID arrives 2+ times | |
| Out-of-order events | A later-timestamped event arrives first | A delivered status regresses to sent |
| Partial/ambiguous failure | You processed but the ack was lost |
冪等:同時修好三種失敗的一個屬性
進站並非沒有金錢與營運副作用:
- 自動回覆可能借記預付費錢包
- STOP 處理必須抑制未來行銷發送
- 開單的客服巨集不可因三次 POST 開三張單
冪等接收處理器清單:
- 副作用前先持久化進站事件 id
- 用先前結果短路重複
- 自動回覆發送自帶冪等鍵
- 記錄進站 id → 錢包行 → 回覆 id 的關聯
- 失敗文案對操作員保持白標安全
接近每月 USD 1,000+ 平台用量時,進站重複風暴會變成財務與合規對話——試點仍可先在低量關鍵字上證明台帳。
事件順序:為何「最後寫入獲勝」危險
常見錯誤假設:
- STOP 一定先於下一次行銷發送到達(存在競態)
- 出站送達回執一定先於進站回覆(路徑獨立)
- 無耐久事件鍵卻聲稱「首次 POST 勝出」
用耐久的 事件/訊息 id 建立接收台帳。業務規則應是台帳上的狀態轉移,而非「每個 HTTP 200 路徑都跑副作用」。
. . . .
2xx — typically under a second. . .
- 進站回呼的書面重試策略
- 可測試的簽章/鑑權核驗
- 酬載中的耐久事件 id
- 冪等處理器指引(不只是「回傳 200」)
- 在重複投遞下仍存活的 STOP/HELP 路徑
- 任何自動回覆支出可見於同一預付費錢包
危險信號
- 「我們從不重試」(你會丟掉合規事件)
- 沒有事件 id——只有時間戳記
- 文件假定嚴格全域順序
- 自動回覆風暴卻無線索進錢包
- 營運要求第三方入口才能重放進站
從 IOSOR 開始
拉上週入站 webhook 日誌,數有多少事件 ID 到過兩次以上。回放一則重複與一對亂序(先 failed 後 delivered)。接收端只能留一個效果:一列收件、一次 STOP 寫入、一次錢包觸碰。後寫覆蓋把 STOP 撤掉算失敗。這是接收冪等與重試順序,不是簽章驗證,也不是入列前的閘道鎖。
相關閱讀: 入站自動回覆循環抽錢包 · 緩衝進站 Webhook 處理以應對電信商延遲飆升 · 首次扣款前的預付資金保留.
IOSOR 要點
入站 webhook 會重試。接收冪等是唯一安全答案;順序不是承諾。
該做:給事件加鍵,丢掉孿生件。別做:對 STOP 用後寫覆蓋,或同一事件扣兩次。
這篇指南有幫助嗎?
相關指南
- 設定語音未接來電自動回覆 SMS 觸發
在您的白牌電信平台上設定自動未接來電簡訊追蹤,當語音路由失敗時即時捕捉潛在客戶。 — inbound voice call fallback sms routing on IOSOR prepaid messaging.
- 緩衝進站 Webhook 處理以應對電信商延遲飆升
設定 IOSOR 白牌 CPaaS 佇列緩衝區,在大量電信商傳遞延遲與批次尖峰期間,防止下游應用程式逾時。
- 跨多租戶帳戶同步處理內送拒收關鍵字
在 IOSOR 中掌握多租戶拒收同步。了解內送停止關鍵字如何管理全域封鎖並同時隔離子帳戶。