今回はGAS(Google Apps Script)に関して書いていきます。
以前もGASに関する記事を書いています(以下リンク)。
上記の記事で、GASでNotionからデータ取得してLINE通知する対応について書いています。
プログラムも載せていますが、プログラムの具体的な説明はしませんでした。
今回の記事で、「LINE通知する」部分を具体的に説明してみます。
事前準備(トークンを発行したり)が必要ですが、準備が整った後は割とシンプルな実装で済みました。
それでは本題へ。
LINE Notifyとは?
まずは「LINE Notifyとは?」に関して書いておきます。
LINE Notify(ラインノーティファイ)とは、LINEとWebサービスを連携し、ユーザーが通知を受け取れるサービスです。LINEアカウントを持っているユーザーであれば誰でも使え、グループでの通知設定もできます。
メッセージを送る方法としてLINE Messaging APIがあるみたいですが今回はGASを通してメッセージを送りたかったのでLINE Notifyを利用します。
「LINE Notify」とは別で「LINE Messaging API」というのもあるみたいです。
今回は通知したいだけなので、通知に特化している「LINE Notify」を使うことにしました。
詳しくは以下のサイトを見て頂ければと。
linestep.jpwingdoor.co.jp
今回説明するところ
miya-moto-memo.hatenablog.com
上記リンクに全体のプログラムが載っていますが、この記事では部分的にピックアップして説明していきます。
フローチャートでいうと、以下(赤枠部分)に関して説明していきます。
※notifyLine
![](https://cdn-ak.f.st-hatena.com/images/fotolife/m/miyamoto-blog/20240604/20240604221617.png)
LINE Notifyを使う準備
LINE Notifyでトークンを発行します。
※LINEアカウントは既に持っている前提
プログラム
準備が整ったところで、プログラムです。
※事前準備が完了している前提です。
// LINE Notify トークン const LINE_NOTIFY_TOKEN = PropertiesService.getScriptProperties().getProperty('LINE_NOTIFY_TOKEN'); /** * メイン処理 */ function main() { const url = 'https://notify-api.line.me/api/notify'; const params = { 'method': 'post', 'headers': {'Authorization': 'Bearer ' + LINE_NOTIFY_TOKEN}, 'payload': {'message': createLineMessage()}, }; // メッセージ通知 UrlFetchApp.fetch(url, params); } /** * LINEのメッセージ内容を作成 */ function createLineMessage() { let msg = []; msg.push('通知テスト'); msg.push('通知テスト2行目'); msg.push('通知テスト3行目'); return msg.join('\n'); }
スクリプトプロパティとして以下を登録しています。
プロパティ | 説明 |
---|---|
LINE_NOTIFY_TOKEN | LINE Notify トークン |
こちらも良ければぜひ。
miya-moto-memo.hatenablog.com
プログラム実行
上記のプログラムを実行すると、LINEから通知が届きます。
![](https://cdn-ak.f.st-hatena.com/images/fotolife/m/miyamoto-blog/20240604/20240604221853.png)
![](https://cdn-ak.f.st-hatena.com/images/fotolife/m/miyamoto-blog/20240604/20240604221924.png)
![](https://cdn-ak.f.st-hatena.com/images/fotolife/m/miyamoto-blog/20240604/20240604221934.png)
![](https://cdn-ak.f.st-hatena.com/images/fotolife/m/miyamoto-blog/20240604/20240604221930.png)
「LINE Notify API」の詳細
LINE Notify APIに関するリファレンスをリンクしておきます。
ちょっと辿りにくいリファレンスですが…今回使っているAPIを見るには「通知系」とかでページ内検索すると良いかなと思います。
色々とパラメータが用意されているようです。
スタンプを送ることもできるようです。 ※stickerPackageId、stickerId
メッセージは送りつつ、通知しない設定もできるようです。 ※notificationDisabled
リファレンスを読んだ限りの解釈なので、時間があれば上記のパラメータに関しても試してみたいなと思います。
おわりに
ということで、「GASでLINE通知する(LINE Notify)」に関してアレコレ書いてみました。
トークンを発行する手間はありましたが、実装自体はシンプルにできて良かったです。
この記事が参考になれば幸いです。
関連記事
GAS(Google Apps Script)に関してはいくつか記事にしています。
気になる記事があればぜひ。
GASの活用事例
GASでNotionデータベースを検索してタスク未完了があったらLINEで通知する - 派生記事