メール受信(IMAP4)処理

オペレーション名

メール受信(IMAP4)

機能概要

GmailのIMAP4サーバからメールを受信します。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。

プロパティ

変数の使用については、「変数」を参照してください。
基本設定
項目名 必須/省略可 変数の使用 説明 備考
名前 必須 使用不可 スクリプトキャンバス上での名前を入力します。  
必須設定
項目名 必須/省略可 変数の使用 説明 備考
接続先 必須 使用不可 グローバルリソースを選択します。
グローバルリソースの設定方法については、「グローバルリソースのプロパティ」を参照してください。
  • [追加]:
    新規にグローバルリソースを追加します。
  • [一覧の編集]:
    「リソース一覧の編集」画面にて、グローバルリソースの設定を編集することができます。
 
ユーザ名 必須 使用可 ユーザ名を入力します。
  • 「<G Suiteのユーザー名>@<G Suiteのドメイン名>」の形式で入力してください。
パスワード 必須 使用可 パスワードを入力します。  
プロパティアクション
項目名 説明 備考
認証テスト 指定した[接続先]に対し、[ユーザ名][パスワード]でログインすることができるかテストを行います。
  • 以下の場合には[認証テスト]は無効になります。
    • [ユーザ名]または[パスワード]が入力されていない場合
    • [ユーザ名]または[パスワード]にスクリプト変数が指定された場合
受信設定
項目名 必須/省略可 変数の使用 説明 備考
メール受信後 必須 使用不可 受信したメッセージをサーバから削除するかどうかを選択します。
  • [削除しない]:(デフォルト)
  • [削除する]:
 
受信後既読にする 省略可 使用不可 受信したメッセージを既読にするかどうかを選択します。
  • [チェックあり]:(デフォルト)
    受信したメッセージを既読にします。
  • [チェックなし]:
    受信したメッセージを既読にしません。
    受信前の状態が既読のメッセージは既読のままとなります。受信前の状態が未読のメッセージは未読のままになります。
  • 既読にするとはSEENフラグをマークするということを意味しています。
エンコード 省略可 使用可 メール受信時のエンコードを選択または入力します。
  • [日本語自動判別(JISAutoDetect)]:(デフォルト)
  • [日本語(JIS)]:(省略時)
  • [日本語(シフトJIS)]:
  • [日本語(EUC)]:
  • [US-ASCII]:
  • [ISO 8859-1]:
  • [UTF-8]:
  • [EUC-KR]:
