2020年11月4日水曜日

Google App Script でメールを送信する

 例えば、下記のようなことをしたくないでしょうか。

例えば、鍵が開錠されたら通知をしたいけど、鍵は、単なる物理鍵なので、通知は難しい。


そんな時に、下記のような構成にすることによって、疑似的に実現可能かなと思っています。

・暗証番号などのカギをGoogle spreadsheetに書いておく。

・Google spreadsheetが開かれたら、誰が開いたかを管理者にメールする

このようなことが、Google spreadsheetとGoogle apps scriptを使うと簡単にできます。

暗証番号型のカギで鍵をかけてその暗証番号などの秘密のファイルをどこかにおいておき、

そのファイルが開封されたら、通知してほしい。

まず、Google spreadsheetから「ツール」→「スクリプトエディタ」を開きます。

その後下記のようなコードを書きます。

<pre>

function send_mail(){

    var toAdr = "xxxxxxx9999@gmail.com";

    var ccAdr = "";

    var bccAdr = "";

    var subject = "";

    var name = "";

    var files = new Array();

    var body = Session.getActiveUser().getEmail() +

      "さんから訪問がありました。\n";

  

    MailApp.sendEmail({to:toAdr, cc:ccAdr, bcc:bccAdr, subject:subject, name:name, body:body, attachments:files});

}

</pre>

Session.getActiveUser().getEmail() は接続者のメールアドレス情報を取得します。

MailApp.sendEmailはメールの送信をする関数です。


toAdrに送信したいあtメールアドレスをいれてください。

その後、スクリプトエディタ上で、実行→関数を実行→send_mailを選択すると許可を求める画面が出てきます。今ログインしているユーザの代わりにメールを送信する許可を求められるので、問題がなければ許可をします。

すると、メールが送信されると思います。

次に、スクリプトエディタ上の「編集」→「現在のプロジェクトのトリガー」を選択すると、この関数をいつ発火するかを選択できます。「トリガーを追加」を押して起動時に発火するように下記の通り、選択します。

イベントの種類を「起動時」とすることでファイルを開いたときにメール送信関数を呼び出すようにすることができます。

以上のステップのみで、冒頭に述べたことが実現できます。

とても簡単ですね。。。


0 件のコメント: