動作についての仮定
この例では、次の動作を設定するものと仮定します。
次のアドレスに宛てた電子メールメッセージがある
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 を必ず追加しておいてください。