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" }
受け取ったメールが画像などを添付していれば問題ありません。
まとめ
Customers Mail Cloudを使うことで、Google Apps Scriptから手軽にメール送信できるようになります。Google Drive上のファイルを添付する場合も、Google Apps Scriptライブラリを使えば簡単に実現できます。ぜひお試しを!