SEND

LANSA Integrator

SEND


SENDコマンドはメールを送信します。

SENDコマンドでTO、CC、BCC、FROM、SUBJECTの各キーワードを使用すると、SMTPMailServiceプロパティ・ファイルまたはSETコマンドで設定された値がオーバーライドされます。

SENDコマンドに作業リスト引数がある場合、リスト・エントリーを使用してメッセージ本文が作成されます。最初のリスト・フィールドにはテキストが含まれ、オプションの2番目のフィールドは、連結プロセスの制御に使用されます。2番目のフィールドが存在しないか、そのフィールドの値がブランクの場合、省略値のオプション値NAが使用されます。

以下のオプションの値を使用できます。

      SB - テキスト・エントリーを加える前にスペースを追加します(最初のエントリーを除く)。

      NB - テキスト・エントリーを加える前に改行を追加します(最初のエントリーを除く)。

      SA - テキスト・エントリーを加えた後にスペースを追加します(最後のエントリーを除く)。

      NA - テキスト・エントリーを加えた後に改行を追加します。

2番目のフィールド値が上記のいずれでもない場合、追加のアクションは行われず、次のエントリーが前のエントリーに追加されます。

 

                                                           任意

 

 SEND ---------- TO -----------値---------------------------->

 

             >-- CC -----------値---------------------------->

 

             >-- BCC ----------値---------------------------->

 

             >-- FROM ---------値---------------------------->

 

             >-- SUBJECT ------値---------------------------->

 

             >-- SIGNER -------値---------------------------->

 

             >-- MULTIPARTSIGNED --- *NO ------------------------->

                                     *YES

 

             >-- ENCRYPT ------なし----------------------------->

                                *DES

                                *DES-EDE3

                                *RC2-40

                                *RC2-64

                                *RC2-128

 

             >-- CONTENT ------ *PLAIN --------------------------->

                                *HTML

                                値

 

             >-- BODY ---------値---------------------------->

 

             >-- ENCODING ----- *DEFAULT -------------------------|

                                値

 

キーワード

TO

メールの送信先として1つのメール・アドレスを指定できます。

あるいは、SETコマンドを使用して1つのTOメールまたは複数のTOメールを指定します。

CC

メールのcc (カーボン・コピー)先として1つのメール・アドレスを指定できます。

あるいは、SETコマンドを使用して1つのCCメールまたは複数のCCメールを指定します。

BCC

メールのbcc (ブラインド・カーボン・コピー)先として1つのメール・アドレスを指定できます。

あるいは、SETコマンドを使用して1つのBCCメールまたは複数のBCCメールを指定します。

FROM

このメッセージの送信元のメール・アドレス

FROMプロパティは、通常は変わらないためSMTPMailServiceプロパティ・ファイルで構成されるのが一般的です。これにより、FROMメール・アドレスの一貫性が保証され、FROMメール・アドレスを簡単に変更できます。

あるいは、SETコマンドでこの値を指定できます。

メールを送信するには、FROMメール・アドレスを指定してください。

SUBJECT

メールの件名を表します。

あるいは、SETコマンドでこの値を指定できます。

SIGNER

署名者の値は、2つの要素(名前とパスワード、形式は名前:パスワード)で構成されます。これらの値を使用して、SMTPサービス・プロパティの適切なプライベート・キー・ストアとセキュリティ証明書情報にアクセスします。

署名したメールを送信するには、SMTPMailServerで秘密鍵と公開証明書が必要です。メール署名者用のSMTPMailServiceプロパティ・ファイルでこの2つのファイルを特定する必要があります。

使用されるX509公開証明書ファイルは、プロパティsigner.certificate.{名前}から取得されます。

使用されるPKCS8キー・ストア・ファイルは、プロパティsigner.keystore.{名前}から取得されます。キー・ストア・パスワードはパスワードの構成要素です。

例えば、署名者の名前がSMTPSIGNの場合、SMTPMailServiceプロパティ・ファイルには以下のようなエントリーが含まれます。

 

signer.keystore.SMTPSIGN=test-input/smtp-signer-key.der

signer.certificate.SMTPSIGN=test-input/smtp-signer-certificate.der

 

次に、署名したメールを送信するには、以下のようなJSMコマンドを発行します。

 

