SMS コネクタのプロトコルと設定 sms-connector-protocol

NOTE
このドキュメントでは、プロトコル、フィールド名とフィールド値の詳細については、すべて SMPP 3.4 仕様を参照しています。

Campaign v7 から v8 への移行の一環として、Campaign Classic のドキュメントセットを効率化および再編成しました。共通機能は、Campaign v8 ドキュメントセットでのみ使用できるようになりました。 SMS コネクタ設定について詳しくは、Campaign v8 ドキュメントを参照してください。

画像

概要 overview

SMS は、書式設定のない短いテキストメッセージの送信に限定されますが、そのシンプルさがこのコミュニケーションチャネルの利点でもあります。

SMS を送信する主な方法は 2 つあります。

  • 電話から手動で送信する:人と人との間で直接通信する通常の方法。
  • インターネットから送信する:Adobe Campaign がメッセージを送信する方法。 インターネットをモバイルネットワークに接続する SMS サービスプロバイダーが必要です。
    Adobe Campaign は、SMPP プロトコルを使用して SMS をサービスプロバイダーに送信します。

このドキュメントでは、Adobe Campaign と SMPP プロバイダーの間の接続設定について説明します。

SMPP プロバイダーは公式仕様から外れる場合がありますが、Adobe Campaign の SMS コネクタは、ほとんどのプロバイダーと互換性を持つように動作を適応させるための多くのオプションを提供します。

IMPORTANT
新しいプロバイダーへの接続の設定には、技術的なスキル、TCP に関する知識、バイナリ、16 進表現、およびテキストエンコーディングが必要になる場合があります。 プロバイダーとのアクティブな協力も求められます。

SMPP プロトコル smpp-protocol

Adobe Campaign Classic は、SMPP プロトコルバージョン 3.4 をサポートしています。 これは、SMS をプロバイダー(SMSC)に送信し、SMS および領収書も受信できる広範なプロトコルです。 詳しくは、SMPP ドキュメントを参照してください。

SMS サービスプロバイダー側のネットワーク機器は、SMSC と呼ばれることが多いです。

SMPP 接続 smpp-connections

Adobe Campaign は、TCP を介して SMS サービスプロバイダーのネットワーク機器に接続します。 SMPP プロトコルは、Adobe Campaign からプロバイダーへの永続的な TCP 接続を設定します。 TCP 接続は、常に Adobe Campaign が開始します。メッセージを受信する場合も同様です。
SMPP は、モードに応じて 1 つまたは 2 つの TCP 接続を開きます。 すべての接続は、常に Adobe Campaign によって開始されます。

SMPP プロトコルは次の 2 つのモードで動作します。

  • トランスミッター + レシーバー(または TX+RX):メッセージの送受信には、2 つの異なる TCP 接続が使用されます。
  • トランシーバ(または TRX):メッセージの送受信には、単一の TCP 接続が使用されます。
NOTE
Adobe Campaign Classic は、TX+RX モードのみをサポートします。 この制限は、技術的なアーキテクチャが原因です。

SMPP PDU 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_RESP と DELIVER_SM の手順で ID が返されます。 識別子は nms::providerMsgId テーブルの providerId フィールドに格納され、broadLogId と deliveryId にリンクされます。 この照合操作は、データベースに書き込む際に SMS プロセスによっておこなわれます。

成功した SUBMIT_SM_RESP PDU は「送信済み」メッセージのステータスを送信ログにトリガーし、成功した DELIVER_SM (SR) PDU は「受信済み」メッセージのステータスをトリガーします。

セキュリティ面 security-aspects

プロトコル自体は暗号化されません。 ほとんどのプロバイダーは、許可リスト上に IP のバリアントを実装しているので、Adobe Campaign サーバーの IP アドレスをプロバイダーに宣言する必要があります。

Adobe Campaign は、バインド段階でのログインとパスワードの受け渡しをサポートしています。 また、SMPP over TLS もサポートします。 適切なセキュリティを確保するためには、証明書が必要であることに注意してください。 SMPP コネクタは証明書チェックのバイパスを許可しますが、証明書を持たない TLS はセキュリティレベルの大幅な低下につながるので、テストにのみ使用する必要があります。

