ブロックチェーン・AI・システム開発の株式会社INDETAIL

GAS × LINE Notifyで電車の遅延情報を通知するbotを作ってみた。

2018.04.11
toshi

こんにちはtoshiです。
突然ですが、皆さんは通勤や通学の手段は何を使用していますでしょうか?
私はJRを利用しているのですが、運行情報を確認せずに家を出ることが多いので、
いざ駅に着いてみると電車が遅延しているということが多々あります。

今回はそんな自分のためにLINE NotifyとGoogle Apps Scriptを使用して、
電車の遅延情報を通知するbotを作成してみたいと思います。

LINE Notifyのアクセストークンを取得する

LINE Notifyを利用するにはLINE Notifyのアクセストークンを取得する必要があります。
LINEのアカウントを使用し、LINE Notifyにログインしてマイページに移動します。

マイページに移動したら「トークンを発行する」ボタンを押します。

トークン名と通知を送信するルームを選択し「発行する」ボタンを押します。
トークン名は通知内に表示されるので「運行情報」と入力しました。

トークンが発行されますので控えておきましょう。

LINE Notifyアカウントをbotで通知したい部屋に追加する

LINE Notifyで通知を行うには通知を行いたい部屋にLINE Notifyアカウントを追加する必要があります。
トークン発行時に指定した部屋にLINE Notifyアカウントを追加しましょう。

Google Apps Scriptでスクリプトを作成する

以下のように遅延情報を取得するスクリプトとLINE Notifyにリクエストを送信するスクリプトを作成します。
遅延情報は鉄道遅延情報のjsonから取得させていただいています。

スクリプトを実行する

スクリプトが完成したので試しに実行してみます。

LINE Notifyから通知がきていることが確認できました!
ちょうど実行した4月10日9時33分時点では、設定した路線で遅延が起きていました。

定期実行設定をする

スクリプトを作成しただけでは手動で実行する必要があるので、指定した時間に定期実行するように定期実行設定を行います。
Google Apps Scriptの「現在のプロジェクトのトリガー」にて、
週タイマーで毎週月曜日から金曜日の午前5時〜6時の間に、自動実行されるように設定します。

まとめ

いかがだったでしょうか。
今回は、電車の運行情報を取得していましたが、
OpenWetherMapなどを利用して天気情報なども取得可能かと思います。
他にも色々応用できるかと思いますのでぜひ皆さんも試してみてください!

<<参考文献>>
Google Apps Scriptで毎朝チャットワークに電車の遅延情報をプッシュ通知する
Google Apps ScriptからLINE NotifyでLINEにメッセージを送る

toshi

職種 : エンジニア 2016年新卒社員。ネット小説漁りが最近のマイブーム。

「いいね」ボタンを押すと、最新情報をすぐに確認できます。