use builtin(jsmx_command) with_args(#jsmxhdle1 'send signer(SMTPSIGN:password)') TO_GET(#jsmxsts #jsmxmsg)

 

署名したメールの受信者に公開証明書を送信する必要はありません。公開証明書は、自動的にメールに含まれます。

重要:相手にプライベート・キー・ストア・ファイルを送信する必要はありません。公開証明書のみが交換されます。

MULTIPARTSIGNED

サービスで、multipart/signedの署名したメッセージを送信できます。

*YES - multipart/signed形式でメッセージを送信します。

*NO - multipart/signed形式でメッセージを送信しません(省略値)。

ENCRYPT

暗号化は、クリアテキスト・メッセージ(平文)を、意味のない連続ビット(暗号文)のようなデータ・ストリームに変換するプロセスです。暗号鍵は、平文入力を暗号文出力に(または暗号文入力を平文出力に)変換する際に使用される数学関数です。

メールを暗号化する場合、暗号アルゴリズム(暗号鍵)を指定する必要があります。省略値ではメールに暗号化は適用されませんが、SMTPMailServiceは以下のブロック暗号化の暗号鍵をサポートしています。

*DES - データ暗号化規格はブロック暗号鍵で(一度にビットのブロックに機能する)、固定鍵長アルゴリズムを使用します。56ビット数で1つの鍵となる56ビット鍵を使用します。

*DES-EDE3 - トリプルDESは、3つの異なる鍵を使用してDES暗号化を3回適用することにより、DESのセキュリティを強化したものです。この方法では、有効な鍵の長さは168ビット(56 x 3)になり、実質的に総当たり攻撃が不可能になります。

*RC2-40、*RC2-64、*RC2-128 - RC2暗号化のバージョンで、40ビット、64ビット、128ビットの暗号化をそれぞれサポートします。定義では、RC2暗号化は可変長鍵の暗号鍵で、40〜128ビットの範囲内で8ビットずつ増加する鍵長をサポートします。

暗号化アルゴリズムが決まったら、メールを暗号化および復号化するために、適切な鍵を指定する必要があります。最新のすべての暗号鍵では、鍵と平文を組み合わせて入力し、暗号文を生成します。暗号文から平文に戻すには、復号化機能に同じまたは別の鍵を指定します。暗号鍵のセキュリティは、暗号鍵の詳細部分(通常は公開される)ではなく鍵にあります。

暗号化されたメールを送信するには、メールの全受信者の公開証明書が必要です。

メールの受信者はそれぞれの公開X.509証明書を送信する必要があります。メールの受信者ごとに、それぞれの公開X.509証明書の場所を示すエントリーをSMTPMailServiceプロパティ・ファイルに追加します。

例:

 

[email protected]=test-input/smtp-person-certificate.der

 

CONTENT

最もよく使用されるメールの内容タイプはtext/plaintext/htmlです(対応する値は*PLAINと*HTML)。

省略値の内容タイプ*PLAINは、MIMEタイプtext/plainを表し、単純なテキスト・メッセージに使用されます。

値が*HTMLの場合、MIMEタイプtext/htmlはメール本文に適用され、HTMLタグを使用してメール本文の書式を設定できます。

適切なタイプやサブタイプの記述を使用して、代わりの内容タイプも割り当てることができます。

例えばtext/enrichedなどです。

BODY

本文を含むファイルを指定できます。指定のファイルがない場合、本文はサービス・リスト引数(指定されている場合)から作成されます。

BODYキーワードが使用される場合、本文はファイルから取得され、ENCODINGキーワード値を使用してUnicodeに変換されるため、作業リストの参照は無視されます。

ENCODING

バイト内容のUnicode文字列変換に適用されるエンコーディングを指定する場合に使用されます。ENCODINGキーワードの省略値は*DEFAULTです。

詳細については、「ENCODING」を参照してください。

 

RDML

メールの件名を設定し、メールの本文を作業リストに入れます。SENDコマンドの前にSETコマンドとADDコマンドを使用して追加の詳細を定義できます。あるいは、SMTPMailServiceプロパティ・ファイルの省略値が適用されます。

 

USE BUILTIN(TCONCAT) WITH_ARGS('SEND SUBJECT(' #SUBJECT ') SERVICE_LIST(TXT)') TO_GET(#JSMCMD)

USE BUILTIN(JSM_COMMAND) WITH_ARGS(#JSMCMD) TO_GET(#JSMSTS #JSMMSG #MESSAGE)

 

RDMLX

メールの件名を設定してファイルに本文を入れます。SENDコマンドの前にSETコマンドとADDコマンドを使用して追加の詳細を定義できます。あるいは、SMTPMailServiceプロパティ・ファイルの省略値が適用されます。

 

#jsmcmd := 'send subject(' + #subject + ') body(emailtext.txt) encrypt(*DES)'

use builtin(jsmx_command) with_args(#jsmhdle #jsmcmd) to_get(#jsmsts #jsmmsg)

 

ILE RPG

1つのXMLファイルをメールの添付ファイルとして含めます。

 

c                   eval      jsmcmd = 'send '

c                             + ' encrypt(*des) body(emailtext.txt)'

c                   callp     p_jsmcmd(jsmcmd:jsmsts:jsmmsg)