Webエンジニア兼インフラエンジニアの西村です。
弊社ではグループウェアのサイボウズを導入しており、文書管理やスケジュール管理をおこなっています。
スケジュール管理の問題
スケジュール管理では、会議室などの設備予約も一緒におこなえるようになっているのですが、会議室の予約については、以下のような問題があります。
- 日程/時刻を間違って予約
- 間違って違う会議室を予約
- 予約の解除忘れ(特に定期的な会議予定)
- 会議が長引いたため、延長して利用
- 空いてたから(予約せずに)利用
このように、実際の予約とこのように、実際の予約と利用状況が異なることがあります。
※特に最近はコロナウイルスの関係でオンラインMTGに切り替えた際、会議室の予約解除を忘れるケースが目立っています。
「実際の利用状況がもっと簡単に分かれば良いのにね。」
という弊社社長のつぶやきがあったとか、なかったとか・・・
プロトタイプを作ってみました!
ということで、早速プロトタイプを作ってみました!
材料は以下の通りです。
- M5Stack
- M5Stack用PIRセンサユニット
- kintone
- Google Apps Script
- スプレッドシート
システム構成は以下の通りです。

M5Stackに取り付けた人感センサーが人の動きを検知した際、kintoneにデータ登録をおこないます。
※人の動きを検知したか分かりやすくするため、M5Stackにも少し工夫をしています。

Google Apps Scriptにて定期的にkintoneに登録されたデータを確認し、直近5分以内に検知データがあった場合は「利用中」を、検知データが存在しない場合は「空き」でスプレッドシートの更新をおこないます。
※スプレッドシートには、臨時でGoogle Apps Scriptをコールするボタンを用意してみました。

プロトタイプでは、M5Stack→kintoneの通信はWi-Fiを利用していますが、IoT機器のセキュリティ脆弱性を攻撃され、社内ネットワークに侵入されるリスクを回避するため、4G回線を利用してデータのアップロードをおこなうバージョンアップを実施予定です。