メールの件数を定期的に通知するスクリプトをGoogle Apps Scriptで作る

この記事は約5分で読めます。

Google Apps Scriptを使い始めてまだ間がないのですが、検索していると同じGoogleのサービスであるGmailを使ったプログラムが楽にできるようです。また、さらに検索しているとCronのように定期的に実行する指定も簡単にできそうです。
となるとちょっと試してみたくなりましたので、簡単なスクリプトを作ってみました。

スポンサーリンク

スクリプトだけを新しく作ってみる

今まで2回、Google Apps Scriptについてblogに書きました。

Google Apps ScriptでGoogleスプレッドシートを開いたときに利用するセルに移動
Google Apps Scriptでスプレッドシートを開いたとき今月のセルに移動

これらはGoogleスプレッドシートを操作するものでした。今回は純粋にプログラムだけを書くのでどうすればいいかな?と思いましたがググって方法を知りました。

Apps Script – Google Apps Script

こちらのページで2カ所ある

Start Scripting というボタンのどちらかをクリック

ログイン画面になります。ここでメールアドレスが表示されて次へでパスワードを入力する場合と、この画面のように既にメールアドレスが表示されている場合はパスワードを入れてログインするか、表示中のアカウントとは別のアカウントでログインしたい場合は 別のアカウントでログイン をクリックして、ログインします。

ログインできると

このようにGoogle Apps ScriptEditor画面になりますので、ここでコーディングをしていきます。

gmailの指定したラベルの未読件数を取得して、メールを送る

gmailの指定したラベルの未読件数を取得してメールを送るスクリプトを書いてみます。ここで対象となるgmailは先ほどログインしたメールアドレスのgmailとなります。

無題のプロジェクト をクリックして

プロジェクト名を入力して OK をクリック

MyFunctionの中身を

function myFunction() {
    var label = GmailApp.getUserLabelByName("___2nd");
    var mailCount = label.getUnreadCount();
    var mailBody = 'ラベル:___2nd の未読件数は' + mailCount + 'です。';
    MailApp.sendEmail(
        "xxxx@example.com",// 送信先メール
        "___2nd 未読件数",// メール件名
        "",
        {
            htmlBody: mailBody
        }
    );
}

このようにしてみます。

var label = GmailApp.getUserLabelByName("___2nd");

で、

自分で作成した ___2nd というラベルを取得します。その後、そのラベルの未読件数を取得して、メールの本文を編集。

MailApp.sendEmail
 で宛先メールアドレス、メールタイトル、メール本文 を指定してメールを送信します。

保存 をクリックして、

実行 をクリック。実行の最初の1回だけ承認が必要になります。

続行 をクリック

許可 をクリック

これでスクリプトが実行されます。

gmailを見ると、

このように指定したラベルの未読件数がメールで届いていました(^^)/

作ったスクリプトを定期的に実行する

このスクリプトを定期的に実行しようと思います。

スクリプトエディターの上部に

現在のプロジェクトのトリガー というボタンがあるのでクリックします。
* トリガーというのは「引き金」のことで、プログラムでこの言葉を使う場合は「なにをきっかけに動かすか」というようなときに使います。

このように表示されるので トリガーが設定されていません。今すぐ追加するにはここをクリックしてください。 というリンクをクリック

このようにトリガーを指定する画面が出ます。

1時間に1回実行したいので、この表示されたままで条件はOKです。

時タイマーの他に 特定の日時、分タイマー、日タイマー、週タイマー、月タイマー が選べるようです。

間隔も1時間毎の他に 2,4,6,8,12時間毎に指定ができるようです。

保存 をクリック

これでCronのように定期的に実行する指定ができました。

数時間後に見てみると、

こんな感じに、最初に実行した時間から1時間おきにメールが届いているのがわかります。

たとえば、メールの送信先をSMSなどにして携帯に届くようにしておけば外出中に重要なメールが届いたときにいつでも分かるようにという仕組みが作れますね(^^)/

定期的に実行するスクリプトをやめるとき

定期的に実行するスクリプトを使わなくなったときに、このファイルを

削除します。

ゴミ箱に入ります。

と、これでいいかな?と思うのですがゴミ箱に入れてから1時間後に見てみると

以前と同じように通知が来ていました(^_^;。

検索したページにゴミ箱に入っていても定期的に実行されるという記事があったので、試してみたら本当にゴミ箱に入った状態だとまだ動いてしまうようです。

これを止めるには、ゴミ箱の一覧

完全に削除 をクリックし

完全に削除 をクリックして削除する。

もしくは先ほどの

この画面で、左側にある × をクリックすると

最初と同じ表示になり、この時点で定期的な実行をしないようになります。

Google Apps Scriptで参考になるサイト

今回参考にさせていただいたサイトは、

GoogleStyle

Mail Services

です。公式マニュアルのようなものは英語しかないので(^_^;、ちょっと困ってこちらを見つけました。

こちらは日本語で書いてあることはもちろん、内容が網羅的にあり、サンプルスクリプトもあるのでとても助かりました。

[amazon_searchlink search=”google apps script”]

兎本美佳

ブログを見た人がそのままできたらいいなと思って、できるだけ丁寧に書いています。blogに書いたようなネタの有償対応のご相談は「ゆうそうと」へいただければと思います(^^)/
無償での対応をご希望の場合は、コメントをいただけましたら可能な場合はコメントを返させていただきます。

ゆうそうとITブログの更新通知が受け取れます!
スポンサー広告

インターネット gmail Goole Apps Script
スポンサーリンク
ゆうそうとITブログの更新通知が受け取れます!
ゆうそうとITブログ

コメント

トップへ戻る

ゆうそうとについての説明

ゆうそうと とは東京都八王子市を中心として、WordPressによるWEBサイトの作成や、スポットでのIT相談を行ったり、年間契約でのIT顧問をなりわいとして活動しています。

特徴としては30年以上IT業界でプログラムを中心として仕事をしてきたものと、美大出身のデザイナーがワンストップで対応するため、幅広い対応が可能であることです。

IT相談は直接お会いしてのご相談の他、ZOOMによるオンライン相談も可能です。