チームのみんなが使っている電車の遅延情報を毎朝チャットワークに通知する

★気に入ったらシェアをお願いします!


みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

前回、Google Apps Scriptで電車の運行情報をチャットワークに送る方法をお伝えしました。

Google Apps Scriptで毎朝チャットワークに電車の遅延情報をプッシュ通知する
毎朝、家を出る時間に通勤で使用する路線の運行情報がチャットワークに送られてきたら便利ですよね。今回はGoogle Apps Scriptで電車の運行情報をチャットワークに送る方法についてお伝えします。

毎朝チャットワークに指定した電車の遅延情報が通知されますから、駅についたときに「遅れている…」とはじめて気づくなどといったことも避けられます。

ですが、前回のスクリプトでは一つの路線しか判断ができませんでした。乗り換えがある人は困っちゃいますね。

今回はスプレッドシートに路線リストを用意して、その全ての遅延情報についてチャットワークに送るように変更をしていきたいと思います。

ちなみに、これを使えばチーム全員の電車遅延情報もまとめて通知するなどといったことも可能ですね。

では、早速行ってみましょう!

スポンサーリンク

前回のおさらい:一つの路線の遅延情報をチャットワークに送る

前回作成したスクリプトはこちらです。

7行目で鉄道遅延情報のjsonにHTTPリクエストを送りレスポンスをJSON形式で受け取っています。

鉄道遅延情報のjsonには遅延のあった路線情報のみ含まれていますので、その中で

  • name:日比谷線
  • company:東京メトロ

が含まれて入ればそれについて通知、そうでなければ遅延情報がないと送ります。

詳しい解説は前回の記事もご覧下さい。

Google Apps Scriptで毎朝チャットワークに電車の遅延情報をプッシュ通知する
毎朝、家を出る時間に通勤で使用する路線の運行情報がチャットワークに送られてきたら便利ですよね。今回はGoogle Apps Scriptで電車の運行情報をチャットワークに送る方法についてお伝えします。

スプレッドシート上の路線についての遅延情報をチャットワークへ通知

複数の路線について遅延情報を通知するために、リストをスプレッドシートにまとめたいと思います。

このようなリストです。

スプレッドシートの路線リスト

nameとcompanyは、鉄道遅延情報のjsonと同じ表記を選ぶ必要があるので注意下さい。

スクリプトの流れ

作るスクリプトの流れとしては

  1. 電車遅延情報をJSON形式で取得
  2. シートとその最終行またシートのデータを取得
  3. シートの全ての行について
    1. nameとcompanyを取得
    2. json内の全てのオブジェクトについて
      • nameとcompanyが一致していれば
        – チャットワークへ送る文字列を「●●が遅延しています」
    3. チャットワークへ送る文字列が初期のままであれば
      • チャットワークへ送る文字列を「本日の遅延はありません」
    4. チャットワークへ文字列を送る

という流れになりますかね。

ちょっと長い印象ですが、シートを使うのでその部分の処理が増えているというくらいです。

実際のスクリプト

スプレッドシートのリストの路線に対してチャットワークにそのすべての遅延情報を送るスクリプトはこちらです。

10~12行がスプレッドシートとその行数、そしてデータを取得する部分です。もうスプレッドシートを扱うときはお決まりのフレーズたちになりつつありますね。

18行と19行で各路線のnameとcompanyを取得して、それと一致するデータがjson内に含まれているかを判定していきます。

実行結果

これらを実行しますと、リスト内の路線に遅延があれば

遅延があった場合のチャットワークへの通知

と表示されますし、そうでなければ

遅延がなかった場合のチャットワークの通知

こちらの表示となります。

まとめ

以上、Google Apps Scriptで複数の路線についてその遅延情報を確認してチャットワークに通知を送る方法についてお伝えしました。

APIで取得できるものは何でもチャットワークに送れます…楽しいですね。

また面白いアイデアを見つけましたらお伝えしたいと思います。

お楽しみに!