出退勤記録をAirMacのログで

出退勤の記録を自動取得するため、日常携帯しているモバイル機器の部署内のWi-Fiへの接続状態を利用する。

モバイル機器のMACアドレスの調査

AirMacのログから所有のモバイル機器の接続情報を抜き出すため、MACアドレスを調べる。iPhoneでは下でわかる。

設定 > 一般 > Wi-Fiアドレス

Wi-Fiのログの取得と成形

ログはサーバに保存されている。ここから自分のモバイル機器の接続情報だけを抜き出す。

ファインダーの「サーバーへ接続…」で(ログの記録されているボリューム)をマウントし、(ログのファイル)をデスクトップにコピーする。

ターミナルを起動し、次の2つのコマンドを順に実行する。「Wi-Fiアドレス」や「ログのファイル名」は適切なものと置き換えること。あらかじめ、「メモ」アプリで編集しておいて、ターミナルにコピペするとよい。

cd ~/Desktop/
grep -i .*ssociated.*Wi-Fiアドレス ログのファイル名 | sed -e 's/<133>1 //g' | sed -e 's/T/ /g' | sed -e 's/+09:00.*80211: /,/g' | sed -e 's/ with.*//g' > mylog.csv

デスクトップにできた「mylog.csv」をNumbersやExcelで開く。

システムの設定

システム構築の状況を記録しておく。

Syslogサーバの準備

AirMacのログを集めるために、Syslogサーバを設置した。既存のQNAP NASを利用し、QTSで下の項目にチェックを入れた。

コントロールパネル > アプリケーション > Syslogサーバ > Syslogサーバ
AirMacからSyslogサーバへのログの書き出しの設定

部署内に旧機種の平たい形のTime Capsuleが3台あり、それぞれSyslogサーバにログを書き出すように設定した。

AirMacユーティリティ5.6.1をダウンロードし、システム条件(Mac OS X 10.5.7 – 10.6.8)の合うMacにインストールした。(Windows版もある。Windows 7 に対応)

設定するTime Capsuleを選択し、「手動設定」をクリックし、現れたツールバーからギアの形の「詳細」をクリックした。

「Syslog 書き込み先アドレス」に先に準備したSyslogサーバのIPアドレスをいれ、「Syslog レベル」に「6 – 情報」を選択し、「アップデート」をクリックした(Time Capsuleが再起動)。

バグ

  • タイムアウトまでの間隔のため、切断の時刻は離室の時刻より少し遅れる。
  • Wi-Fiの接続・切断を出勤・退勤に対応づけるには一定の前提を要する(出退勤が大体一定している、モバイル機器を持ち忘れない、など)。
  • 現行のAirMacにSyslogを使えるかどうかの情報は見つからなかった。
  • 現行のAirMacユーティリティ6.xではSyslogの設定はできない。
  • AirMacユーティリティ5.6.1では現行のAirMacは設定できない。
  • AirMacユーティリティ5.6.1は現行のOS Xでは使用できない。
  • 現行のAirMacでもログ書き出しできるかもしれない