ブログ
GASを使用してLINEにメッセージを送る
表題について書こうと思ったきっかけですが、とても暇で時間を持て余している時に、友人と共通の趣味の何かしらについてプライベートでLINEのメッセージが来たら面白いなぁと思ったからです。
また、同時にGAS(Google Apps Script)も個人的に使ってみたかったのもあります。
思ったより簡単にできたので、簡単な流れを紹介します。
※この記事ではLINE Messaging APIやGoogle Apps Scriptについての詳しい説明などは行っておりません。
この記事の目的は、「何かしらのメッセージをLINEのグループトークに送ることができるようにする」です。
LINE Notifyとは
外部のアプリケーションやサービスからLINEへの通知を送信するためのAPIです。テキストメッセージ、画像、ステッカー、音声などの情報をLINEに通知することが可能です。通知の内容や送信タイミングは、ユーザーが自身で設定することができます。
メッセージを送る方法としてLINE Messaging APIがあるみたいですが今回はGASを通してメッセージを送りたかったのでLINE Notifyを利用します。
ドキュメントも用意されています。
大まかな流れ・使い方
- トークンの発行
- GASで関数用意
- 実行
トークンの発行
LINE NotifyにアクセスしてLINEアカウントでログインします。
トークン発行ボタンから、トークン名の設定や投稿時の名前を設定できます。また、通知を送るトークルームの設定もここで選択します。
設定後トークンが発行されます。後でメッセージ送信時に使用するので保管しておきましょう。
設定した内容が画面に表示されていれば大丈夫です。
LINE Notify側の設定はこれだけです!次はGAS側を操作していきます!
Google Apps Script
Google Apps Scriptは、GoogleのクラウドベースのプラットフォームであるGoogle Apps(G Suite)の一部として提供されるスクリプト実行環境です。
また、スプレッドシートやドキュメントなどのデータを操作したり、メールの送受信やカレンダーのイベントの作成など、多様なタスクを実行することができます。
Google Apps ScriptはJavaScriptがベースになっているので、JavaScriptの書き方を知っていれば問題ないと思います。
今回は先ほど設定したLINE Notifyの実行を行います。実行のコマンドはドキュメントにもある通り、リクエストヘッダーに先ほどのトークンを含め、
https://notify-api.line.me/api/notify
にPOSTします。
メッセージの内容を決める
漫画キャラとセリフを用意する
今回は友人と共有しているトークルームで、漫画などの推しキャラのセリフを投稿するようにします。探せば漫画やゲームのセリフのAPIを用意している人もいそうですが、テスト的な意味を込めての通知送信だったので、今回は簡単に2・3個配列で用意しました。
let caractersArray = [
{ name: "シンジ", lines: "逃げちゃダメだ 逃げちゃダメだ 逃げちゃダメだ" },
{ name: "アスカ", lines: "あんたバカ?" },
{ name: "レイ", lines: "あなたは死なないわ…。私が守るもの。" }
];
なんのキャラでしょうか。
var name = arrayOfObjects[i]["name"];
var message = arrayOfObjects[i]["lines"];
が名前とセリフになるので、メッセージ内に含まれるようにします。
※ iはランダムで生成した数字が入るようにしています。
var content = name + '\n' + message;
改行は\nを使います。
送信する
先ほど記述したドキュメントに沿った形で送信用の関数を用意します。
GAS画面上部に実行ボタンがあるので用意した関数が設定されていることを確認してボタンを押します。
実行。
届きました!
GAS側のトリガータブで関数の実行時間も設定できます。
最後に
私は他に、お天気情報を取得してラインにメッセージを送るようにしています。
実行の時間帯を設定できたりするので、朝の出勤前や夜の寝る前とかに設定するといいかもです。
なくても大丈夫だけど、あれば生活の質も上がるものだと思うので非常に助かってます。
もっと他にQOLを高められるサービスを探していこうと考えています。
梅雨の季節(執筆時点)は、どんよりとした空模様や湿度の高さから、少し気分が滅入りがちな時期かもしれませんが、元気出して頑張ります。
株式会社ウイングドアは福岡のシステム開発会社です。
現在、私達と一緒に"楽しく仕事が出来る仲間"として、新卒・中途採用を絶賛募集しています!
ウイングドアの仲間達となら楽しく仕事できるかも?と興味をもった方、
お気軽にお問い合わせ下さい!