nuki

plugin logo

Das Plugin bindet ein Nuki Smart Lock an SmartHomeNG an. Es kann Schließvorgänge auslösen und den Status des Schlosses in Items abbilden. Das Plugin unterstützt drei Betriebsarten, die über den Parameter mode gewählt werden: über die Nuki Bridge, über MQTT oder über beide gleichzeitig.

Voraussetzungen

Für den Bridge-Betrieb (mode 2 oder 3) wird eine Nuki Bridge benötigt, die bereits mit dem/den Nuki Smart Lock(s) gekoppelt ist. Außerdem muss das http-Modul von SmartHomeNG konfiguriert sein, da die Bridge ihre Statusmeldungen über dessen Callback-Mechanismus an das Plugin sendet. IP und Port des Callbacks werden dabei automatisch aus der Konfiguration des http-Moduls ermittelt und können nicht mehr im Plugin selbst gesetzt werden. Der service_user/service_password des http-Moduls wird von der Nuki Bridge nicht unterstützt (kein Basic-Auth) und daher für den Callback ignoriert.

Für den MQTT-Betrieb (mode 1 oder 3) muss MQTT in der Nuki App aktiviert und das mqtt-Modul von SmartHomeNG konfiguriert sein.

Konfiguration

Die Informationen zur Konfiguration des Plugins sind unter Plugin ‚nuki‘ Konfiguration beschrieben.

Item-Attribute

Ein Item muss den type num haben und die Attribute nuki_id und nuki_trigger setzen, um mit dem Nuki Smart Lock verbunden zu werden.

nuki_id ordnet das Item dem jeweiligen Smart Lock zu. Im Bridge-Betrieb wird die ID beim Start von SmartHomeNG (Loglevel INFO/DEBUG) zusammen mit dem Namen des Schlosses ins Logfile geschrieben und ist zusätzlich im Webinterface des Plugins zu sehen. Im MQTT-Betrieb lässt sich die ID mit einem MQTT-Tool wie MQTT Explorer ermitteln, sobald MQTT in der Nuki App aktiviert ist.

nuki_trigger legt fest, welche Information das Item führt. Ein Item kann jeweils nur einen Trigger haben. Über die Nuki Bridge stehen action, state, doorstate (nur Nuki 2.0) und battery zur Verfügung, über MQTT die Entsprechungen mqtt_action, mqtt_state, mqtt_mode und mqtt_battery_critical sowie zusätzlich mqtt_battery_charge_state.

Bei nuki_trigger: action / mqtt_action löst das Schreiben eines der folgenden Werte auf das Item die entsprechende Schließaktion aus (enforce_updates: true wird empfohlen, siehe Beispiel):

Wert

Aktion

1

unlock

2

lock

3

unlatch

4

lock ‚n‘ go

5

lock ‚n‘ go with unlatch

6

full lock (nur MQTT)

Bei nuki_trigger: state / mqtt_state wird das Item bei jeder Statusänderung auf einen der folgenden Werte gesetzt:

Wert

Status

0

uncalibrated

1

locked

2

unlocking

3

unlocked

4

locking

5

unlatched

6

unlatched (lock ‚n‘ go)

7

unlatching

254

motor blocked

255

undefined

Bei nuki_trigger: doorstate / mqtt_mode (nur Nuki 2.0) wird das Item bei jeder Änderung des Türstatus auf einen der folgenden Werte gesetzt:

Wert

Türstatus

1

deactivated

2

door closed

3

door opened

4

door state unknown

5

calibrating

Bei nuki_trigger: battery / mqtt_battery_critical führt das Item den Batteriestatus: 0 = Batterie in Ordnung, 1 = Batterie schwach, sollte bald ersetzt werden. mqtt_battery_charge_state liefert stattdessen den Ladestand der Batterie in Prozent.

Beispiel

MyNukiLockViaBridge:

    MyLockState:
        type: num
        nuki_id: 123456789
        nuki_trigger: state

    MyLockBattery:
        type: num
        nuki_id: 123456789
        nuki_trigger: battery

    MyLockAction:
        type: num
        nuki_id: 123456789
        nuki_trigger: action
        enforce_updates: 'true'

MyNukiLockViaMQTT:

    MyLockState:
        type: num
        nuki_id: 123456789
        nuki_trigger: mqtt_state

    MyLockBattery:
        type: num
        nuki_id: 123456789
        nuki_trigger: mqtt_battery_critical

    MyLockBatteryChargeState:
        type: num
        nuki_id: 123456789
        nuki_trigger: mqtt_battery_charge_state

    MyLockAction:
        type: num
        nuki_id: 123456789
        nuki_trigger: mqtt_action
        enforce_updates: 'true'

Web Interface

Das Webinterface zeigt die konfigurierten Nuki-Items in vier Tabellen: Event-Items (Schlossstatus), Tür-Items (Türstatus, nur Nuki 2.0), Aktions-Items (inklusive einer Auswahlbox, über die eine Schließaktion direkt aus dem Webinterface ausgelöst werden kann) und Batterie-Items. Im Bridge-Betrieb werden zusätzlich Bridge-Token, Callback-URL und die IDs aller über die Bridge gekoppelten Schlösser angezeigt.