Google Apps Script から メールを送信する
Google Apps Script(GAS)からメールを送信してみます。
まずはGoogleドライブ で新しいGoogle Apps Scriptのプロジェクトを作成します。
次に、作成したspreadsheetにGoogle Apps Script(GAS)を追加します。
/**
* テスト用関数
*/
function myFunction() {
sendGmail("XXXX@gmail.com", "TEST", "テストだよ~ん");
}
/**
* Gmail送信処理
*
* @param {string|string[]} address - 送信先アドレス
* @param {string} subject - サブジェクト(最大250文字)
* @param {string} message - 送信するメッセージ
*
* @note 送信先アドレスが間違っていてもここではエラーにならず、送信元アドレスにエラーメールが返る
*/
function sendGmail(address, subject, message) {
// アドレスが配列だったらカンマ区切りの文字列に変換する
if (Array.isArray(address)) {
address = address.join(',');
} else {
// そのまま
}
var options = {
name: "てすと" // 送信者名を指定したい場合は入れる
// , replyTo: "ZZZZ@gmail.com" // Reply-To を指定したい場合は入れる
};
// メール送信
GmailApp.sendEmail(address, subject, message, options);
}
myFunction
を選択(エディタの上、「実行ログ」の左の▼をクリックして選ぶ)[!NOTE] 送信元アドレスにはこのスクリプトを実行しているGoogleユーザ(デプロイ設定によってはそのとき実行しているGoogleユーザ)が使用されます。
optionsで「from」フィールドを指定する事が出来ますが、このアドレスは送信元アドレスのaliasである必要があります。
そうでない場合は例外 Invalid argument がthrowされます。
[!NOTE] 送信先アドレスが間違っていてもここではエラーになりません。
送信元アドレスにエラーメール(subject:「Delivery Status Notification (Failure)」)が送られてきます。
関数化する必要もないくらい簡単ですが😅