コネクタは、システム openssl ライブラリが提供するデフォルトの証明書を使用します。 通常は Debian の /etc/ssl/certs ディレクトリで提供されます。 このディレクトリは、デフォルトで「ca-certificates」パッケージによって提供されていますが、カスタマイズ可能です。

各種 PDU の情報 information-pdu

各種の PDU には、異なる情報を伝達する個別のフィールドがあります。 これらの PDU の詳細は、SMPP 3.4 仕様に記載されています。

以下の各節では、PDU と同期応答(*_RESP PDU)の両方について説明します。 すべての PDU は対応する RESP によって認識される必要があります。これは仕様の必須部分です。

PDU にはオプションのフィールドを指定できます。 ここでは、最も一般的なフィールドについて説明します。 詳しくは、SMPP 3.4 仕様を参照してください。

BIND_TRANSMITTER/BIND_RECEIVER/BIND_TRANSCEIVER

この PDU は、SMSC への接続を開始するために使用されます。 トランスミッター、レシーバー、および​ トランシーバ ​モードは、この接続を介して転送できる SMS の種類のみを変更します。具体的には、次のようになります。

モード
許可されている SMS の種類
トランスミッター
MT
レシーバー
MO + SR
トランシーバ
MT + MO + SR

BIND_* PDU の主なフィールド:

  • system_id:認証に使用するログイン。 外部アカウントに設定されます。

  • パスワード:認証に使用するパスワード。 外部アカウントに設定されます。

  • system_type:一部のプロバイダーでは、特定の値に設定する必要があります。 外部アカウントで設定され、すべてのバージョンで利用可能です。 多くの場合、様々な種類の契約、チャネル、国などを区別します。

  • addr_ton および addr_npi:一部のプロバイダーで必須です。 外部アカウントの Bind TON 設定と Bind NPI 設定で指定します。

  • address_range:一部のプロバイダーで必須です。 これはほとんどの場合、この接続で使用できるショートコードのリストです。 外部アカウントに設定されます。

BIND_*_RESP に特定のフィールドがない場合は、接続が成功したかどうかを確認します。

UNBIND unbind

この PDU は、切断前にシステムから送信する必要があります。 UNBIND_RESP PDU との一致を待ってから、接続を閉じる必要があります。

適合 SMSC は接続を閉じてはいけません。TCP 接続は Adobe Campaign コネクタによって制御されます。

SUBMIT_SM submit-sm

この PDU は、MT を SMSC に送信します。 応答 PDU は、MT の ID を提供します。

SUBMIT_SM PDU の主なフィールド:

  • service_type:一部のプロバイダーで必要です。 配信のプロパティで設定します。

  • source_addr_ton および source_addr_npi:伝送される送信元アドレスの種類を示します。 これらのフィールドの意味は標準化されていますが、一部のプロバイダーでは使い方が異なるので、プロバイダーに正しい値を確認する必要があります。 外部アカウントに設定されます。

  • source_addr:MT のソースアドレス/oADC。 携帯電話に表示されます。 外部アカウントと配信で設定すると、配信内の値が外部アカウントの値よりも優先されます。

  • dest_addr_ton および dest_addr_npi:送信される宛先アドレスの種類(ローカルや国際形式など)を示します。 これらのフィールドの意味は標準化されていますが、一部のプロバイダーでは使い方が異なるので、プロバイダーに正しい値を確認する必要があります。 外部アカウントに設定されます。

  • destination_addr:受信者アドレス、電話番号、または MSISDN。

  • esm_class:UDH がテキストフィールドで使用されているかどうかを示すために使用します。 message_payload モードが使用されない場合、分割 SMS のコネクタによって自動的に有効になります。

  • priority_flag:他のメッセージと比較した場合のこのメッセージの優先順位。 これは、配信自体の優先度に結び付けられます。

  • validity_period:タイムスタンプ。このタイムスタンプを超えると、再試行はおこなわれません。 配信自体に設定されます。

  • registered_delivery:SR が要求されているかどうかを示します。 Adobe Campaign は、自動返信を除き、常にこのフラグを設定します。 マルチパートメッセージの場合、フラグは最初のパーツに対してのみ設定されます。 すべてのバージョンで同じ動作がおこなわれます。

  • data_coding:テキストフィールドで使用されるエンコーディングを示します。 詳しくは、SMS テキストエンコーディング(Campaign v8 ドキュメント)の節を参照してください。

  • short_message:メッセージのテキスト。 UDH を使用する場合は、UHD ヘッダーも含まれます。

