FileMaker 16の新機能 ジオフェンス機能:「領域監視」スクリプトと関数
2017年08月24日 12:00 PM
FileMaker 16以前
新しいスクリプトステップ[領域監視スクリプトを構成]は
指定された領域をiOSデバイスが出入りするときに自動的にアクションを実行することができます。(最大20領域)
※FileMaker GoでのスクリプトステップのためiPhone・iPadでは利用できますが、PCでは利用できません。
領域の指定は、iBeaconもしくはジオフェンスで設定ができます。
iBeaconは電波を発信する機械で、任意の場所に置いて使用します。
ジオフェンスは、ある場所を中心とした半径○メートルという仮想的な領域のことです。
緯度・経度を指定するだけで何も用意する必要はなく、例えば以下の方法で取得することができます。
・実際にその場に行きLocation関数を実行する
・google mapで確認する
イメージ:ジオフェンス
倉庫の入り口にきたら、など指定領域が狭い場合はiBeacon。
会社の近くにきたら、といった広い領域の場合はジオフェンスが向いているのではないでしょうか。
設定方法
■[領域監視スクリプトを構成]スクリプトステップ
監視は、iBeacon・ジオフェンス・消去が選択できます。
指定は以下の通りです。
監視 | 指定 |
iBeacon | 名前、スクリプト、UUID、メジャー、マイナー |
ジオフェンス | 名前、スクリプト、緯度、経度、半径(m) |
削除 | 名前 ※指定がない場合、すべての監視が停止 |
[名前] 監視ごとに固有の名前を指定する必要があります。既存の監視の名前を指定すると、既存の監視はキャンセルされて同じ名前の新しい監視が構成されます。
[スクリプト] 領域を出入りしたときに実行したいスクリプトを指定
[UUID] iBeaconに設定されている値を指定
[メジャー] [マイナー] UUIDと同じくiBeaconに設定されている値を指定。
※指定がない場合、同じUUIDを持つiBeaconすべてに対し動作することになります。
[半径] 単位はmです。
(0.5では反応しなかったので、1以上を設定する必要がありそうです。)
注意点
https://fmhelp.filemaker.com/help/16/fmp/ja/#page/FMP_Help%2Fconfigure-region-monitor-script.html
上記のヘルプに記載されていますが、特に注意すべき点についてご説明します。
1.iOSデバイス側で、Bluetoothと位置情報サービスの設定をオンにする必要があります!
(さらっと読み流してしまい、引っかかりました・・・。オフだと監視が実行されません。)
オン/オフはFileMaker側では確認できないため、特に注意が必要かと思います。
2.指定スクリプトは、監視を開始した際に必ず実行されます。また、出入りしたときに指定スクリプトが毎回動作します。
例えば、上の図で赤枠の範囲内に入ったときにメッセージを出したいとします。
監視を開始した際、地点Aと地点Bどちらにいても、必ず指定スクリプト「メッセージを表示」が実行されます。また、赤枠の領域を出た時と入った時、どちらも指定スクリプト「メッセージを表示」が実行されます。
そのため、指定スクリプト「メッセージを表示」内で、領域の内外どちらかにいるのかを取得し、動作を分岐させる必要があります。
領域の内外の判断はGet( 領域監視イベント ) 関数で取得することができます。
※Goがバックグラウンドで実行されていた場合は、フォアグラウンドに戻ったあとに通知がきます。
■Get(領域監視イベント) 関数
[領域監視スクリプトを構成] スクリプトステップで指定されたスクリプトが実行される原因となったイベントを返します。
< 領域監視スクリプトを構成で指定した[名前] >
< タイムスタンプ> ; < 1か0(領域内:1 領域外:0)>
例えば、[領域監視スクリプトを構成](名前:1)を赤枠の範囲で設定すると、赤枠を出入りした際に、必ず指定スクリプト「メッセージを表示」が実行されます。
指定スクリプト「メッセージを表示」の中でGet(領域監視イベント)関数を実行すると、以下の図の値が取れます。
サンプルファイルを作成したのでご参照ください。
ダウンロードはこちら→nyutaishitu.fmp12(652KB)
~使用方法~
入退室を管理するカスタムAppです。一覧に登録したiBeaconをモニタリングします。
UUID、メジャー、マイナーを入力してファイルを開き直してください。
iBeaconをONにして近づいたときに自動で時刻を記録します。
もう1度記録を取る際は、電波が届かない範囲まで離れ、約40秒以上あける必要があります(弊社環境)。
対応デバイス:iPad
対応バージョン:FileMaker Go 16 以上
レコード制限:監視は最大20領域までのため、登録者を20人までに制限しています。