Googleドライブにメールの内容を書き込み、添付ファイルをアップロードしたい

キーワード:クラウド,G Suite,Google,スプレッドシート,Google Drive,メール
シナリオ一覧に戻る

概要

Googleスプレッドシートに受信したメールの内容を書き込み、Googleドライブにメールの添付ファイルをアップロードしたい場合、GoogleスプレッドシートアダプタおよびGoogleドライブアダプタを使用します。

サンプルプロジェクトの説明

メールを受信し、メールの内容をGoogleスプレッドシートに書き込み、メールの添付ファイルをGoogleドライブにアップロードします。

処理の流れ

サンプルプロジェクトの処理の流れは以下の通りです。
  1. メール受信処理」でメールを受信します。
  2. マッピング処理」で「書き込み処理」のスキーマにマッピングします。
  3. 書き込み処理」で入力データをGoogleドライブ上のスプレッドシートに書き込みます。
  4. ファイル名一覧取得処理」で受信した添付ファイルの一覧を取得します。
  5. 繰り返し(データ件数)処理」で受信した添付ファイル数分、以下の処理を繰り返します。
  6. マッピング処理」で受信した添付ファイルのディレクトリ名をスクリプト変数に代入します。
  7. ファイル/フォルダ書き込み処理」で添付ファイル(zipファイル)をGoogleドライブにアップロードします。
処理を実行すると、Googleスプレッドシートにメールの内容が書き込まれ、Googleドライブに添付ファイルがアップロードされます。

ポイントとなる機能

名前 説明 ツールパレット上の場所
メール受信(IMAP4)処理 IMAP4サーバからメールを受信します。 「ネットワーク」-「メール」-「メール受信(IMAP4)」
書き込み処理 入力データをGoogleドライブ上のスプレッドシートに書き込みます。 「クラウド」-「Googleスプレッドシート」-「書き込み」
ファイル/フォルダ書き込み処理 DataSpiderファイルシステム上にあるファイル/フォルダを、Googleドライブ上に書き込みます。 「クラウド」-「Googleドライブ」-「ファイル/フォルダ書き込み」

処理のポイント

GoogleスプレッドシートおよびGoogleドライブには、それぞれ専用のアダプタであるGoogleスプレッドシートアダプタおよびGoogleドライブアダプタを使用して接続します。

サンプルプロジェクトの使用方法

上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。

サンプルプロジェクトファイル名 rl_reference_085.zip
  1. サンプルプロジェクトの展開
    サンプルプロジェクトファイル「rl_reference_085.zip」を展開します。

  2. プロジェクトのアップロード
    「rl_reference_085.zip」を展開後に作成される「rl_reference_085プロジェクト」ディレクトリがプロジェクトファイルとなります。
    DataSpider Studioを起動し、マイプロジェクトの画面から[ファイル]-[ローカルからアップロード]で展開したディレクトリ「rl_reference_085プロジェクト」をアップロードしてください。

  3. サンプルデータの準備
    「rl_reference_085.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
    $DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。

  4. グローバルリソース(メール受信サーバ接続設定)の設定
    コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、メール受信サーバ接続設定のグローバルリソースを追加します。
    グローバルリソース(メール受信サーバ接続設定)の設定方法については、「グローバルリソースのプロパティ」を参照してください。

  5. グローバルリソース(Googleスプレッドシート)の設定
    コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Googleスプレッドシートのグローバルリソースを追加します。
    グローバルリソース(Googleスプレッドシート)の設定方法については、「グローバルリソースのプロパティ」を参照してください。

  6. グローバルリソース(Googleドライブ)の設定
    コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Googleドライブのグローバルリソースを追加します。
    グローバルリソース(Googleドライブ)の設定方法については、「グローバルリソースのプロパティ」を参照してください。

スクリプトの作成手順

プロセスフローおよびデータフローは、「サンプルプロジェクトの説明」のスクリプト画像を参照して適宜設定してください。
  1. 添付ファイルのディレクトリ名をセットするため、スクリプト変数を作成します。

  2. デザイナのツールパレット「ネットワーク」-「メール」-「メール受信(IMAP4)」から、メール受信(IMAP4)処理をスクリプトキャンバスに配置します。

  3. デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。

  4. デザイナのツールパレット「クラウド」-「Googleスプレッドシート」-「書き込み」から、書き込み処理をスクリプトキャンバスに配置します。

  5. マッピング処理(「mapping」)のMapperエディタを開き、書き込み処理のスキーマにマッピングする処理を作成します。

  6. デザイナのツールパレット「ファイル」-「ファイル操作」-「ファイル名一覧取得」から、ファイル名一覧取得処理をスクリプトキャンバスに配置します。

  7. デザイナのツールパレット「基本」-「フロー」-「繰り返し(データ件数)」から、繰り返し(データ件数)処理をスクリプトキャンバスに配置します。

  8. デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。

  9. マッピング処理(「mapping(1)」)のMapperエディタを開き、受信した添付ファイルのディレクトリ名をスクリプト変数に代入する処理を作成します。

  10. デザイナのツールパレット「クラウド」-「Googleドライブ」-「ファイル/フォルダ書き込み」から、ファイル/フォルダ書き込み処理をスクリプトキャンバスに配置します。

  11. スクリプトを実行し、正常終了すれば成功です。