Adobe Campaign では、次のオプションフィールドがサポートされています。

  • dest_addr_subunit:Flash、モバイル、または SIM カードといった SMS のターゲットを指定するために使用します。 配信のプロパティで設定します。

  • message_payload:外部アカウントで有効にすると、長いメッセージは 1 つの PDU で送信され、テキストは short_message フィールドではなくこのフィールドで送信されます。

SUBMIT_SM_RESP submit-sm-resp

この PDU には、MT の ID が含まれます。 これは、着信 SR と一致させるのに役立ちます。

IMPORTANT
多くのプロバイダーは、MT ID を 16 進数で送信します。 外部アカウントで、MT 確認応答の ID 形式​設定で正しく設定されていることを確認してください。

一部のプロバイダーは、SR を送信した後に SUBMIT_SM_RESP を送信します。 この動作を考慮するには、Adobe Campaign は 30 秒待ってから、不明な ID を持つ SR に​無効なメッセージ ID を返します。

DELIVER_SM delivery-sm

この PDU は、SMSC から Adobe Campaign に送信されます。 MO または SR が含まれます。

ほとんどのフィールドは、対応する SUBMIT_SM と同じ意味を持ちます。 役立つフィールドのリストを次に示します。

  • source_addr:MO/SR のソースアドレス。 通常は電話番号です。

  • destination_addr:MO または SR を受け取ったショートコード。

  • esm_class:PDU が MO か SR かを識別するために使用します。

  • short_message:メッセージのテキスト。 SR の場合、SMPP プロトコル仕様の付録 B に記載されているデータが含まれます。 詳しくは、SR エラー管理を参照してください。

Adobe Campaign は、receipted_message_id オプションフィールドのメッセージ ID を読み取ることができます(設定によっては可)。

DELIVER_SM_RESP deliver-sm-resp

この PDU は、SR と MO を確認するために Adobe Campaign から送信されます。

Adobe Campaign Classic は、SR と MO がデータベースに挿入された後に、SR と MO に対する確認応答をおこないます。 正常な DELIVER_SM_RESP PDU が送信された場合でも、処理エラーが発生する場合があります。 この制限は、Adobe Campaign Classic のソフトウェアアーキテクチャが原因です。

この PDU は、接続が有効であるかどうかを確認する目的でのみ使用します。 頻度は、プロバイダーのニーズに応じて設定する必要があります。

デフォルトの 60 秒は、外部アカウントで設定されているほとんどの設定と一致する必要があります。

この PDU は、接続が動作していることを確認します。

マルチパート SMS(長文 SMS) multipart

IMPORTANT
Adobe Campaign は、送信用マルチパート SMS またはロング SMS のみをサポートします。 UDH および message_payload は、着信 SMS(MO)ではサポートされていません。つまり、MO は 160 文字に制限されています。

スループットのキャップとウィンドウイング throughput-capping

ほとんどのプロバイダーでは、各 SMPP 接続にスループットの制限が必要です。 これは、外部アカウント内に多数の SMS を設定することで達成できます。 スループットのスロットルは接続ごとに発生します。有効なスループットの合計は、接続ごとの制限値に接続の合計数を乗じた値です。 これについては、同時接続の節で詳しく説明します。

最大スループットに達するには、最大送信ウィンドウを微調整する必要があります。 送信ウィンドウは、SUBMIT_SM_RESP を待たずに送信できる SUBMIT_SM PDU の数です。 詳しくは、送信ウィンドウの設定(Campaign v8 ドキュメント)の節を参照してください。

SR およびエラー管理(「付録 B」) sr-error-management

