" "

作品詳細

NFC-Checkin+LOCA

作品を見る

NFC-Checkinは、NFCを用いた入室管理を可能にするシステムです。ICカードをリーダーにかざすだけで入室処理が完了します。利用にはSUICA、ICOCAなどの交通系カード、免許証、学生証、スマートフォンなど、種類に限らずあらゆるICカードを統一的に扱うことができます。 またNFC-Checkinの機能を拡張するLOCAというプラグインを準備しました。これはNFC-Checkinで利用しているICカードにローカルな電子マネー機能を付与し、ユーザ間の面倒な金銭のやり取りを排除するためのプラグインです。 入室や支払いのログはNFC-CheckinのDBに保存されます。これらのデータは、NFC-Checkinが提供するwebアプリケーションからアクセスし、追加、変更が可能です。NFC-Checkinが設置された場所のローカルネットワーク内ならどの端末からでもwebアプリケーションにアクセスできます。

制作者の情報
作者(チーム名)
mpk (@mpppk)
エントリー済みの賞
技術的なアピールポイント
NFC-Checkinの技術的ポイントは3点あります。
低いサーバ負荷、軽快な動作、リアルタイムな画面の反映です。
本システムはLinuxマシンを必要としますが、物理サイズ や導入費用、ランニングコスト等の観点からraspberry piを推奨しています。ただし、スペックはあまり高いとは言えないので、様々な対策を行っています。
まずサーバサイドには動作が軽いとされるNode.jsを利用し、負荷を低減しています。
webアプリケーションはSPAとして構築し、サーバとやり取りする情報量を減らすとともに、ネイティブアプリ並みの高速な画面切り替えを実現しています。
クライアントサイドにはMVCフレームワークとしてhifiveを導入し、処理を極力クライアント側で行いつつ、保守性を保てるようにしました。
また、本システムではwebsocketを利用して、ICカードをかざすという物理的な動作をトリガーにして画面を更新します。websocketによりhttpレスな通信が可能になり、サーバ負荷をさらに低く抑えます。
企画上のアピールポイント
私は現在、友人3人と一軒家でシェアハウスをしています。家が広いので、友人を呼んでよくイベントや飲み会をしているのですが、各イベントにかかったお金を、それぞれ誰に請求すればいいのか分からなくなりがちです。
ところで、私が所属する研究室にはコアタイムが存在し、遅刻回数が一定数を超えると掃除のペナルティが課されます。いい制度なのですが、いかんせん研究室への到着時間の管理が面倒で、このルールは形骸化の一途を辿っています。
私はこのように「誰が、いつ来たのか」が分かるだけで解決する問題が、実は他にも世の中にたくさんあるのではないかと考えました。
しかし、入室の度に面倒な操作が必要だと、結局誰も使いません。そこで「元から持っているICカードをかざすだけ」でこれを実現したのが本システムです。ついでに、シェアハウスの冷蔵庫に入っているビールや、イベントの代金、研究室に置いてあるお菓子もICカードで購入・販売できる機能も付けました。
これからはNFC-Checkinが、あなたのICカードに追加の価値を与え、より便利で楽しく、豊かな暮らしを実現します。このアイデアに興味を持って頂けたら幸いです。
自由記入欄
githubからcloneして頂いたリポジトリには、DBに既にサンプルデータが入っています。
パスワードは設定していませんので、どのユーザでもログインして挙動を試してみることができます。ユーザ名を"Yuki"にしてログインしてみてください。(ただし、パスワード欄には適当な文字列を入れてください)