Google Apps ScriptとCustomers Mail CloudでGoogle Drive内のファイルを添付送信する

Google Apps Scriptを使うことでオフィスファイル(ドキュメント、表計算、スライドなど)をプログラミングからコントロールできるようになります。さらにCustomers Mail Cloudと組み合わせればメール送信も簡単です。

今回はCustomers Mail Cloud用のGASライブラリを使ってGoogle Apps Scriptから添付ファイルを送信する方法を紹介します。

Customers Mail Cloudの使い方

Customers Mail Cloudはライブラリで 1RegQzjZLiJUacopzEoxmpTe5_vp7LP3r01aa-D9rf4sJRPZkifI4Mf7K を指定してください。添付ファイルはバージョン3以降で対応しています。

認証情報を設定する

APIを使って操作しますので、あらかじめCustomers Mail CloudでAPIユーザとAPIキーを生成しておきます。この二つの情報を使って初期化します。

var apiUser = 'api@smtps.jp';
var apiKey = 'APIKEY';
var c = new Client(apiUser, apiKey);

また、契約情報を指定します。これはトライアル、スタンダード、Proの3つがありますので必要に応じて実行します。

c.trial();

送信元、送信先を設定する

次に送信元のアドレス、送信先情報を設定します。

c.setFrom('Customers Mail Cloud', 'info@smtps.jp');
c.addTo('テスト受信者', 'test@smtps.jp');

件名、本文を設定する

件名と本文は必須になりますので、適切に指定してください。テキストはHTMLメールに対応していない場合の代替になります。

c.subject = 'テストメール from GAS';
c.text = "メールの本文です\n\n改行を入れました";

添付ファイルを追加する

今回は添付ファイルとして、Google Drive上にあるファイルを指定します。ファイルのIDはお持ちのものに書き換えてください。

var id = '1r1...-tF';
var file = DriveApp.getFileById(id);

追加はaddAttachmentメソッドで行います。

c.addAttachment(file.getBlob());

メールを送信する

準備ができたらメールを送信します。

try {
  var res = c.send();
    Logger.log(res);
  } catch (e) {
    Logger.log(e);
  }
}

メール送信がうまくいっていれば、次のようなログが返ってきます。

{
  "id":"\u003C1867844705.17288.1575893073288@mta01.sandbox.smtps.jp\u003E"
}

受け取ったメールが画像などを添付していれば問題ありません。

f:id:moongift:20200821184847p:plain
受け取ったメール

まとめ

Customers Mail Cloudを使うことで、Google Apps Scriptから手軽にメール送信できるようになります。Google Drive上のファイルを添付する場合も、Google Apps Scriptライブラリを使えば簡単に実現できます。ぜひお試しを!

クラウドからのメール送信を簡単に。確実に。| Customers Mail Cloud