SMPP プロトコルは、RESP PDU に標準の同期エラーを定義しますが、SR のエラーコードは定義しません。 各プロバイダーは、独自のエラーコードと意味を使用します。

SMPP プロトコル仕様(167 ページ)の付録 B の節にレコメンデーションが記載されていますが、実際のエラーコードとその意味は記載されていません。

エラー管理に対応するために、Adobe Campaign の broadLog メッセージシステムを活用して、エラーとその重大度(ハード、ソフトなど)を適切にプロビジョニングできます。

上述したように、2 種類のエラーがあります。

  • メッセージが SMSC に送信された直後に発生する SUBMIT_SM_RESP 内の同期応答。
  • モバイルがメッセージを受信したとき、またはメッセージがタイムアウトしたときに、受信メッセージがずっと後に発生する場合。 この場合、SR にエラーが見つかります。

SR を受け取ると、short_message フィールドにステータスとエラーが表示されます(付録 B 準拠の実装例)。 PDU の short_message フィールドは、MT にテキストが含まれるので、テキストフィールド​と呼ばれることがよくあります。 SR の場合は、テクニカル情報に加えて​ テキスト ​という名前のサブフィールドが含まれます。 これらの 2 つのフィールドは異なり、short_message には実際に​ テキスト ​フィールドと他の情報が含まれます。

Adobe Campaign Classic コネクタ(拡張 SMPP を除く)は、選択したプロバイダーに依存するハードコードされた動作を使用します。 汎用 SMPP は、成功とエラーを識別するだけで、詳細情報は含まれません。 配信ログには、保証されていない情報が含まれている場合があります。

SR テキストフィールドの形式 sr-text-field-format

この仕様では、SR テキストフィールドに対して次の形式を使用することをお勧めします。 これはサブフィールドのリストで、フィールド名と値を区切るコロンで区切られます。 フィールド名では、大文字と小文字が区別されません。

付録 B のレコメンデーションと一致する SR テキストフィールドの例:

id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

id フィールドは、SUBMIT_SM_RESP PDU で受け取った ID で、MT の認識です。

sub および dlvrd は、配信されるパーツと配信されるメッセージの量を数えると考えられますが、broadLog システムはより的確で統合された情報を提供するので、Adobe Campaign はこの値を使用しません。

submit date および done date フィールドは、MT が送信されときと、SR がモバイルから送信されたときのタイムスタンプを示します。 タイムゾーンに関する問題や、日付が正しく設定されていないモバイルのタイムスタンプは、正しくないことが予想されます。

stat フィールドは、メッセージの状態を示すので重要です。 重要なステータスは DELIVRD、UNDELIV、REJECTD のみです。 DELIVRD ステータスは成功を示し、残りの 2 つはエラーを示します。 その他の値も可能ですが、通常は中間通知です(例えば、MT が携帯電話会社に到達したが、携帯電話に到達しなかった場合など)。 これらの中間通知は、Adobe Campaign では無視されます。

err フィールドには、プロバイダー固有のエラーコードが含まれます。 プロバイダーは、この値を解釈できるように、考えられるエラーコードの表とその意味を提供する必要があります。

最後に、テキストフィールドには通常、MT のテキストの先頭が含まれます。 これは Adobe Campaign では無視され、一部のプロバイダーは PII の漏洩やネットワーク帯域幅の消費を防ぐために送信しません。 このフィールドを読み込むと、テスト MT に一致する SR をより容易に見つけられるため、トラブルシューティングの際に使用できます。

Adobe Campaign Classic の拡張された汎用 SMPP における SR 処理の例 sr-processing

次の例では、付録 B のレコメンデーションに従った実装、外部アカウントのデフォルト値、成功した SMS MT を示します。

id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

まず、id extraction 正規表現を適用して ID を抽出し、対応する MT に合わせて紐付けます。

次に、status extraction 正規表現と error code extraction 正規表現を適用してこれらのフィールドを抽出し、文字列に追加します。

broadLog メッセージは次の情報を使用して構築され、元の変更されていない文字列が参照用に追加されます。

