Gmail着信をLINEに通知

LINE はこの記事で使っている LINE Notify の機能を2025年3月末で廃止すると通達していますので注意してください。

 

GASを使って、自分のGmailに着信したメールをLINEに通知してみます。

LINE(スマホアプリ)の設定

まず LINE で通知を受けるのを誰にするのか決めてください。自分だけでいいのか、既存のグループに通知するのか? 今回は新しいグループを作成してそのグループメンバーに通知することにします。(自分だけで良いのなら直接Gmailを見れば済みますからね。)

LINEグループ名: “Gmailが着信しました”

LINEのホーム画面で “グループ” のメニューを辿ると “グループ作成” の機能がありますのでグループを作ってください。

グループのメンバーには、忘れずに LINE Notify を加えてください。

LINE Notify

LINEに通知するのは LINE Notify を使います。

LINE Notify
LINE NotifyはGitHub,IFTTT,MackerelなどのWebサービスからの通知を、LINEで受信することが出来る便利なサービスです。

画面右上の [ログイン] からログインします。ログインする時にLINEを使っているスマホで認証が必要です。スマホを手元に置いてログイン操作をしてください。

画面上部右側の [アカウント名▽] のプルダウンリストから [マイページ] に進むと下のようなリンクが表示されます。

[トークンを発行する] というリンクをクリックします。通知を送る相手として先ほど作ったグループ “Gmailが着信しました” を選びます。トークン名は何でも構いませんが、分かりやすいようにグループ名と同じ “Gmailが着信しました” にしておきます。

[発行する] のボタンが緑色に変化して押せるようになります。クリックするとトークンが表示されます。1回だけしか表示されません。テキストエディタなどにコピペして保存しておくと良いでしょう。

余談

Mac ならターミナルで、WSLがインストールされたWindowsならWSLで(なぜかPowershellではうまくいきませんでした)次のコマンドを実行してみてください。XXXXXXXXXX のところは取得したトークンです。

すると、設定を済ませたLINEグループに “ABC” というメッセージが届きます。これはつまり、LINE Notify を適切に叩いてやれば(GASでなくても)ちゃんと動作するということを意味します。

GASスクリプトの作成

Googleドライブにログインし、[+新規] から Google Apps Script に入ります。”無題のプロジェクト” になっているので、このタイトル部分をクリックして適当な名前に変更しておきます。

スクリプトは次のようになります。これをコピペしてください。ただし、冒頭の XXXXXXXX の部分は LINE Notify のトークンを記述します。

少しスクリプトを解説します。ここ を参考にしていますが、誰が書いても同じようなコードになるので感謝の意を表しつつ使わせていただきました。

Gmail に届いたすべてのメールについて通知が欲しい訳ではないので、条件を付けています。var query = “from:xxx.ac.jp”; の部分がそれで、送信者に xxx.ac.jp が含まれるメールだけを対象にしています。特定の送信者だけに絞りたいなら、そのメールアドレスをここに書けばOKです。

LINE への通知が完了したかどうか判別するために、Gmail の星(☆)マークを使っています。着信した時のメールには星マークは付いていませんので、LINEに通知し、通知が終わったら星マークを付けています。こうすることで重複して LINE に通知されないように制御しています。

スクリプトが完成したら [getMail] をクリックして選択、保存して、[▷実行] を押します。

このとき “承認が必要です” のメッセージが出たら承認してください。承認する手順は 別の記事 に書いたのと同じです。

トリガーの設定

スクリプトができたので、[▷実行] を押せば動くはずです。その時点でGmailに対象のメールがあればLINEに通知されます。しかし期待する動作は、Gmailにメールが届いたら自動でLINEに通知が来ることです。そのためにトリガーを設定します。

GASの画面の左端の時計のアイコンをクリックするとトリガーの設定画面になります。[+トリガーを追加] を押します。

トリガーが発生する条件を設定します。今回の用途なら何分かごとにGmailの着信がチェックされるのが適当でしょう。5分ごとにトリガーが発生するように設定して [保存] ボタンを押します。

独り言: 同じ Google サービス内部なんだから Gmail の着信というトリガーが設定できても良いんじゃないかとは思う。数分の遅れが必ず発生してしまうのはイマイチですね。

動作確認

自分の Gmail 宛に xxx.ac.jp からメールを送ります。

スマホに通知が届きます。このスマホには LINE の他に Outlook、Gmail もインストールされているのでそれぞれの通知も届いています。

もちろん LINE にも届いています。