本文將說明 RCS 企業即時通訊平台如何處理訊息傳送和其他 API 互動,並區分同步和非同步作業。
RBM API 互動通常遵循 HTTP 層級的同步要求/回應模式。不過,許多 API 呼叫的結果 (尤其是訊息傳送) 會透過 Webhook 以非同步方式處理。詳情請參閱下列章節。
訊息傳送:同步要求,非同步傳送
從 API 的角度來看,phones.agentMessages.create
API 要求是同步處理的。當您向 RCS 企業通訊平台發出 HTTP 要求時,伺服器幾乎會立即傳回標準 HTTP 狀態碼 (例如 200 OK
或錯誤),指出要求是否已收到且有效。
不過,系統會非同步處理將訊息實際傳送給使用者的作業。下列因素可能會影響這項程序:
- 收件者狀態:使用者可能處於離線狀態、手機沒電,或未啟用 RCS。
- 網路狀況:電信業者網路問題可能會導致訊息延遲或無法送達。
RCS Business 平台會透過Webhook 異步提供訊息傳送狀態更新 (例如傳送回條和讀取回條)。因此,雖然初始 API 要求是同步的,但您應依據非同步 Webhook 事件追蹤訊息傳送情形。請勿期待從 phones.agentMessages.create
回覆中立即取得遞送狀態確認資訊。
其他 RBM API 互動
大多數其他以 HTTP 為基礎的 RBM API 也採用同步要求/回應模型。這些 API 會立即傳回 HTTP 回應,指出要求狀態 (成功或錯誤)。不過,雖然要求是同步的,但要求產生的動作可能涉及非同步程序。舉例來說,成功呼叫 API 更新代理程式資訊後,更新內容不一定會立即反映在所有地方,可能會有短暫的傳播延遲。
Webhook 端點:非同步事件
- 使用者傳入的訊息:RCS for Business 平台會將使用者傳入的訊息推送至你的 Webhook 端點。請務必驗證內送郵件。
- 傳送和已讀回執:系統會透過 Webhook 傳送訊息傳送和已讀狀態通知。
- 對話事件:系統會透過 Webhook 傳送部分對話相關事件,例如輸入指標。
- 訊息到期和撤銷事件:RCS for Business 平台會傳送事件,確認過期的訊息是否已成功撤銷。