• 検索結果がありません。

メールフィルターアプリケーションの仕様

ドキュメント内 JP1/Automatic Job Management System 2 連携ガイド (ページ 70-74)

2   メールシステムとの連携

2.4  メールフィルターアプリケーションの仕様

UNIX版のJP1/AJS2メールシステム連携機能では,RFC822形式のメールだけをサ ポートしています。ただし,メールフィルターアプリケーションを別途用意することに よって,JP1/AJS2で次のメールを扱えます。

漢字などのマルチバイト文字コードが使われているメール

MIMEなどによってテキストがエンコードされているメール

メールフィルターアプリケーションは,これらのメールを,受信したホストで扱える文 字コード体系(JP1/AJS2が動作している言語環境)に変換します。

メールフィルターアプリケーションでメールを変換する処理の概要を次の図に示します。

図2-12 メールフィルターアプリケーションによるメール変換処理の概要

メールフィルターアプリケーションで変換されたメールは,メールシステム連携のメー ル受信でだけ使われます。受信したメールを保存する場合には,メールフィルターアプ リケーションで変換する前の状態のメールが使われます。

メールフィルターアプリケーションは,セットアップ時に作成してください。

ここでは,メールフィルターアプリケーションの仕様について説明します。ここで説明 する入出力およびリターン値の形式に従っていれば,自由にメールフィルターアプリ ケーションを作成してかまいません。

2.4.1 メールフィルターアプリケーションの仕様

メールフィルターアプリケーションの仕様について説明します。

(1) メールフィルターアプリケーションで使うファイル

メールフィルターアプリケーションで使うファイルを,次の表に示します。

表2-3 メールフィルターアプリケーションで使うファイル

項番 ファイル名 内容

1 /opt/jp1ajs2/usrtools/converter メールフィルターアプリケーションの名称。

メールフィルターアプリケーションの名称には,表の項番1に示すファイル名を使って ください。また,メールフィルターアプリケーションの入力ファイルには表の項番2に 示す名称を,変換後のメールの出力ファイルには項番3に示す名称を使用してください。

論理ホストを使用している場合,ファイル名は次のようになります。

(例)論理ホスト名が「HOSTNAME1」の場合

メールフィルターアプリケーション名:/opt/jp1ajs2/usrtools/

converterHOSTNAME1

入力ファイル名:/opt/jp1ajs2/usrtools/converterinHOSTNAME1

出力ファイル名:/opt/jp1ajs2/usrtools/converteroutHOSTNAME1 注 「/opt/jp1ajs2/usrtools/converter」と論理ホスト名の間,「/opt/

jp1ajs2/usrtools/converterin」と論理ホスト名の間,および「/opt/

jp1ajs2/usrtools/converterout」と論理ホスト名の間には,空白文字は入れ ません。

(2) メールフィルターアプリケーションに設定する戻り値

メールフィルターアプリケーションでの変換の終了時,メールフィルターアプリケー ションからJP1/AJS2に戻り値を渡すように設定してください。

JP1/AJS2は渡された戻り値によって異なる処理をします。メールフィルターアプリケー

ションに設定する戻り値と,それに対応するJP1/AJS2の処理を,次の表に示します。

表2-4 戻り値と戻り値に対応するJP1/AJS2の処理 2 /opt/jp1ajs2/usrtools/

converterin

入力ファイル。

JP1/AJS2によってメールファイルから取り出さ れた1通のメールが格納されている。

JP1/AJS2がこのファイルにメールを格納したあ と,メールフィルターアプリケーションを起動す る。

3 /opt/jp1ajs2/usrtools/

converterout

出力ファイル。

メールフィルターアプリケーションで変換した メールを格納する。

メールフィルターアプリケーションが正常に終了 すると,JP1/AJS2がこのファイルに格納されて いるメールを取り出し,監視条件の判定をする。

戻り値 意味 JP1/AJS2の処理

