[GAS][メール]メールにテキストファイルを添付するには: 逆引きGoogle Apps Script

2012 年 12 月 24 日 月曜日

▼サンプルスクリプト

メールにテキストファイルを添付してメッセージを送信するサンプルスクリプト。

function sendMailWithAttachments() {
  //1つ目の添付ファイル
  var file1 = {fileName: 'PlainText.txt', 
                          mimeType: 'text/plain',
                          content: '添付ファイル1のコンテンツです。'};
  
  //2つ目の添付ファイル
  //スプレッドシートのA1セルの内容を送信
  var sheet = SpreadsheetApp.getActiveSheet();
  var file2 = {fileName: 'A1Value.txt', 
                          mimeType: 'text/plain',
                          content: sheet.getRange('A1').getValue()};
  
  //メッセージ送信
  MailApp.sendEmail('***********@gmail.com',//TO
                    'ファイル添付テスト',//Subject
                    'テストです。', //body
                    {attachments: [file1,file2]}
                   );
}

行3-
行5
1つのメッセージに複数のファイルを添付することができる。ファイル名と、MIMEタイプ、ファイルの中身を指定する。MIMEタイプは任意指定。この場合は、「PlainText.txt」というファイル名で、「添付ファイル1のコンテンツです」という内容が、MIMEタイプ「text/plain(テキスト)」で送信される。
行9-
行12
スプレッドシートのA1セルの内容でファイルオブジェクトを作成。
行15-
行19
作成したファイルオブジェクトをattachments属性に指定。カンマ区切りで複数指定できる。

構文

MailApp.sendEmail(recipients,subject, body, optAdvancedArgs);

パラメータ

String recipients
送信先。カンマ区切りで複数のアドレスに送信可能
String subject
メール件名
String body
テキストメッセージもあわせて送信する場合は、平文を入力。
optAdvancedArgs
高度な設定をJSONで記述する。HTMLメール本文はこちらに記述。

String cc
Ccを指定。カンマ区切りで複数のアドレスを指定可能。
String bcc
Bccを指定。カンマ区切りで複数のアドレスを指定可能。
String htmlBody
HTMLメールの本文を指定する。
String name
送信者名を変える場合は指定する。
Boolean noReply
送信専用メールかどうか。trueをセットした場合、送信元アドレスがnoreply@ドメイン名になる。Google Appsでのみ利用可能。カスタマーアカウント(gmail.com)では設定しても有効にならない。
replyTo
返信用メールアドレス。Gmailのバグにより、現在のところ指定しても変化なし。

attachments
添付ファイル。以下のプロパティを持つオブジェクトをJSONで記述する。

String fileName
ファイル名
String mimeType(任意)
MIMEタイプを指定。
String content
ファイルコンテンツ
inlineImages
htmlBodyで利用するための画像を定義する。

関連記事

コメントをどうぞ

トラックバック

このエントリーのトラックバックURL:

http://www.bmoo.net/archives/2012/12/314809.html/trackback