ポキオ(@pokiiio)です。
enebular Advent Calendar 2018の12日目を担当させていただきます。
tl;dr
ウイングアークフォーラム2018で発表した内容です。
https://speakerdeck.com/pokiiio/jing-ji-wozhi-meruiot
私は京急が好きなんですが、(中略)、なかなか止まらないので、自分で運行情報を書き換えられるような運行情報ページをenebularのNode-REDで作ってみました。
電車は止めてはいけません
ダメです。
結構エイヤで作ったのでアレですが、ポイントだけかいつまんで説明します。
運行情報データはFirebaseで
嬉しいことに、enebularで使われているNode-REDにはFirebaseノードが標準搭載されていので、これを使わせていただきました。データの読み書きだけでなく、データに変化があったときに、それをトリガーとして別のノードを発火できるので便利です。
運行情報ページはHTTPノードで
HTTPリクエストがあったら、Firebaseに運行情報を問い合わせて、その情報をもとにHTMLをダイナミックに作成して、HTTPレスポンスとして返します。
運行情報データに変更があったときはツイート
鉄道会社のTwitterアカウントでありがちな、運行情報に変化があったときのツイート投稿を、先程のFirebaseノードで実現しています。自分からポーリングしなくていいので、楽ちんですね。
One more thing...
このフローをherokuにデプロイして運用しているのですが、herokuは一定時間アクセスがないとアプリが休止状態に入ってしまいます。それを防ぐために、自分自身の運行情報ページを定期的にGETするようにしています。
さてさて
相変わらずな内容ですみませんでした(笑)
ご乗車ありがとうございました。