私はこのようなものを実装したことはありませんが、他の用途で同様のものを実装しました。入力したユーザーに基づいて家の一部を自動化するための質問もここで行いました。OpenHabとNetworkHealthバインディングを使用して実装できます:https : //github.com/openhab/openhab/wiki/Network-Health-Binding。
ユーザーごとに異なるハードウェアトークンを発行する必要はなく、携帯電話のWiFiを常にオンにしておく必要があります。次のようにOpenHabに保存するには、電話がネットワークで持っているIPを知っている必要があります。
Switch Phone_WIFI "Phone 1" (Status, Network) { nh="192.168.1.101" }
Switch Phone2_WIFI "Phone 2" (Status, Network) { nh="192.168.1.102" }
OpenHABの詳細:バインディングは、特定のデバイスとそのIPアドレスの接続ステータスをチェックし、次のようなルールを使用できます。
rule "Allowed user home - Unlock Door"
when
Item Phone_WIFI received update ON
then
// turn on all lights
postUpdate(Door_lock, OFF)
end
そして、彼らが近接範囲を離れるときのための同様のコード
Item Phone_WIFI received update OFF
受け取った更新OFFコードをまだテストしていないため、動作するかどうかは100%確認できていません。いくつかの異なる方法(BluetoothまたはWiFi)では範囲が希望よりも長いまたは短い場合があるため、近接性と範囲が問題であることにも注意してください。ドアがロック解除されないように、ルーターの配置またはBluetoothデバイスを非常に正しく配置する必要があります。あなたはまだ私道に入っています(それがあなたにとって問題でない限り)。