SR ExampleProvider DELIVRD 000|MESSAGE=id:1234567890 sub:001 dlvrd:001 submit date:1608011415 done date:1608011417 stat:DELIVRD err:000 Text:Hello Adobe world

次に、メッセージは正規化され、MESSAGE 部分を削除して同じ stat および err コードを持つ複数のメッセージが一致するようにします。

SR ExampleProvider DELIVRD 000|#MESSAGE#

メッセージが broadLog メッセージテーブルにまだプロビジョニングされていない場合は、メッセージ全体を firstText とし、正規化されたメッセージを使用して新しいエントリが作成されます。 次に、コネクタは success と error 正規表現を使用して、成功か失敗かを判断します。

  • success 正規表現と一致する場合は、成功と見なされます。

  • error 正規表現と一致する場合は、メッセージはエラーとして認定されます。

  • この 2 つの正規表現に一致するものがない場合、SR は無視されます。 それは、Adobe Campaign で処理されない中間通知の可能性があります。

デフォルトでは、すべてのエラーはソフトエラーとしてプロビジョニングされます。 つまり、ハードエラーは手動でプロビジョニングする必要があります。

SMPP 外部アカウントパラメーター SMPP-parameters-external

SMPP プロトコルの実装は、それぞれ多くのバリエーションを持ちます。 互換性と適応性を向上させるために、SMPP コネクタの動作を変更する多くの設定を使用できます。 この節では、コネクタに対するすべてのパラメーターとその影響について説明します。

一般的なパラメーターとルーティング general-parameters-routing

このアカウントの MTA インスタンスの制限

SMPP プロバイダーへの接続を許可する MTA インスタンスの数に制限を設定できます。 このオプションを有効にすると、最大で使用できる MTA の数を指定できます。

このオプションを使用すると、接続数をより細かく制御できます。同時接続を参照してください。

実行中の MTA の数より大きい値を設定すると、すべての MTA は通常どおりに実行されます。このオプションは制限にすぎず、追加の MTA を生成できません。

接続数(プロバイダー要件など)を正確に制御する必要がある場合は、現在のデプロイメントで適切な数の MTA が実行されていても、常にこのオプションを設定することをお勧めします。 その後 MTA を追加した場合でも、接続制限は考慮されます。

接続設定 connection-settings

SMSC 実装名 smsc-implementation-name

SMSC 実装の名前を設定します。 プロバイダーの名前に設定する必要があります。 このフィールドに追加する内容については、管理者または配信品質チームにお問い合わせください。 このフィールドの役割は、SR エラー管理の節で説明しています。

NOTE
配信品質チームのエンゲージメントは契約に基づいており、配信品質エンゲージメントに関する情報については、お客様はアドビ担当者に問い合わせる必要があります。

MTA 子接続の数 number-mta-child

Adobe Campaign Classic では、MTA の子 1 つあたりの接続数を定義します。

Adobe Campaign Classic 拡張 SMPP コネクタは、MTA の子 1 つあたりの接続数を制御できます。 接続のグローバル制限を制御するには、MTA 子プロセスの数を制限する必要があります。これは、多くの場合、SMS 専用のミッドソーシングプラットフォームを持つことを意味します。

Adobe Campaign Classic の場合は、レシーバーとトランスミッターの接続数が異なる場合があります。

  • トランスミッター接続 = MTA 子接続の数 * MTA 子プロセスの数 * MTA の数(自動応答が設定されている場合) MTA 子接続の数*

上記の推奨事項に従い、自動応答が有効な場合は、Adobe Campaign Classic SMS プロセスがより多くのトランスミッター接続を開きます。 これらの追加の接続は、自動応答の送信に使用されます。

  • レシーバー接続 = MTA 子接続の数

自動応答を設定した場合、SMS プロセスはトランスミッター/レシーバーのペアを開き、トランスミッター接続数を増やします。 自動応答を設定しなかった場合は、レシーバー接続のみが開きます。

TLS over SMPP を有効にする enable-TLS

TLS を使用してプロバイダーに接続します。 接続が暗号化されます。 TLS 接続は OpenSSL ライブラリによって管理され、この接続で OpenSSL に適用されるものはすべて実行されます。

