SMPP プロトコル仕様で定義されていることがわかりましたが、その意味が正確にはわかりませんでした。SMSC から SMS を受信するには、最初に接続 (バインド要求) を初期化し、次に SMSC が SMS を送信する必要があるときに配信要求を送信する必要があることを知っています。
接続が確立されていないときに ESME に SMS を送信するために SMSC が使用するアドレス範囲はありますか?
ESME と SMSC 間の接続が確立されない限り、SMPP PDU を送信することはできません。これは通常、TCP 3 ウェイ ハンドシェイク (SYN、SYN-ACK、ACK) を使用して行われます。
address_range パラメータは、bind_receiver および bind_transceiver コマンドで使用され、ESME クライアントによってサービスされる SME (MS または ESME) のアドレスのセットを指定します。この範囲内の任意の宛先に宛てられたメッセージは、ESME にルーティングされます。範囲は正規表現を使用して指定しますが、IP アドレスの場合、指定できる IP アドレスは 1 つだけです。また、IPv6 は現在、このバージョンのプロトコルではサポートされていません。
そうは言っても、ほとんどすべての SMSC は、bind コマンドの addr_range フィールドを無視します。これは、メッセージのルーティングミスを防ぐためにルーティング制御を ESME に放棄しないためです。したがって、このフィールドはほとんど NULL に設定されます。
SMSC と ESME 間のルーティングは、通常、「ショート コード」を使用して行われます。サービス プロバイダー (SMSC) は、1 つの一意のショート コードを ESME に割り当てます。SMSC は、バインドされたすべての ESME アドレスのリストを維持し、対応するショート コードをそれらに対してマッピングします。メッセージがショート コードに送信されるたびに、送信先、つまりショート コードは、ネットワーク上でルーティングできる有効な ESME アドレスに変換されます。
セルラー ネットワークでの MS-SME への SMS のルーティングは、MAP/SS7 (または SIGTRAN) インターフェイス上のホーム ロケーション レジスタ (HLR) にクエリを実行して、加入者の位置を検出することによって実行されます。
SMPP v3.4仕様(p。5.2.7)で述べたように、address_rangeパラメーターを使用して、このESMEによって処理されるアドレスの範囲についてSMSCに通知できます。
たとえば、2つのESMEシステムがあるとします。1)ショートコード123のボイスメール2)ショートコード456のSMSポーリング
これらのシステムは、同じシステムIDでSMSCに接続できますが、SMSトラフィックを分離するためにaddress_raneが異なります。