smpp通訊協定

Adobe Campaign Classic支援SMPP通訊協定版本3.4。這是廣泛的通訊協定,允許傳送SMS給提供者(SMSC)並接收SMS以及回條。 如需詳細資訊,請參閱SMPP檔案

SMS服務提供者端的網路裝置通常稱為SMSC。

smpp連線

Adobe Campaign透過TCP連線至SMS服務提供者的網路裝置。 SMPP通訊協定會設定從Adobe Campaign到提供者的永久TCP連線。 TCP連線一律由Adobe Campaign起始,即使是接收訊息亦然。
SMPP會根據其模式開啟1或2個TCP連線。 所有連線一律由Adobe Campaign起始。

SMPP通訊協定可以在兩種模式中運作:

  • 傳送器+接收器(或TX+RX):使用兩個獨立的TCP連線來傳送及接收訊息。
  • 收發器(或TRX):單一TCP連線用於傳送及接收訊息。
NOTE
Adobe Campaign Classic僅支援TX+RX模式。 這項限制源於其技術架構。

SMPP PDU

SMPP傳輸單位(「封包」)稱為PDU。 PDU ​包含命令、狀態、序號和資料。

每個PDU都必須由SMPP RESP PDU確認(同步回應)。 請求可以管道化:傳送者可以傳送許多命令,而不需要等候RESP,任何時候可以管道化的請求數稱為視窗。 RESP PDU可能以任何順序到達,與其對應的啟動器PDU的順序無關。

在分隔的​ 傳送器+接收器 ​模式中,使用的連線取決於傳送的訊息型別。 傳送器連線用於MT,而接收器連線用於MO和SR。 各種訊息的要求和回應會透過相同的TCP連線傳送。

例如,傳送MT時,會使用傳送器連線,而且會透過傳送器通道傳送確認MT的RESP。 當您收到MO (或SR)時,接收器連線會用來接收MO並傳送確認MO的RESP

在Adobe Campaign Classic中,若要將SR與其對應的MT連結,SMSC會傳回包含SUBMIT_SM_RESPDELIVER_SM步驟的ID。 識別碼儲存在nms::providerMsgId資料表的providerId欄位中,並連結至broadLogIddeliveryId。 此比對操作由SMS程式在寫入資料庫時完成。

成功的SUBMIT_SM_RESP PDU會在傳送記錄中觸發「已傳送」訊息狀態,而成功的DELIVER_SM (SR) PDU則會觸發「已接收」訊息狀態。

安全性方面

通訊協定本身並未加密。 大部分提供者在允許清單上實作IP的變體,因此必須向提供者宣告Adobe Campaign伺服器IP位址。

Adobe Campaign支援在繫結階段傳遞登入和密碼。 它也支援SMPP over TLS。 請注意,需要憑證才能保證適當的安全性。 雖然SMPP聯結器允許略過憑證檢查,但只應該用於測試,因為沒有憑證的TLS提供顯著較低的安全性層級。

聯結器使用系統openssl程式庫提供的預設憑證。 通常由Debian上的/etc/ssl/certs目錄提供。 此目錄預設由「ca-certificates」套件提供,但可加以自訂。