ログファイルの詳細 SMPP トレースを有効にする enable-verbose-log-file

この設定は、すべての SMPP トラフィックをログファイルにダンプします。 多くの場合、初期設定時にパラメーターを調整する必要があります。 コネクタのトラブルシューティングをおこなう場合は、この機能を有効にし、プロバイダーが確認するトラフィックと比較する必要があります。

Adobe Campaign Classic では、MT 関連のトラフィックの場合は MTA ログ、MO および SR 関連のトラフィックの場合は SMS ログにログ出力が記録されます。

受信者接続設定 receiver-connection

このセクションは、分離された​ 送信者 + 受信者 ​モードでのみ表示されます。

受信者に別のパラメーターを使用 receiver-parameters

このチェックボックスをオフにすると、トランスミッターとレシーバーに同じ設定が適用されます。

このチェックボックスをオンにすると、接続設定​セクションの設定がトランスミッターに適用され、レシーバー接続​設定がレシーバーに適用されます。

レシーバーサーバー、ポート、アカウント、パスワード、システムタイプ

これらの設定は、トランスミッター + レシーバーモードの場合にレシーバーに適用されます。 トランスミッター部分と同様に機能します。詳しくは、上記を参照してください。

SMPP チャネル設定 smpp-channel-settings

受信 MO をデータベースに格納 incoming-mo-storing

このオプションを有効にすると、着信 MO はデータベースの inSMS テーブルに格納されます。 このテーブルは、任意のワークフローのクエリアクティビティを使用して照会できます。

Adobe Campaign Classic は、常にすべての MO を inSMS データベースに格納するので、このオプションは使用できません。

SR 処理中に KPI のリアルタイム更新を有効にする real-time-kpi

このオプションを有効にすると、KPI はエラー SR を受け取ったときに、メイン配信ページでリアルタイムに更新されます。

欠点として、生成されるデータベースの競合が原因で、パフォーマンスが低下する場合があります。 このオプションを無効にすると、統計は syncfromexec ワークフローによって更新され、20 分ごとに実行されます。

Adobe Campaign Classic の KPI には全く異なるメカニズムがあるので、このオプションは使用できません。

ショートコード short-code

アカウントのメインのショートコードを示します。 このアカウントで複数のショートコードが使用されている場合、またはショートコードが不明な場合は、このフィールドを空欄にしてください。

ショートコードを指定すると、次の 2 つの機能において役立ちます。

  • ソース番号が指定されていない場合、プレビューにショートコードが表示されます。 携帯電話での実際の動作を反映します。

  • 自動応答機能のブロックリスト設定では、特定のショートコードに対してのみ、強制隔離に送信されます。

SMSC 固有の設定 SMSC-specifics

これらの設定は、Adobe Campaign コネクタを SMPP 実装の特殊性のほとんどに適応させるための詳細設定です。

TLS 証明書チェックのスキップ skip-tls

TLS が有効な場合は、すべての証明書の確認をスキップします。

このオプションをオンにすると、接続はセキュリティで保護されなくなるため、実稼働環境では有効化しないでください。

このオプションは、デバッグやテストの際に役立ちます。

証明書の検証には、次の 3 つの異なる値のいずれかを選択できます。

  • 完全な証明書の確認(ホスト名を含む)、デフォルト。
  • ホスト名の検証をスキップ。
  • 証明書の検証をスキップ。

成功/エラーステータスを判別するために適用された正規表現 regex-applied

不明な stat/err フィールドの組み合わせのメッセージが検出されると、これらの正規表現が stat フィールドに適用され、SR が成功したかエラーになったかが判別されます。 これらのどの範囲とも一致しない stat 値を持つ SR は無視されます。

デフォルトでは、DELIV で始まる stat 値(例:付録 B 内の DELIVRD)は、正常に配信されたと見なされ、エラーに一致するすべての stat 値(例:REJECTED、UNDELIV)はエラーと見なされます。

MT 受信確認の ID 形式 id-format-mt

