この節では、電子メールからモバイルおよびモバイルから電子メールの両方の機能を使用する場合の SMS Gateway Server の設定方法について説明します。この節には、次の項目があります。
MTA と SMSC 間の双方向の電子メールおよび SMS ルーティングを設定する場合に推奨される方法は、次の 3 手順のプロセスです。
「SMS アドレスプレフィックスを設定する」– SMS アドレスプレフィックスを選択します。10 文字以内の任意のプレフィックスが使用できます。
「ゲートウェイプロファイルを設定する」– SMS Gateway Server に使用するためにそのプレフィックスを確保します (ゲートウェイプロファイルを設定する)。
「SMSC を設定する」– そのプレフィックスで始まる SMS ゲートウェイ SMPP サーバーに SMS 宛先アドレスをルーティングするように、SMSC を設定します。モバイルで作成された電子メールには、プレフィックスのみがあります。返信および通知には、プレフィックスに続いて 10 桁の 10 進法の数字があります。
MTA SMS チャネルによって生成されたソース SMS アドレスは、選択した SMS アドレスプレフィックスに一致するように設定する必要があります。次の設定を行います。
MTA SMS チャネルオプションを次のように設定します。
USE_HEADER_FROM=0
DEFAULT_SOURCE_ADDRESS=prefix
最初の設定によって、チャネルは、電子メールメッセージにある情報から SMS ソースアドレスを設定しなくなります。2 番目の設定によって、ほかのソースから設定されていない場合、SMS ソースアドレスは選択したプレフィックスに設定されます。
受け入れて電子メールにルーティングする SMS 宛先アドレスとして、プレフィックスを認識します。これを行うには、SELECT_RE ゲートウェイプロファイルオプションを次のように指定します。
SELECT_RE=prefix
次に、SMS Gateway Server のゲートウェイプロファイルを設定して、リレー対象のすべての SMS ソースアドレスを一意にする必要があります。これはデフォルト設定ですが、ゲートウェイプロファイルオプション MAKE_SOURCE_ADDRESSES_UNIQUE=1 を指定することによって明示的に設定することもできます。この設定によって、リレー対象の SMS ソースアドレスは次の形式になります。
prefixnnnnnnnnnn
nnnnnnnnnn は、一意の 10 桁の 10 進数です。
最後に、SMSC を設定して、プレフィックス (プレフィックスのみ、またはプレフィックスと 10 桁の 10 進数のどちらか) と一致するすべての SMS 宛先アドレスを SMS Gateway Server の SMPP サーバーにルーティングする必要があります。このようなルーティングの正規表現は、次のようになります。
prefix([0-9]{10,10}){0,1}
prefix は DEFAULT_SOURCE_ADDRESS の値です。[0-9] は 10 桁の 10 進数として許容される値を示し、{10, 10} は最小値が 10 桁あり、最大値が 10 桁あるということを示します。{0, 1} は、ゼロまたは 10 桁の数字のどれかが可能であることを示します。
SMS Gateway Server を有効にするには、configutil パラメータ local.smsgateway.enable の値を 1 に設定する必要があります。これを設定するには、次の設定ユーティリティーコマンドを使用します。
# configutil -o local.smsgateway.enable -v 1
SMS Gatewey Server を無効にするには、local.smsgateway.enable の値を 0 に設定します。これには次のコマンドを使用します。
# configutil -o local.smsgateway.enable -v 0
SMS Gateway Server が有効になった後は、次のコマンドを使用して起動および停止することができます。
# start-msg sms
および
# stop-msg sms
SMS Gateway Server が機能するためには、設定ファイルが必要です。設定ファイルは、UTF-8 を使用してエンコードされた Unicode テキストファイルです。設定ファイルは、ASCII テキストファイルの場合もあります。ファイル名は次のようにする必要があります。
installation-directory/config/sms_gateway.cnf
ファイル内の各オプション設定は、次の形式です。
option-name=option-value
オプショングループに属しているオプションは、次の形式で表示されます。
[group-type=group-name] option-name-1=option-value-1 option-name-2=option-value-2 ... option-name-n=option-value-n
双方向 SMS の電子メールからモバイルの部分を実装するには、次の設定を行う必要があります。
電子メールからモバイルへのゲートウェイプロファイルを設定するには、次の手順に従います。
SMS Gateway Server 設定ファイルにゲートウェイプロファイルを追加します。
オプショングループを追加するには、次の形式を使用します。
[GATEWAY_PROFILE=profile_name] option-name-1=option-value-1 option-name-2=option-value-2a ... option-name-n=option-value-n |
上記の形式のゲートウェイプロファイル名 profile_name の長さは、11 バイトを超えないようにしてください。この名前は、SMS チャネルオプションファイルの GATEWAY_PROFILE チャネルオプションの名前と同じである必要があります。名前は、大文字と小文字が区別されません。有効なチャネルオプションの一覧は、「使用可能なオプション」を参照してください。
ゲートウェイプロファイルオプション (例: SMSC_DEFAULT_CHARSET) を、リモート SMSC の特徴と一致するように設定します。
SMS チャネルの電子メールの特徴と一致するように、ほかのゲートウェイプロファイルオプションを設定します。
ゲートウェイプロファイルオプションの詳細については、「ゲートウェイプロファイルのオプション」を参照してください。
CHANNEL オプションを設定します。
値を MTA SMS チャネルの名前に設定します。
ゲートウェイを介して通知が電子メールに送信される場合、結果の電子メールメッセージはこのチャネル名を使用して MTA のキューに入れられます。
SMPP リレーを設定するには、次の手順を実行します。
SMPP リレーインスタンス (オプショングループ) を SMS Gateway Server の設定ファイルに追加します。
オプショングループを追加するには、次の形式を使用します。
[SMPP_RELAY=relay_name] option-name-1=option-value-1 option-name-2=option-value-2 ... option-name-n=option-value-n |
リレー名には任意の名前を使用できます。その名前が同一の設定ファイル内のほかの SMPP リレーインスタンスに使用されていないことにのみ注意してください。
LISTEN_PORT オプションを設定します。
SMS チャネルの SMPP_PORT オプションに使用される値は、リレーの LISTEN_PORT オプションで使用される値と一致する必要があります。LISTEN_PORT の TCP ポート番号を選択します。この TCP ポート番号には、ほかの SMPP リレーまたはサーバーインスタンスで使用されていないもの、同一のコンピュータ上で実行されているほかのサーバーで使用されていないものを選択します。
SERVER_HOST オプションを設定します。
リレーの SERVER_HOST オプションは、リモート SMSC の SMPP サーバーのホスト名を示す必要があります。ホスト名の代わりに IP アドレスを使用することもできます。
SERVER_PORT オプションを設定します。
リレーの SERVER_PORT オプションは、リモート SMSC の SMPP サーバーの TCP ポートを示す必要があります。
SMPP リレーオプションの詳細については、「SMPP リレーオプション」を参照してください。
SMPP サーバーを設定するには、次の手順を実行します。
SMPP サーバーインスタンス (オプショングループ) を SMS Gateway Server の設定ファイルに追加します。
オプショングループを追加するには、次の形式を使用します。
[SMPP_SERVER=server_name] option-name-1=option-value-1 option-name-2=option-value-2... option-name-n=option-value-n |
サーバー名には任意の名前を使用できます。その名前が同一の設定ファイル内のほかの SMPP サーバーインスタンスに使用されていないことにのみ注意してください。
LISTEN_PORT オプションを設定します。
ほかのサーバーまたはリレーインスタンスに使用されていない TCP ポート番号を選択します。また、ポート番号は、同一コンピュータ上のほかのサーバーで使用されていないものにしてください。
この TCP ポートを使用して SMPP を介して通知を SMS Gateway Server システムにルーティングするように、リモート SMSC を設定する必要があります。
SMPP サーバーオプションの詳細については、「SMPP サーバーオプション」を参照してください。
モバイルから電子メールの処理を設定するには、2 つの設定手順を実行する必要があります。
複数のゲートウェイプロファイルは同一の SMPP サーバーインスタンスを使用することもできます。実際、SMPP サーバーインスタンスは、電子メールからモバイル、モバイルから電子メールの両方の用途に使用される場合があります。
モバイルが起点である場合、ゲートウェイプロファイルは 2 つの重要な情報を提供します。そのゲートウェイプロファイルを使用する SMS メッセージを特定する方法とその SMS メッセージを電子メールメッセージに変換する方法です。このプロファイルは、電子メールからモバイルの場合と同じものが使用できます。ただし、SELECT_RE オプションを追加する必要があります。
ゲートウェイプロファイルを設定するには、次の手順に従います。
SMS Gateway Server の設定ファイルにゲートウェイプロファイル (オプショングループ) を追加します。
オプショングループを追加するには、次の形式を使用します。
[GATEWAY_PROFILE=profile_name] option-name-1=option-value-1 option-name-2=option-value-2 ... option-name-n=option-value-n |
プロファイル名には、11 文字以内の任意の名前を使用できます。同一の設定ファイル内のほかのゲートウェイプロファイルで使用されていない名前にしてください。
各ゲートウェイプロファイルに、SELECT_RE オプションを指定する必要があります。
このオプションの値には、SMS 宛先アドレスと照合できるように ASCII 正規表現を使用します。SMS 宛先アドレスが正規表現と一致した場合は、SMS メッセージはゲートウェイを介して電子メールに送信されます。このとき、一致したプロファイルで示されている特徴が使用されます。
重複する一連の SMS アドレスを持つ複数のゲートウェイプロファイルを設定することは可能です (たとえば、アドレス 000 と一致するプロファイルとほかの任意の 3 桁のアドレスと一致する別のプロファイル)。ただし、これは避けてください。SMS メッセージが 1 つのゲートウェイプロファイル (一致する最初のプロファイル) のみに渡されることになるからです。また、SMS アドレスが照合される順序が不定になるからです。
CHANNEL オプションを設定します。
この値は MTA SMS チャネルの名前にする必要があります。
モバイルを起点とする場合のオプションの詳細については、「ゲートウェイプロファイルのオプション」を参照してください。
SMPP サーバーの追加方法は、電子メールからモバイルの SMPP サーバーの場合と同じです (「SMPP サーバー」を参照)。
SMS 通信をゲートウェイ SMPP サーバーにルーティングするように、リモート SMSC を設定する必要があります。そのためには、SMSC がモバイルから電子メールへの通信をルーティングするために使用する SMS 宛先アドレスが、ゲートウェイプロファイルオプション SELECT_RE に設定された値である必要があります。
たとえば、モバイルから電子メールの通信に SMS アドレス 000 を使用する場合、SMS 宛先アドレス 000 の通信をゲートウェイ SMPP サーバーにルーティングするように SMSC を設定する必要があります。ゲートウェイプロファイルは SELECT_RE=000 のオプション設定を使用する必要があります。
この節では、SMS Gateway Server 設定ファイルのオプションについて詳しく説明します。次の表に、すべての使用可能な設定オプションの一覧を簡単な説明とともに示します。グローバルオプション、SMPP リレーオプション、SMPP サーバーオプション、および SMS Gateway Server プロファイルオプションそれぞれについての表があります。
各表に続く項目では、すべての使用可能な設定オプションについて詳しく説明します。以下の項目があります。
グローバルオプションは、設定ファイルの最上部 (どのオプショングループよりも前) に配置する必要があります。これ以外のオプションは、オプショングループ内に配置してください。
現在のところ、SMS Gateway Server には、次の 3 つのカテゴリのグローバルオプションがあります。
グローバルオプションはすべて、設定ファイルの最上部 (どのオプショングループよりも前) に指定する必要があります。表 D–20 に、グローバル設定オプションをすべて示します。
表 D–20 グローバルオプション
オプション |
デフォルト |
説明 |
---|---|---|
6 |
生成される診断出力のタイプを選択します |
|
|
履歴データのファイルの絶対ディレクトリパスです |
|
0770 |
履歴データのファイルへの許可です |
|
30 分 |
1 つの履歴データのファイルに書き込むための最大時間です |
|
|
すべての SMPP リレーおよびサーバーインスタンスでの最大同時受信接続数です |
|
3 日 |
履歴データアーカイブのレコードの存続期間です |
|
10 スレッド |
最初のワーカースレッド数です |
|
50 スレッド |
最大ワーカースレッド数です |
|
64K バイト |
各ワーカースレッドのスタックサイズです |
各受信 TCP 接続はそれぞれが 1 つの SMPP セッションです。セッションの処理は、スレッドプールのワーカースレッドによって行われます。セッションの処理を I/O 要求が完了するまで待つ必要がある場合は、ワーカースレッドはそのセッションを保留し、ほかの処理を実行します。I/O 要求が完了すると、プール内の使用されていないワーカースレッドによってセッションが再開されます。
以下のオプションを使用して、ワーカースレッドのプールの処理を調整できます。「THREAD_COUNT_INITIAL」、「THREAD_COUNT_MAXIMUM」、「THREAD_STACK_SIZE」。
(整数、> 0) ワーカースレッドのプールに最初に作成するスレッド数。この数には、メモリー内の履歴データ専用に使用されるスレッド (2 スレッド) を含みません。また、着信 TCP 接続の待機専用に使用されるスレッド (SMS Gateway Server が待機する TCP ポートおよびインタフェースアドレスペアにつき 1 スレッド) も含みません。THREAD_COUNT_INITIAL のデフォルト値は 10 スレッドです。
(整数、>= THREAD_COUNT_INITIAL) ワーカースレッドのプールに許可する最大スレッド数。デフォルト値は 50 スレッドです。
(整数、> 0) ワーカースレッドのプール内の各ワーカースレッドのスタックサイズ (単位: バイト)。デフォルト値は 65,536 バイト (64K バイト) です。
SMS メッセージのリレー時、受信側のリモート SMPP サーバーによって生成されるメッセージ ID は、メモリー内のハッシュテーブルに保存されます。このメッセージ ID とともに、元の電子メールメッセージについての情報も保存されます。その後メッセージ ID が SMS 通知によって参照された場合、この情報が取り出されることがあります。取り出された情報は、SMS 通知を適切な電子メール受取人に送信するために使用されます。
メモリー内のハッシュテーブルは、専用のスレッドでディスクに返されます。その結果ディスクファイルは「履歴ファイル」として参照されます。履歴ファイルは、次の 2 つの目的で使用されます。SMS Gateway Server を再起動した後にメモリー内ハッシュテーブルを復元するのに必要なデータを不揮発性の形式で保存するため、また、非常に長くなる可能性のあるデータをディスクに保存することによって、仮想メモリーを節約するためです。各履歴ファイルは、HASH_FILE_ROLLOVER_PERIOD 秒間のみ書き込まれます。この時間を過ぎると、ファイルは終了し、新しい履歴ファイルが作成されます。履歴ファイルの存続期間が RECORD_LIFETIME 秒を超えると、ファイルはディスクから削除されます。
履歴ファイルの調整には次のオプションが使用できます。「HISTORY_FILE_DIRECTORY」、「HISTORY_FILE_MODE」、「HISTORY_FILE_ROLLOVER_PERIOD」、「RECORD_LIFETIME」。
(文字列、絶対ディレクトリパス) 履歴ファイルの書き込み先のディレクトリへの絶対パス。ディレクトリパスが存在しない場合は作成されます。このオプションのデフォルト値は、次のとおりです。
msg_svr_base/data/sms_gateway_cache/
使用するディレクトリは、相応に高速なディスクシステム上に存在し、予測される保存量よりも大きい空き容量がある必要があります。このオプションをより適切な値に変更するには、「SMS Gateway Server のストレージ要件」を参照してください。
(整数、8 進値) 履歴ファイルに関連付けるファイル許可。デフォルトでは、0770 (8 進値) の値が使用されています。
(整数、秒) 現在の履歴ファイルが終了し、新しいものが HASH_FILE_ROLLOVER_PERIOD 秒ごとに作成されます。デフォルトでは、1800 秒 (30 分) の値が使用されています。
(整数、秒 > 0) 履歴レコードの存続期間 (単位: 秒)。この存続期間を過ぎたレコードは、メモリーから消去されます。この存続期間を過ぎた履歴ファイルは、ディスクから削除されます。デフォルトでは、259,200 秒 (3 日) の値が使用されています。メモリーに保存されているレコードは、メモリー内データの管理専用のスレッドによって一斉に消去されます。この消去は、HASH_FILE_ROLLOVER_PERIOD 秒ごとに実行されます。ディスク上のファイルは、新しい履歴ファイルを開く必要が生じたときに消去されます。
その他のオプションには、次の 2 つがあります。「DEBUG」および 「LISTEN_CONNECTION_MAX」です。
(整数、ビットマスク) デバッグ出力を有効にします。デフォルト値は 6 であり、警告およびエラーメッセージが選択されます。
表 D–21 に、DEBUG ビットマスクのビット値を示します。
表 D–21 DEBUG ビットマスク
ビット |
値 |
説明 |
---|---|---|
0-31 |
-1 |
きわめて詳細な出力 |
0 |
1 |
情報メッセージ |
1 |
2 |
警告メッセージ |
3 |
4 |
エラーメッセージ |
3 |
8 |
サブルーチン呼び出しのトレース |
4 |
16 |
ハッシュテーブル診断 |
5 |
32 |
I/O 診断、受信 |
6 |
64 |
I/O 診断、送信 |
7 |
128 |
SMS から電子メールへの変換診断 (モバイルからの発信および SMS 通知) |
8 |
256 |
PDU 診断、ヘッダーデータ |
9 |
512 |
PDU 診断、本文データ |
10 |
1024 |
PDU 診断、タイプの長さ値のデータ |
11 |
2048 |
オプション処理です。すべてのオプション設定をログファイルに送ります。 |
(整数、>= 0) すべての SMPP リレーおよびサーバーインスタンス全体に許可される最大同時受信 TCP 接続数。0 (ゼロ) の値は、接続数に関するグローバル制限はないことを示します。ただし、リレーまたはサーバー単位では、特定のリレーまたはサーバーインスタンスによって指定される制限がある場合があります。
SMS Gateway Server には、異なる特徴を持つ複数の SMPP リレーインスタンスを設定することができます。最も重要なインスタンスは、待機対象の TCP ポートとインタフェースです。言い換えると、SMPP リレーが待機するネットワークインタフェースと TCP ポートの各ペアに、別個の特徴を設定することができます。このような特徴は、この節で説明するオプションを使用して指定します。
各インスタンスは次の形式のオプショングループ内に配置する必要があります。
[SMPP_RELAY=relay-name] option-name-1=option-value-1 option-name-2=option-value-2 ... option-name-n=option-value-n |
文字列 relay-name は、このインスタンスをほかのインスタンスから区別するためだけに使用されます。
表 D–22 に、SMPP リレーの設定オプションの一覧を示します。
表 D–22 SMPP リレーオプション
オプション |
デフォルト |
説明 |
---|---|---|
255 |
受信 SMPP クライアント接続の接続バックログです |
|
|
最大同時受信接続数です |
|
|
受信 SMPP クライアント接続のネットワークインタフェースです |
|
|
受信 SMPP クライアント接続の TCP ポートです |
|
600 秒 |
SMPP クライアントからの受信接続の読み取りタイムアウトです |
|
120 秒 |
SMPP クライアントからの受信接続の書き込みタイムアウトです |
|
1 |
リレー対象の SMS ソースアドレスを一意にして、返信可能にします |
|
|
リレー先の SMPP サーバーのホスト名または IP アドレスです |
|
|
リレー先の SMPP サーバーの TCP ポートです |
|
600 秒 |
送信 SMPP サーバー接続の読み取りタイムアウトです |
|
120 秒 |
送信 SMPP サーバー接続の書き込みタイムアウトです |
(整数、0 〜 255 でその両端も含む) 受信 SMPP クライアント接続の TCP スタックによって許容される接続バックログ。デフォルトは 255 です。
(整数、>= 0) この SMPP リレーインスタンスで許可される最大同時受信 TCP 接続数。この値は、グローバル設定の LISTEN_CONNECTION_MAX の値を超えた場合は無視されます。
(文字列、「INADDR_ANY」または ドット付き 10 進表記の IP アドレス) 受信 SMPP クライアント接続で待機対象のネットワークインタフェースの IP アドレス。文字列「INADDR_ANY」 (すべての使用可能なインタフェース) またはドット付き 10 進表記の IP アドレスのどちらかです。 (例: 193.168.100.1) デフォルト値は「INADDR_ANY」です。この値を HA 論理 IP アドレスと対応させるには、クラスタ化された HA 設定が必要です。
(整数、TCP ポート番号) 受信 SMPP クライアント接続を受け入れるためのバインド先 TCP ポート。このオプションの指定は必須です。このオプションにはデフォルト値はありません。このサービスには、Internet Assigned Numbers Authority (IANA) からの割り当てはないことにも注意してください。
(整数、秒 > 0) SMPP クライアントからデータを読み取るために待つ場合のタイムアウト。デフォルト値は 600 秒 (10 分) です。
(整数、秒 > 0) SMPP クライアントにデータを送信する場合のタイムアウト。デフォルト値は 120 秒 (2 分) です。
(0 または 1) デフォルトでは、SMPP リレーは各 SMS ソースアドレスに一意の 10 桁の文字列を付加します。結果の SMS ソースアドレスは、ほかの履歴データとともに保存されます。その結果、SMS ユーザーが返信することのできる一意の SMS アドレスになります。このアドレスが SMS 宛先アドレスとして使用されたとき、SMPP サーバーはこのアドレスを検出し、SMS メッセージを正しい電子メール差出人に送信します。
一意の SMS ソースアドレスの生成を無効にするには (片方向 SMS の場合)、このオプションの値に 0 を指定します。
(文字列、TCP ホスト名またはドット付き 10 進表記の IP アドレス) SMPP クライアント通信のリレー先 SMPP サーバー。ホスト名または IP アドレスのどちらかを指定します。このオプションの指定は必須です。このオプションにはデフォルト値はありません。
(整数、TCP ポート番号) リモート SMPP サーバーがリレーする TCP ポート。このオプションの指定は必須です。このオプションにはデフォルト値はありません。このサービスには IANA からの割り当てはありません。IANA からの SNPP の割り当てと混同しないでください。
(整数、秒 > 0) SMPP サーバーからデータを読み取るために待つ場合のタイムアウト。デフォルト値は 600 秒 (10 分) です。
(整数、秒 > 0) SMPP サーバーにデータを送信する場合のタイムアウト。デフォルト値は 120 秒 (2 分) です。
SMS Gateway Server には、異なる特徴を持つ複数の SMPP サーバーインスタンスを設定することができます。最も重要なインスタンスは、待機対象の TCP ポートとインタフェースです。言い換えると、SMPP サーバーが待機するネットワークインタフェースと TCP ポートの各ペアに、別個の特徴を設定することができます。このような特徴は、この節で説明するオプションを使用して指定します。
各インスタンスは次の形式のオプショングループ内に配置する必要があります。
[SMPP_SERVER=server-name] option-value-1=option-value-1 option-value-2=option-value-2 ... option-name-n=option-value-n |
文字列 server-name は、このインスタンスをほかのインスタンスから区別するためだけに使用されます。
表 D–23 に、SMPP サーバーの設定オプションの一覧を示します。
表 D–23 SMPP サーバーオプション
オプション |
デフォルト |
説明 |
---|---|---|
255 |
受信 SMPP サーバー接続の接続バックログです |
|
|
最大同時受信接続数です |
|
|
受信 SMPP サーバー接続のネットワークインタフェースです |
|
|
受信 SMPP サーバー接続の TCP ポートです |
|
600 秒 |
受信 SMPP サーバー接続の読み取りタイムアウトです |
|
120 秒 |
受信 SMPP サーバー接続の書き込みタイムアウトです |
(整数、0 〜 255 でその両端も含む) 受信 SMPP クライアント接続の TCP スタックによって許容される接続バックログ。デフォルトは 255 です。
(整数、>= 0) この SMPP サーバーインスタンスで許可される最大同時受信 TCP 接続数。この値は、グローバル設定の LISTEN_CONNECTION_MAX の値を超えた場合は無視されます。
(文字列、「INADDR_ANY」またはドット付き 10 進表記の IP アドレス) 受信 SMPP クライアント接続で待機対象のネットワークインタフェースの IP アドレス。文字列「INADDR_ANY」 (すべての使用可能なインタフェース) またはドット付き 10 進表記の IP アドレスのどちらかです。 (例: 193.168.100.1) デフォルト値は「INADDR_ANY」です。
(整数、TCP ポート番号) 受信 SMPP クライアント接続を受け入れるためのバインド先 TCP ポート。このオプションの指定は必須です。このオプションにはデフォルト値はありません。このサービスには、IANA からの割り当てはないことに注意してください。
(整数、秒 > 0) SMPP クライアントからデータを読み取るために待つ場合のタイムアウト。デフォルト値は 600 秒 (10 分) です。
(整数、秒 > 0) SMPP クライアントにデータを送信する場合のタイムアウト。デフォルト値は 120 秒 (2 分) です。
ゲートウェイプロファイルの数はゼロ以上です。SMS Gateway Sever の設定ファイルのオプショングループ内で、各ゲートウェイプロファイルは次の形式で宣言されています。
[GATEWAY_PROFILE=profile-name] option-name-1=option-value-1 option-name-2=option-value-2 ... option-name-n=option-value-n |
文字列 profile-name は、このプロファイルをほかのオリジナルのプロファイルから区別するためだけに使用されます。
表 D–24 に、SMS Gateway Server プロファイルオプションの一覧を示します。
表 D–24 SMS Gateway Server プロファイルオプション
オプション |
デフォルト |
説明 |
---|---|---|
sms |
メッセージをキューに入れるために使用されるチャネルです |
|
US-ASCII |
電子メールメッセージ本文に使用される文字セットです |
|
US-ASCII |
電子メールメッセージヘッダーに使用される文字セットです |
|
|
電子メールを SMS にルーティングし直すために使用されるドメイン名です |
|
|
SMS メッセージテキストを構文解析するために使用される正規表現です |
|
GSM |
GSM、TDMA、または CDMA の環境で機能する SMS プロファイルですGSM, TDMA, or CDMA |
|
|
プラグインの選択に使用される正規表現です |
|
US-ASCII |
SMSC のデフォルトの文字セットです |
|
0 |
Gateway SMS の電子メールへの優先順位フラグです |
|
0 |
Gateway SMS の電子メールへのプライバシインジケータです |
(文字列、1 〜 40 文字) 電子メールメッセージをキューに入れるために使用される MTA チャネルの名前。指定されていない場合は、「sms」と仮定されます。指定するチャネルは、MTA の設定で定義されている必要があります。
(文字列、文字セット名) 電子メールメッセージ本文への挿入前に、SMS テキストを変換するために使用する文字セット。必要に応じて、変換後のテキストは MIME でエンコードされます。デフォルト値は US-ASCII です。SMS メッセージに文字セットにないグリフが含まれている場合、そのグリフはニーモニック文字に変換されます。ニーモニック文字は、受取人にとっては意味をなさない場合があります。
MTA に認識される文字セットの一覧は、次のファイルで示されています。
installation-directory/config/charsets.txt
(文字列、文字セット名) RFC 822 Subject: ヘッダー行への挿入前に、SMS テキストを変換するために使用する文字セット。必要に応じて、変換後の文字列は MIME でエンコードされます。デフォルト値は US-ASCII です。SMS メッセージに文字セットにないグリフが含まれている場合、そのグリフはニーモニック文字に変換されます。ニーモニック文字は、受取人にとっては意味をなさない場合があります。
(文字列、IP ホスト名、1 〜 64 文字) 電子メール用にエンベロープ From: アドレスを作成する際、SMS ソースアドレスに付加するドメイン名。指定する名前は、電子メールを SMS にルーティングし直す場合に使用される正しい名前である必要があります。(たとえば、MTA SMS チャネルに関連付けられたホスト名。) 指定しない場合は、CHANNEL オプションで指定されている正式なチャネル名が使用されます。
(文字列、UTF-8 正規表現) モバイルを起点とする電子メールの場合、ゲートウェイプロファイルは SMS メッセージのテキストから宛先電子メールアドレスを抽出する必要があります。これは、1 つまたは複数の POSIX 準拠の正規表現 (RE) を使用することによって処理されます。SMS メッセージのテキストは、各正規表現によって、宛先電子メールアドレスを生成する一致が見つかるか、あるいは正規表現のリストが尽きるまで評価されます。
PARSE_RE_* と ROUTE_TO の各オプションの使用は、互いに排他的です。これらの両方を同一のゲートウェイプロファイルで使用すると、設定エラーになります。
各正規表現は、POSIX に準拠していて、UTF-8 文字セットにエンコードされている必要があります。正規表現では、宛先アドレスは文字列 0 として出力されます。状況に応じて、Subject: ヘッダー行で使用されるテキストは文字列 1 として、メッセージ本文で使用されるテキストは文字列 2 として出力されることがあります。正規表現によって「消費」されないテキストはいずれも、メッセージ本文で使用され、文字列 2 のテキスト出力に続きます。
正規表現は、PARSE_RE_0、PARSE_RE_1、... 、の順序で、PARSE_RE_9 まで試されます。正規表現が指定されていない場合、次に示すデフォルトの正規表現が使用されます。
[ \t]*([^\( ]*)[ \t]*(?:\(([^\)]*\))?[ \t]*(.*)
このデフォルトの正規表現は、次に示す構成要素から成ります。
[ \t]*
先頭のホワイトスペース文字 (SPACE および TAB) を無視します。
([^\( ]*)
宛先電子メールアドレス。これは最初に報告される文字列です。
[ \t]*
ホワイトスペース文字を無視します。
(?:\(([^\)]*)$1\))?
括弧で囲まれたオプションの件名テキスト。これは 2 番目に報告される文字列です。先頭の ?: によって、外側の括弧は文字列を報告しなくなります。括弧は、括弧内の内容を末尾の ? の単一の RE にグループ化するためにのみ使用されます。末尾の ? によって、この RE 構成要素は、0 回または 1 回のみ照合されます。これは {0,1} の表現と同等です。
[ \t]*
ホワイトスペース文字を無視します。
(.*)
残りのテキストをメッセージ本文へ。これは 3 番目に報告される文字列です。
例として、上記の正規表現で次のサンプル SMS メッセージを処理する場合を示します。
dan@sesta.com(Testing)This is a test
この場合、次の電子メールメッセージが生成されます。
To: dan@sesta.com Subject: Testing |
This is a test
別の例として、次の SMS メッセージの場合を示します。
sue@sesta.com This is another test
この場合、次の電子メールメッセージが生成されます。
To: sue@sesta.com
This is another test
これらの正規表現で評価される前に、SMS メッセージは Unicode のエンコード方式である UTF-16 に変換されることに注意してください。その後、変換されたテキストは、UTF-8 から UTF-16 に変換済みの正規表現で評価されます。評価の結果は、宛先電子メールアドレスの場合は US-ASCII に変換されます。Subject: テキスト (ある場合) には EMAIL_HEADER_CHARSET、メッセージ本文 (ある場合) には EMAIL_BODY_CHARSET が使用されます。
(文字列、「GSM」、「TDMA」、または「CDMA」) 仮定される SMS プロファイル。現在のところ、この情報は SMS 優先順位フラグを RFC 822 Priority: ヘッダー行にマップするためにのみ使用されます。したがって、このオプションは、USE_SMS_PRIORITY=0 (デフォルト) の場合は無効です。
(文字列、US-ASCII 正規表現) US-ASCII POSIX 準拠の正規表現。各 SMS メッセージの SMS 宛先アドレスと照合するために使用します。SMS メッセージの宛先アドレスがこの RE と一致した場合、SMS メッセージは通過するゲートウェイのゲートウェイプロファイルに合致する電子メールに送信されます。
SMS メッセージの宛先アドレスは US-ASCII 文字セットで指定されているので、この正規表現も US-ASCII で表現されている必要があることに注意してください。
(文字列、文字セット名) リモート SMSC で使用されるデフォルトの文字セットの名前。このオプションに選択する一般的な値は 2 つあり、それは US-ASCII と UTF-16-BE (USC2) です。指定されていない場合は、US-ASCII と仮定されます。
(整数、0 または 1) デフォルト (USE_SMS_PRIORITY=0) では、SMS メッセージ内の優先順位フラグは無視され、電子メールメッセージとともには送信されません。優先順位フラグを電子メールに付けて渡すには、USE_SMS_PRIORITY=1 と指定します。表 D–25 に、優先順位フラグを電子メールに付けて渡した場合の SMS から電子メールへのマッピングを示します。
表 D–25 優先順位フラグの SMS から電子メールへのマッピング
SMS プロファイル |
SMS 優先度フラグ |
電子メールの Priority: ヘッダー行 |
---|---|---|
GSM |
0 (優先でない) 1、2、3 (優先) |
ヘッダー行なし (Normal を示す) Urgent |
TDMA |
0 (バルク) 1 (標準) 2 (至急) 3 (大至急) |
Nonurgent ヘッダー行なし (Normal を示す) Urgent Urgent |
CDMA |
0 (標準) 1 (インタラクティブ) 2 (至急) 3 (緊急) |
ヘッダー行なし (Normal を示す) Urgent Urgent Urgent |
電子メールの Priority: ヘッダー行の値は、Nonurgent、Normal、および Urgent です。
(整数、0 または 1) デフォルト (USE_SMS_PRIVACY=0) では、SMS プライバシの指示は無視され、電子メールメッセージとともには送信されません。この情報を電子メールに付けて渡すには、USE_SMS_PRIVACY=1 と指定します。表 D–26 に、プライバシ情報を電子メールに付けて渡した場合の SMS から電子メールへのマッピングを示します。
表 D–26 プライバシフラグの SMS から電子メールへのマッピング
SMS プライバシフラグ |
電子メールの Sensitivity: ヘッダー行 |
---|---|
0 (制約なし) |
ヘッダー行なし |
1 (制限あり) |
Personal |
2 (親展) |
Private |
3 (秘密) |
Company-confidential |
電子メールの Sensitivity: ヘッダー行の値は、Personal、Private、および Company-confidential です。
動作についての仮定
この例では、次の動作を設定するものと仮定します。
次のアドレスに宛てた電子メールメッセージがある
sms-id@sms.domain.com
この電子メールメッセージは次の SMS アドレスに送信される
sms-id
000nnnnnnnnnn の範囲の一意の SMS ソースアドレスを付与する。
SMS アドレス 000 に宛てたモバイルの SMS メッセージは、SMS メッセージテキストの冒頭から抽出された電子メールアドレスとともに、ゲートウェイを介して電子メールに送信される。
たとえば、次の SMS メッセージテキストの場合、
jdoe@domain.com Interested in a movie?
メッセージ「Interested in a movie?」は jdoe@domain.com に送信される。
000nnnnnnnnnn に送信された SMS 通知はゲートウェイを介して電子メールに送信され、メッセージの差出人に配信され、受信確認される。
この動作を実現するために、次の仮定と指示に従ってください。
追加の仮定と指示
MTA の SMS チャネルはドメイン名 sms.domain.com を使用する。
SMS Gateway Server はホストゲートウェイ .domain.com 上で実行され、以下のものを使用する。
SMPP リレー用に TCP ポート 503
SMPP サーバー用に TCP ポート 504
リモート SMSC の SMPP サーバーはホスト smpp.domain.com 上で実行され、TCP ポート 377 を待機する。
リモート SMSC のデフォルトの文字セットは、UCS2 (aka、UTF-16) である。
SMS チャネルの設定
上記の動作を有効にするには、次に示す SMS チャネルの設定を imta.cnf ファイルで使用します (以下の行をファイルの最下部に追加)。
(空白行) sms sms.domain.com
SMS チャネルオプションファイル
チャネルのオプションファイル sms_option には、次の設定を含めます。
SMPP_SERVER=gateway.domain.com SMPP_PORT=503 USE_HEADER_FROM=0 DEFAULT_SOURCE_ADDRESS=000 GATEWAY_PROFILE=sms1 SMSC_DEFAULT_CHARSET=UCS2
SMS Gateway Server の設定
Gateway Server の設定ファイル sms_gateway.cnf は次のようになります。
HISTORY_FILE_DIRECTORY=/sms_gateway_cache/ [SMPP_RELAY=relay1] LISTEN_PORT=503SERVER_HOST=smpp.domain.com SERVER_PORT=377 [SMPP_SERVER=server1] LISTEN_PORT=504 [GATEWAY_PROFILE=sms1] SELECT_RE=000([0-9]{10,10}){0,1} SMSC_DEFAULT_CHARSET=UCS2 |
この設定をテストする
テストに使用する SMSC がない場合は、ループバックテストを実行する必要があります。sms_option ファイルにいくつか追加で設定すると、上記の設定の単純なループバックテストを実行できます。
sms_option ファイルへの追加設定は、次のとおりです。
! テキストをSMS メッセージの本文に追加しないようにする設定 FROM_FORMAT= SUBJECT_FORMAT= CONTENT_PREFIX=
この設定を行わないと、次の内容の電子メールは、
user@domain.com (Sample subject) Sample text
次の SMS メッセージに変換されます。
From:user@domain.com Subject:Sample Subject Msg:Sample text
これは、モバイルから電子メールのコードで期待される形式にはなりません。期待される形式は次のとおりです。
user@domain.com (Sample subject) Sample text
したがって、ループバックテストを行う場合は、空の文字列を FROM_FORMAT、SUBJECT_FORMAT、および CONTENT_PREFIX オプションに指定する必要があります。
次のようなテスト電子メールメッセージを 000@sms.domain.com 宛に送信します。
user@domain.com (Test message) This is a test message which should loop back
その結果、この電子メールメッセージは電子メール受信者 user@domain.com にルートバックされます。このテストに使用する DNS またはホストテーブルには、sms.domain.com を必ず追加しておいてください。