入力する場合は、Java SE Runtime Environment 8でサポートされているエンコードを指定します。
詳細については、「Supported Encodings」(http://docs.oracle.com/javase/8/docs/technotes/guides/intl/encoding.doc.html)を参照してください。
  • [メッセージのエンコードを優先する][チェックあり]にした場合、メッセージのエンコードが優先されます。
メッセージのエンコードを優先する 省略可 使用不可 メール受信時に、メッセージに指定されているエンコードを優先するかどうかを選択します。
  • [チェックあり]:(デフォルト)
    メッセージにエンコード(Content-Typeヘッダのcharsetパラメータ)が指定されている場合は、メッセージで指定されたエンコードを使用します。
    それ以外の場合、[エンコード]の設定を使用します。
  • [チェックなし]:
    メッセージにエンコードが指定されているかにかかわらず、[エンコード]の設定を使用します。
 
フォルダ名 省略可 使用可 受信するフォルダ名を入力します。
  • デフォルト値は「inbox」です。
  • 省略した場合には、「inbox」を受信します。
新着順に受信する 省略可 使用不可 新着順にメッセージを受信するかどうかを選択します。
  • [チェックあり]:
    メッセージをメールサーバに届いた新しい順に取得します。
    最後に届いたメッセージを最初に取得します。
  • [チェックなし]:(デフォルト)
    メッセージをメールサーバに届いた古い順に取得します。
    最初に届いたメッセージを最初に取得します。
 
最大受信件数を設定する 省略可 使用不可 メッセージの最大受信件数を指定するかどうかを選択します。
  • [チェックあり]:
    指定された件数を上限としてメッセージを受信します。
  • [チェックなし]:(デフォルト)
    すべてのメッセージを受信します。
 
最大受信件数 必須 使用可 メッセージの最大受信件数を指定します。
たとえば、サーバにメッセージが100件格納されており、最大受信件数が10件に設定されている場合、先頭の10件のメッセージのみが受信され、残りの90件は未読の状態のままとなります。
  • [最大受信件数を設定する][チェックあり]にした場合、有効になります。
受信できないメッセージは読み飛ばす 省略可 使用不可 受信できないメッセージを受信した際の動作を選択します。
  • [チェックあり]:
    受信できないメッセージは読み飛ばし、処理を継続します。
  • [チェックなし]:(デフォルト)
    受信できないメッセージを受信した際には、エラーにします。
  • チェックを入れた場合には、メッセージ受信時にエラーが発生した際に、対象のメッセージの受信をスキップし、処理を継続します。
  • 接続できないホストを指定した場合などの接続時のエラーは、本プロパティにチェックを入れた場合でも処理が継続できないため、エラーとなります。
  • 受信できなかったメッセージはログレベル「WARN」でログに出力されます。
メールアドレスはアドレスのみ取得する 省略可 使用不可 メールアドレスが含まれるデータ(From、To、Cc、Reply-To)を取得する際に、
    「説明<メールアドレス>」
の形式で取得するか
    「メールアドレス」
の形式で取得するかを選択します。
  • [チェックあり]:
    「メールアドレス」の形式で取得します。
  • [チェックなし]:(デフォルト)
    「説明<メールアドレス>」の形式で取得します。
  • 説明部がない場合には「メールアドレス」のみとなります。
UIDを取得する 省略可 使用不可 UIDを取得するかどうかを選択します。
  • [チェックあり]:
    UIDを取得します。
  • [チェックなし]:(デフォルト)
    UIDを取得しません。
  • チェックを入れた場合には出力スキーマにUIDカラムが追加されます。
    詳細については、スキーマを参照してください。
添付ファイル
項目名 必須/省略可 変数の使用 説明 備考
添付ファイルを受信 省略可 使用不可 添付ファイルを受信するかどうかを選択します。
  • [チェックあり]:(デフォルト)
    メッセージに添付されたファイルを受信します。
  • [チェックなし]:
    メッセージに添付されたファイルを受信しません。
 
添付ファイル格納先 必須 使用可 添付ファイルを格納するディレクトリを入力します。

[参照]ボタンを押下するとディレクトリチューザが起動し、ディレクトリの選択ができます。

格納された添付ファイルのパスは<格納先>/<メッセージID>/添付ファイル名になります。
また、<メッセージID>はメールサーバで設定される可変値です。

格納先パラメータは/tmpに設定してtest.txtファイルを添付して送った場合、以下のように生成されます。
例:/tmp/18926678.1130237227441.JavaMail.account@mail.com/test.txt
  • デフォルト値は「/tmp」です。
  • [添付ファイルを受信][チェックあり]にした場合、有効になります。
  • 添付ファイル名・メッセージIDに「DataSpider Cloudファイルシステムの禁止文字」またはタブが含まれる場合、「_」(半角アンダースコア)に変換して出力します。
  • ファイルパスはDataSpider Cloudファイルシステムの絶対パスで指定してください。
  • パス区切り文字「/」以外のDataSpider Cloudファイルシステムの使用禁止文字は使用できません。
添付ファイルに同じ名前のファイルが存在する場合 必須 使用不可 添付ファイルに同一名のファイルが存在する場合の動作を選択します。
  • [上書きする]:(デフォルト)
    ファイルを上書きします。
  • [連番を振る]:
    「<ファイル名>_1.csv」のように連番を付けます。拡張子がある場合は、拡張子の前の名前に連番が付与されます。
  • [添付ファイルを受信][チェックあり]にした場合、有効になります。
フィルタ
項目名 必須/省略可 変数の使用 説明 備考
未読メッセージのみ受信 省略可 使用不可 未読のメッセージ(SEENフラグがマークされていないメッセージ)のみ受信するかどうかを選択します。
  • [チェックあり]:
    未読のメッセージのみ受信します。
  • [チェックなし]:(デフォルト)
    すべてのメッセージを受信します。
 
ヘッダ
項目名 必須/省略可 変数の使用 説明 備考
ヘッダ一覧 省略可 - 取得するヘッダを指定します。
  • ヘッダを設定した場合のスキーマ情報はスキーマを参照してください。
ヘッダ一覧/ヘッダ 必須 使用可 取得するヘッダのキーを入力します。
  • ダブルバイトのキー値は対応していません。
  • ヘッダ値がダブルバイトを含む場合には、ヘッダ値がRFC 2047準拠のエンコーディングがされている必要があります。
データ処理方式
項目名 必須/省略可 変数の使用 説明 備考
データ処理方式 必須 使用不可 データ処理方式を選択します。
  • [スクリプトの設定を使用する]:(デフォルト)
    スクリプトプロパティの大容量データ処理の設定をアダプタに使用します。
  • [大容量データ処理を行わない]:
    大容量データ処理を行いません。
  • [大容量データ処理を行う]:
    大容量データ処理を行います。
 
コメント
項目名 必須/省略可 変数の使用 説明 備考
コメント 省略可 使用不可 このアダプタの簡単な説明を記述することができます。
説明を記述すると、仕様書に反映させることができます。
 

スキーマ

入力スキーマ

ありません。

出力スキーマ

<?xml version="1.0" encoding="UTF-8" ?>
 <table>
   <row>
     <column>メッセージID</column>
     <column>UID</column>
     <column>送信日付(受信日付)</column>
     <column>ヘッダ1</column>
     <column>ヘッダ2</column>
       :
     <column>差出人</column>
     <column>宛先</column>
     <column>CC</column>
     <column>BCC</column>
     <column>返信先</column>
     <column>件名</column>
     <column>Contetnt-Type</column>
     <column>本文</column>
     <column>添付ファイルパス</column>
   </row>
   <row>
     :
   </row>
 </table>
列名 説明 備考
メッセージID    
UID  
  • [UIDを取得する]にチェックを入れた場合のみ出現します。
送信日時(受信日時)    
ヘッダ [ヘッダ一覧]に設定されたキーごとに出力されます。
  • 1つのキーに対して複数の値が存在する場合には、カンマ(,)区切りで出力されます。
  • [ヘッダ一覧]が設定されていない場合は出現しません。
差出人  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。
宛先  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。
CC  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。
BCC  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。
返信先  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。
件名    
Content-Type    
本文    
添付ファイルパス  
  • 複数存在する場合には、カンマ(,)区切りで出力されます。

Mapperでのスキーマ読み込み

スキーマは自動で読み込まれます。
詳細については、「
スキーマ編集」を参照してください。

大容量データ処理

大容量データ処理に対応しています。

PSPでの使用について

PSPでは使用できません。

使用できるコンポーネント変数

コンポーネント変数名 説明 備考
count 受信したメールの件数が格納されます。
  • デフォルト値はnullです。
message_category エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。
  • デフォルト値はnullです。
message_code エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。
  • デフォルト値はnullです。
message_level エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。
  • デフォルト値はnullです。
error_type エラー発生時、発生したエラーの種類が格納されます。
  • デフォルト値はnullです。
  • エラーの種類は、以下のような形式となります。
    例:「java.io.FileNotFoundException」
  • DataSpider Cloudのバージョンにより、格納される内容が変わる可能性があります。
error_message エラー発生時、発生したエラーのメッセージが格納されます。
  • デフォルト値はnullです。
  • DataSpider Cloudのバージョンにより、格納される内容が変わる可能性があります。
error_trace エラー発生時、発生したエラーのトレース情報が格納されます。
  • デフォルト値はnullです。
  • DataSpider Cloudのバージョンや実行するクライアントアプリケーションにより、格納される内容が変わる可能性があります。

仕様制限

主な例外

例外名 原因 対策
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[]
[接続先]が指定されていません。 [接続先]を指定してください。
ResourceNotFoundException
リソース定義が見つかりませんでした。名前:[<グローバルリソース名>]
[接続先]で選択されたリソース定義が見つかりません。 [接続先]で指定したグローバルリソースを確認してください。
InvalidPropertyConfigurationException
<プロパティ名>が指定されていません。
[<プロパティ名>]が指定されていません。 [<プロパティ名>]を指定してください。
java.io.UnsupportedEncodingException [エンコード]に設定されたエンコードはサポートされません。 [エンコード]で指定したエンコードを確認してください。
javax.mail.AuthenticationFailedException:
[ALERT] Your account is not enabled for IMAP use. Please visit your Gmail settings page and enable your account for IMAP access. (Failure)
Gmailの設定でIMAPが有効になっていません。 対象ユーザのGmailの設定でIMAPを有効にしてください。
javax.mail.AuthenticationFailedException:
Invalid credentials <文字列>
[ユーザ名]または[パスワード]が不正です。 [ユーザ名]または[パスワード]を確認してください。
javax.mail.AuthenticationFailedException:
[AUTHENTICATIONFAILED] Invalid credentials (Failure)
[ユーザ名]または[パスワード]が間違っています。 [ユーザ名]または[パスワード]を確認してください。
com.sun.mail.util.MailConnectException: GmailのIMAP4サーバとの接続に失敗しました。 ネットワークを確認してください。

注意事項