これは、SUBMIT_SM_RESP PDU の message_id フィールドに返される ID の形式を示します。

  • 変更しない:ID は、ASCII エンコードされたテキストとして、そのままデータベースに保存されます。 前処理やフィルタリングはおこなわれません。

  • 10 進数:ID は、ASCII 形式の 10 進数である必要があります。 この設定を使用すると、先頭と末尾の空白文字と先頭の 0 が削除されます。

  • 16 進数:ID は ASCII 形式の 16 進数です。先頭に 0x および末尾に h を付けません。 その後、ID を 10 進数に変換してから、データベースに保存します。

  • 16 進文字列:ID は、ASCII エンコードされたテキストで、16 進数でエンコードされたバイト数の文字列である必要があります。 例えば、PDU には 0x34 0x31 0x34 0x32 0x34 0x33 があり、これは ASCII「414243」に変換されます。 次に、この文字列が 16 進数のバイト文字列としてデコードされ、「ABC」が返されます。ID「ABC」をデータベースに格納します。

SR の ID 形式 id-format-sr

これは、SR 内の ID の Extraction 正規表現によって取り込まれる ID の形式を示します。 値は同じ意味を持ち、上記の MT の形式と同じ動作をします。

オプションフィールドの SR ID またはエラーコード

NOTE
Adobe Campaign Classic 拡張 SMPP コネクタでのみ使用できます。

このオプションを選択すると、上記の正規表現で処理されるテキストにオプションフィールドのコンテンツが追加されます。 テキストは 0xTAG:VALUE の形式です。0xTAG は大文字のタグの 4 桁の 16 進値です(0x002E など)。

例えば、receipted_message_id フィールドに ID を取り込むとします。 この場合、このチェックボックスを有効にすると、次のテキストがステータスに追加されます。

0x001E:05e3299e-8d37-49d0-97c6-8e4fe60c7739

この例では、0x001E がオプションのフィールドのタグで、UUID がフィールドの値です。

この値を取り込むために、SR フィールドの ID の抽出正規表現に次の正規表現を設定できます。

