アイドル現場情報をGoogleカレンダーから集約するWebアプリを作った

背景

非ドルヲタの方々は知らないと思うけど、世の中にはものすごい数のアイドルが存在しており、毎日どこかで誰かが歌って踊って頑張っている。
笑顔と元気を届けてくれるアイドルちゃんたちはみんな成功して欲しいし応援したいし会いに行きたいけど、そもそもそれらの「アイドル現場」の予定(時間・場所)を把握するのが大変。
そういったアイドル現場情報を得やすいように、無銭カレンダーに代表されるようにGoogleカレンダーを利用してそういった現場情報をまとめてくれているものがあったりする。あとは各アイドルさんのホームページなどでスケジュールを確認する必要があるけれど、アイドル運営さんの方でもライブ予定などをGoogleカレンダーに入れて公開しているところが増えてきていたりする。

そんな流れから、数日前にあるヲタさんが
アイドル関連のGoogleカレンダーまとめ : ガリバー日常記
という記事を書いてくださった。各地域のライブ・イベント情報、各アイドル運営さんの公開しているGoogleカレンダーなどのまとめ。

何十個ものアイドル関連カレンダーがあり、これらをすべて登録すれば多くのアイドル現場情報を逃さずにキャッチできるかも知れないけど、情報量がすごいことになってしまうし、あまり見やすくない。また、例えば地方のライブなんかは出張や旅行などで訪れたときにだけチェックできればいいのに、わざわざ登録するのもアレだったり。

で、作った

上記記事にまとめられている各カレンダーから直近のイベントを拾い集めて、時系列に表示する。地域ごとに関連していそうなものだけに絞ったり、検索ワードや情報源を指定して絞り込んだり。

これを見れば、ビックリするくらいたくさんのライブやイベントが各所で行われているのが分かると思う。

中身

GoogleAPIからカレンダーのデータを取得する方法については以前に調べた。
Heroku上からService Account認証でGoogle APIにアクセスする - すぎゃーんメモ
これをつかって対象となるカレンダーのイベントデータを定期的に取得し、データベースに突っ込んで、あとはイベント開始時刻でソートして時系列に表示するだけ。
WebアプリはPadrino(Sequel & Slim) on Herokuで、schedulerだけ利用して1日ごとにデータ取得。
Twitter bootstrapのresponsive CSSのおかげでスマートフォンでも快適に見られる(…はず。自分のiPhoneでしか確認してないけど)。
検索系はゴリゴリと極悪なクエリを作りまくるけれど、どうせ利用者はそんなにいないしまぁ大丈夫かな…

https://github.com/sugyan/idol-calendar

総括

ということで、すべてが網羅されているわけではないけれど多くのアイドル現場情報を把握しやすくなった。便利。
…ただ、各カレンダー共通のフォーマットでデータが入力されているわけではないので精度に限界が出てくる。参考までに利用していただければ、というくらいかなぁ。

各アイドル運営さん、各有志ファンの方々におかれましては、イベント概要・開始/終了時間・場所・詳細をしっかり書いてくださると嬉しいな、と思ったり。またGoogleカレンダーを活用されていないアイドル運営さんもこの機に使い始めてくださると有り難いな、と思ったり。

各イベントの開催場所も、住所とか緯度経度まで特定できる程度に詳細に入力されるようになったら今度はそれを利用して「スマートフォンからアクセスした際に現在地を取得して半径数キロ以内で行われる直近のイベント一覧」とかの絞り込みもできるようになりそうで夢が広がりんぐ。
あとはSNS連携して各イベントに行きたい/参戦予定とかを投票するようにできる機能とかつけて「注目のイベント一覧」みたいのも出来るといいなぁ…