0 正常終了 メールフィルターアプリケーションの出力ファイルに格納されたメール を取り出し,監視条件で判定する。

また,メールフィルターアプリケーションで次のメールを変換する。

項番 ファイル名 内容

メールフィルターアプリケーションから戻り値を渡す方法は,メールフィルターアプリ ケーションを作成した言語によって異なります。それぞれ,次に示す方法で設定してく ださい。

シェル言語の場合:exitコマンド

C言語の場合:exit()システムコール

2.4.2 文字コード変換に関する仕様

漢字などのマルチバイト文字が使われているメールを,JP1/AJS2 メールシステム連携で 使用できるように変換するメールフィルターアプリケーションの仕様を説明します。

メールシステム連携で漢字などのマルチバイト文字が使われているメールを扱いたい場 合は,文字コードの変換が必要です。変換をしないと,メールで使用している文字コー

ドとJP1/AJS2が動作している言語の文字コードが一致しないため,メール受信監視

ジョブの条件を満たさなくなります。JP1/AJS2が動作している言語の文字コードは,デ フォルトでは次のようになっています。

OSがSolarisの場合:EUC

OSがSolaris以外の場合:シフトJIS

これらの文字コードに変換する仕様で,メールフィルターアプリケーションを作成して ください。

なお,JP1/AJS2では,文字コードを変換するシェルスクリプトをサンプルとして提供し ています。メールフィルターアプリケーションを作成する際,このサンプルを参考にで きます。このサンプルのシェルスクリプトについては,「2.4.4 メールフィルターアプリ ケーションのサンプルシェルスクリプト」を参照してください。

2.4.3 MIME などのデコードに関する仕様

MIME形式などのエンコードされているメールを,JP1/AJS2メールシステム連携で使 用できるように変換するメールフィルターアプリケーションの仕様を説明します。

MIME形式などのエンコードされているメールを受信した場合,受信したメールに含ま れるエンコードの形式の判別と,それに対応したデコード処理が必要です。

これらの変換をする仕様で,メールフィルターアプリケーションを作成してください。

また,デコード処理をしたメールが,JP1/AJS2が動作している言語の文字コードと一致 しない場合は,さらにJP1/AJS2が動作している言語の文字コードへ変換するように,

0以外 異常終了 メッセージを出力し,メールシステム連携機能を休止状態にする。

また,変換が異常終了したメールを障害用メールファイルに保存する。

次のメールは,JP1/AJS2が再起動されてから変換する。

戻り値 意味 JP1/AJS2の処理

メールフィルターアプリケーションを作成する必要があります。

2.4.4 メールフィルターアプリケーションのサンプルシェル スクリプト

メールフィルターアプリケーションのサンプルとして,文字コードを変換するシェルス クリプトを用意しました。このシェルスクリプトでは,受信したメールの文字コードだ けを変換し,MIMEなどのエンコードについては変換しません。

ファイルの名称は,/opt/jp1ajs2/tools/converterです。

なお,このサンプルシェルスクリプトで変換される文字コードは,OSによって次のよう に異なりますので注意が必要です。

OSがSolarisの場合:JISからEUCに変換します。

OSがSolaris以外の場合:JISからシフトJISに変換します。

2.4.5 メールフィルターアプリケーションのセットアップ

メールフィルターアプリケーションのセットアップ手順を次に示します。

1. メールフィルターアプリケーションを別途用意する。

メールフィルターアプリケーションの仕様に従ったプログラム・シェルスクリプトを 用意します。このとき,ファイル名は「converter」としてください。

2. /opt/jp1ajs2/usrtoolsディレクトリを作成する。

3. 手順2で作成したディレクトリに読み取り/書き込み権限を与える。

4. 用意したメールフィルターアプリケーションを手順2で作成したディレクトリに置 く。

5. メールフィルターアプリケーションに実行権限を与える。

ドキュメント内 JP1/Automatic Job Management System 2 連携ガイド (ページ 70-74)