\b0x001E:([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\b
IMPORTANT
テキスト(ASCII/UTF-8)値を持つオプションのフィールドのみ取得できます。 特に、現在の正規表現システムでは、バイナリフィールドを確実に取り込むことはできません。

サービス ID タグ

カスタム TLV を追加できます。 このフィールドは、タグの部分を設定します。 この値は、配信の詳細パラメーターにある​サービスまたはプログラム ID の値の配信ごとにカスタマイズできます。

この設定では、メッセージごとに 1 つの TLV オプションのみを追加できます。

MO に送信された自動返信 automatic-reply

IMPORTANT
Adobe Campaign Classic およびハイブリッドアーキテクチャでは、拡張された SMPP コネクタに自動応答を適用するには、外部アカウント​フォルダーに中間オペレーターの書き込みアクセス権を追加する必要があります。

この機能を使用すると、MO にすばやくテキストを返信し、ショートコードごとのブロックリスト送信処理を実行できます。

キーワード​列と​ ショートコード ​列は、自動応答をトリガーする条件を定義します。 両方のフィールドが一致する場合、MO が送信され、追加のアクションがトリガーされます。 ワイルドカードを指定するには、フィールドを空のままにする必要があります。 キーワードは、MO テキストの最初の英数字の単語に対して一致します。句読点や先頭のスペースは無視します。 つまり、キーワード​フィールドにスペースを含めることはできません。また、1 つの単語である必要があります。

キーワード​設定は接頭辞です。 例えば、「AD」を指定した場合、「AD」、「ADAPT」および「ADOBE」と一致します。 共通の接頭辞を持つ複数のキーワードがある場合は、キーワードは上から下に順に処理されるので、順序に注意する必要があります。

返信​列は返信するテキストです。 このフィールドでは個人設定を使用できません。 このフィールドを空のままにすると、メッセージは返信されませんが、追加のアクションはトリガーされます。

追加のアクション​列は、キーワード​と​ ショートコード ​の両方が一致した場合に、追加のアクションを提供します。空のショートコードはすべてのショートコードと一致します。 強制隔離に送信したり、強制隔離から削除できます。値なしはテキストに返信します。 追加のアクション​を指定し、返信​フィールドを空のままにした場合、アクションは実行されますが、返信は送信されません。 強制隔離は、指定したショートコードに対してのみ適用されます。フィールドが空の場合は、すべてのショートコードに適用されます。

IMPORTANT
「完全な電話番号を送信」設定は、自動返信強制隔離メカニズムの動作に影響します。「完全な電話番号を送信」がオフの場合、強制隔離に入力した電話番号には、国際電話番号の形式と互換性を持たせるために、接頭辞としてプラス記号(「+」)が付きます。

テーブル内のすべてのエントリは、1 つのルールが一致するまで、指定された順序で処理されます。 複数のルールが 1 つの MO に一致する場合、最上位のルールのみが適用されます。

SMS 配信テンプレートパラメーター sms-delivery-template-parameters

一部のパラメーターは、配信テンプレートごとに設定できます。

配信パラメーター delivery-parameters

送信モード transmission-mode

このフィールドは、送信する SMS の種類を次のように示します。通常または Flash メッセージ、モバイルまたは SIM カードに保存。

この設定は、SUBMIT_SM PDU の dest_addr_subunit オプションフィールドに送信されます。

  • 「指定なし」の場合、PDU にオプションのフィールドは送信されません。

  • 「Flash」の場合、値を 1 に設定します。 モバイル上でポップアップ表示され、メモリには保存されない Flash メッセージを送信します。

  • 「通常」の場合、値を 0 に設定します。 通常のメッセージを送信します。

  • 「モバイルに保存」の場合、値を 2 に設定します。 SMS を内部メモリに保存するよう電話に指示します。

  • 「ターミナルに保存」の場合、値を 3 に設定します。 SIM カードに SMS を格納するよう電話に指示します。

有効期間 validity-period

有効期間は、SUBMIT_SM PDU の validity_period フィールドに送信されます。 日付は常に絶対 UTC 時刻形式で設定され、日付フィールドは「00+」で終わります。

拡張された汎用 SMPP コネクタ acc-extended-connector

矢印は、データフローを表します。

MTA は、配信パーツを送信する際に、MTA の子を生成します。 MTA 子プロセスの数は動的で、serverConf.xml の設定によって異なります。 各 MTA 子は、SMPP プロバイダーに接続するコネクタ CSmppConnectorWorker をインスタンス化します。 MTA 子が存続している限り接続は維持され、serverConf.xml でも設定できます。

SMS プロセスは SR のみを処理し、プロバイダーに接続し、接続を開いたままにします。 このプロセスは、10 分ごとに再接続し、新しい設定を再読み込みします。これは通常の操作です。

MT、SR、broadLog エントリの照合 matching-mt

中間テーブル nmsProviderMsgId は、broadLog と非同期にコミットされる前に、MT および SR データを一時的に格納するために使用されます。

nmsProviderMsgId テーブルには 3 つの列のグループがあります。

  • MT が送信され、確認応答がおこなわれた場合に更新される列:iBroadLogId、iDeliveryId

  • SR を受け取った場合に更新される列:iMsgId、iStatus

  • 常に更新される列:tsCreated、sProviderId

MT と SR の両方の処理が完了したら、broadLog 情報とステータス情報の両方を含む完全な行が必要です。

ここで iMsgId は nmsBroadLogMsg テーブルにリンクされ、完全なステータス/エラーメッセージを示します。

SMS プロセスは、完了行を毎分チェックし、非同期に処理します。

  • 行全体が読み取られます。
  • SMS プロセスは、配信マッピングに基づいて broadLog テーブルの名前を計算します。
  • SMS プロセスは、broadLog テーブルをメッセージ ID とステータスで更新します。

スループットと並列接続

各 MTA の子は設定可能な数の接続を作成するので、MTA の子の数を制限すると接続数が制限されます。 MTA 子プロセスとトラフィックに相関関係があるので、これはある程度制御できますが、それでも予測できないことがあります。

recommendation-more-help
campaign-classic-help