NEWS
[Neuer Adapter] Nuki
-
Hi,
einen Adapter programmieren würde ich selbst nicht hinbekommen,
aber vielleicht helfen ja meine Infos:
Habe auf der Nuki-Bridge folgenden Callback programmiert:
> {"callbacks": [{"id": 1, "url": "[http://iobroker:8082/setValueFromBody/javascript.0.nuki](http://iobroker:8082/setValueFromBody/javascript.0.nuki)"}]}
Dieser übergibt der HTTP-Post den Status des Schlosses an die Variable javascript.0.nuki (habe ich vorher händig als String im iobroker angelegt)
Voraussetzung dafür ist, dass der simple-Web-Adapter aktiviert ist.
Im iobroker habe ich dann ein Skript erstellt, welches den String nimmt, und den Status in die Variable javascript.0.nukistatus schreibt (als Zahl)
Damit kann ich das Schloss noch nicht steuern, ich habe allerdings den Status fest im iobroker drin (was mit persönlich erstmal ausreicht)
` > on({id: 'javascript.0.nuki', change: "ne"}, function (obj) {
var state = getState("javascript.0.nuki").val
var zustand = state.slice(31,32)
// console.log("Schlosszustand:" + zustand)
if (zustand==3) {console.log('Nebentür ist offen'); setState("javascript.0.nukistatus",false);}
if (zustand==1) {console.log('Nebentür ist zu'); setState("javascript.0.nukistatus",true);}
}); `
-
hmmm Crazy scheint seeeehr lange Wochenenden zu haben.
-
Hi,
den Adapter kann man ja mittlerweile installieren, aber bei mir macht er nichts und konfigurieren kann ich da auch nichts. Habe mir daher ein kleines Javascript geschrieben, das mit die Werte von Nuki ausliest, und mittels http-Request kann man das Nuki ja auch problem über ein Blockly steuern.
Legt euch einfach ein neues Javascript an, importiert das Script, tragt eure IP:Port der Bridge ein, den ID und das Token, und schon habt ihr im IOBroker die Werte von Nuki.
// Nuki Lockstate script by BerndHassenzahl@gmail.com // // erstmal alle Variablen definieren var request = require('request'); // hier braucht Ihr die IP eurer Bridge, die nukiID und das Token, ihr findet beides nur in der App, unter Verwaltung/Bridge..Hab mir n Wolf gesucht..( Developer auf ON! ) var url = 'http://IPEurerBridge:8080/lockState?&nukiId=xxxxxxxx&token=yyyyyyy'; var state; var stateName; var battery; var success; var idstate = 'Nuki.lockstate.state'; var idstateName = 'Nuki.lockstate.stateName'; var idbattery = 'Nuki.lockstate.batteryCritical'; var idsuccess = 'Nuki.lockstate.success'; // die objekte in IOBroker anlegen, zu finden unter javascript.0.Nuki.lockstate createState('Nuki.lockstate.state', { name: 'state', }); createState('Nuki.lockstate.stateName', { name: 'stateName', }); createState('Nuki.lockstate.batteryCritical', { name: 'batteryCritical', }); createState('Nuki.lockstate.success', { name: 'success', }); // jetzt die Funktion zum auslesen der json function lockstate() { request(url, function ( err, state, body){ if (err) { log("Fehler aufgetreten: " + err); } else { var obj = JSON.parse(body); // zuordnen der Variablen state = obj.state; stateName = obj.stateName; battery = obj.batteryCritical; success = obj.success; // Setzen der Werte in die Objekte setState(idstate, state); setState(idstateName, stateName); setState(idbattery, battery); setState(idsuccess, success); } }); } // und das machen wir jede Minute... schedule('*/1 * * * *', lockstate);
Das Script läuft bei mir jetzt seit 2 Monaten, das Nuki kann ich somit per Button, NFC, und natürlich per Alexa steuern.
-
Hi,
ich versuche mich auch seit einiger Zeit an der Erstellung eines Nuki-Adapters (https://github.com/smaragdschlange/ioBroker.nuki). Da es mein erster Adapter ist, ich mit JavaScript bisher noch nichts gemacht hab, und ich immer mal nur so für ein bis zwei Stunden in der Woche Zeit finde, geht es auch bei mir seeehr langsam vorwärts.
Ich stocke gerade bei der Einrichtung eines HTTP-Servers, wie Bluefox angeregt hatte. Ich denke, der Adapter könnte damit einen ersten nutzbaren Stand erhalten. Ich hab versucht, aus der simpleapi.js des Simple-API-Adapters schlau zu werden, bin aber etwas verloren.
Kann mich jemand hier vielleicht auf die richtigen/notwendigen Code-Schnippsel stoßen?
Danke im Voraus und Grüße,
Sven
-
Ich habe es jetzt per Javascript und Nuki Adapter eingefügt.
Bei Objekten bekomme ich auch angezeigt im welchen status Nuki ist.
Ich möchte über VIS erst einmal den status sehen geöffnet oder geschlossen.
Habe jetzt einiges versucht aber irgendwie klappt es nicht.
Hat jemand einen Tipp?
4720_nuki1.jpg
4720_nuki2.jpg -
Hallo thexbrain,
mein Adapter (https://github.com/smaragdschlange/ioBroker.nuki) ist zwar immer noch in Entwicklung, funktioniert bei mir aber schon sehr gut. Ich habe damit über ioBroker eine Verbindung zu meinem Fingerabdruck-Scanner hergestellt und öffne/schließe meine Haustür damit. Der Callback funktioniert nun auch einwandfrei, sodass immer der aktuelle Status angezeigt wird, selbst, wenn die Tür manuell geöffnet wird. In vis hab ich ihn noch nicht ausprobiert, aber die Objekte dürften sich dort jetzt abbilden lassen, da ich nun kompatible Statuseigenschaften nutze.
Ich hoffe, dass Du und vielleicht auch andere den Adapter nützlich finden, und würde mich sehr über Testergebnisse und Verbesserungsvorschläge freuen. Allein findet man ja doch meistens nicht jeden Bug…
Gruß,
Sven
-
Nuki hab ich heute bestellt und sobald es angekommen ist installiere ich deinen Adapter. Ich hab mir auch das https://nuki.io/de/shop/nuki-keypad/ bestellt. Ich mach Meldung sobald ich Fragen habe.
-
Hi,
ich hab ein Nuki seit März im Einsatz, und mit Svens Adapter funktioniert es super zuverlässig!
Habe mir ein NFC - NodeMCU Modul gemacht:
( genauer, PN532, per I2C an WemosD1Mini, Software ESPEASY R1.48, sendet per MQTT an iobroker, Gehäuse dafür selbst gedruckt und der Wemos ist in der neben der Tür vorhandenen Stromverteilung verschwunden, nur das Gehäuse mit dem PN532 hab ich unten drunter geklebt, so fällt es nicht so auf, ist aber gut zugänglich)
Damit steuere ich vom iobroker aus dann das Nuki ( am Anfang per http-request, jetzt über den Adapter). Die NFC-Token gibts günstig aus China als Chipkarte oder Schlüsselanhänger.
Was noch ansteht, ist das in VIS einzubinden, habs zur Zeit nur im Habpanel.
-
Hi,
hab mittlerweile auch den Adapter von smaragdschlange installiert (inkl. Callback), funktioniert einwandfrei, vielen Dank.
Will mir in nächster Zeit ein zweites Nuki-Schloss dazu installieren, das sollte ja kein Problem sein, oder?
VG
-
Ich hab den Adapter gerade eben installiert, hab mich zuerst selber mit dem Token vera…. Konfiguration wurde nicht gespeichert. Aber beim zweiten Versuch hats geklappt. Jetzt stell ich mir noch pro Stockwerk einen Xiaomi Taster hin mit dem ich die openAction starte und Sesam öffne dich legt los. Ich hab leider keine Tür mit einem elektrischen Türöffner.
Jetzt warte ich auf November bis das Keypad kommt und dann kann ich von außen ohne Handy die Tür öffnen. Und vielleicht wird die Eingabe am Keypad auch im Adapter angezeigt... Falls sowas überhaupt möglich ist.
Vielen Dank für den Adapter!
-
ich hab mir mit einem xiaomi taster
Schalter Wireless Xiaomi für Klimaanlage/Projektor/Ventilator/ORIGINAL SMARTP… https://www.amazon.de/dp/B079L4H3BM/ref ... QBbVCN7JWR via @amazon
und einem Script auch einen Zugang gemacht, wenn ich in einer bestimmten Reihenfolge und zeitlichen Abständen Einfachklick, Doppelklick und Longclick betätige, dann öffnet der iobroker das Nuki
... aber fragt nicht, ist wirklich nur für den Notfall, wenn man garnix dabei hat..
-
ich hab mir mit einem xiaomi taster
Schalter Wireless Xiaomi für Klimaanlage/Projektor/Ventilator/ORIGINAL SMARTP… https://www.amazon.de/dp/B079L4H3BM/ref ... QBbVCN7JWR via @amazon
und einem Script auch einen Zugang gemacht, wenn ich in einer bestimmten Reihenfolge und zeitlichen Abständen Einfachklick, Doppelklick und Longclick betätige, dann öffnet der iobroker das Nuki
... aber fragt nicht, ist wirklich nur für den Notfall, wenn man garnix dabei hat.. `
Das ist cool.
Kannst du mir das Script zur Verfügung stellen?
-
@ilovegym du schreibst doch von NFC Adapter? Oder ist der Xiaomi ein Backup?
Sollte das Nuki Keypad im iobroker funktionieren wären darüber noch andere Dinge machbar. Bin gespannt was smaragdschlange dazu sagt.
-
Ja, habe und nutze zu 80% den NFC Zugang, ansonsten die App oder den Xiaomi Taster.
Ich glaube nicht, dass Nuki das Keypad so gestalten wird, dass man es in iobroker "sehen"-nutzen kann… wird wie bei der App, einfach ein Bluetooth-Zugriff direkt auf das Schloss sein. Damit bekommt der iobroker nix davon mit.
Sonst muesste ja jeder der das Keypad hat, auch eine Bridge haben...
-
Hi,
schön zu sehen, dass der Adapter genutzt wird. Ich arbeite derzeit daran, alternativ zum Callback auch eine Interimsabfrage des Status einzubauen. Außerdem sollen alle im LAN vorhandenen Bridges automatisch erfasst werden.
Ich hab den Adapter so gebaut, dass automatisch alle mit der Bridge verbundenen Nuki-Schlösser erkannt und als Channels (ab Version 0.2.0 als Devices) zur Verfügung gestellt. Wenn also noch ein weiteres Nuki installiert wird, sollte eine neue Instanzierung (Empfehlung: Instanz löschen und dann neu erstellen) ausreichen, um beide Nukis bedienen und überwachen zu können. Leider besitze ich nur ein Nuki und wäre über Erfahrungsberichte mit mehreren Nukis dankbar.
Das Keypad hab ich derzeit noch nicht, weil ich, wie gesagt, einen Fingerprint-Sensor mit dem Nuki im Einsatz habe. Aber ich denke auch, dass das Keypad nicht anders in der Bridge behandelt werden wird, als z.B. das Handy oder ein FOB. Würde mich jedenfalls überraschen, denn das wäre ja u.U. ein Sicherheitsleck.
Ob die Bridge allerdings das Keypad als Gerät und Nuki dafür eigene API-Befehle zur verfügung stellt, wüsste ich auch zu gern…das wäre eine tolle Erweiterungsmöglichkeit (z.B. Schaltung der Alarmanlage durch bestimmte Codes).
Spannend...
Gruß,
Sven
-
Unter den Details wird als Kommunikation Bluetooth 5.0 genannt. Somit ist eure Vermutung sehr sicher dass das Keypad nicht im iobroker erscheint.
-
Hi,
der Nuki-Adapter ist inzwischen im (Latest-) Repository von ioBroker. Um ihn in das Stable-Repository aufnehmen zu können, benötige ich Tester und Feedback. Ich hab den Adapter daher https://forum.iobroker.net/viewtopic.php?f=20&t=17465 vorgestellt und hoffe auf weitere Nutzer, die dann auch entsprechend Rückmeldungen eintragen.
Vielen Dank!
-
Ab und an reagiert mein Nuki nicht und gibt folgende Meldung:
nuki.0 2018-10-10 16:13:04.598 error null
So wie es aussieht bin ich zu schnell mit meinen Actionen. Es dauert ein paar Sekunden bis der Status nach einer Action an iobroker übergeben wird. Schalte ich in dieser Zeit bevor der Status aktualisiert und wurde dann geht es nicht.
-
Hi,
ja, das liegt daran, dass der Webserver der Nuki Bridge nicht so schnell hintereinander Befehle verarbeiten kann. Ich hab versucht, durch Delays die Adapter-internen Aufrufe so zu verzögern, dass die Null-Responds nicht mehr vorkommen. Wenn man natürlich manuell schnell hintereinander Aktionen triggert, bekommt man einen Null-Respond. Das Verhalten liegt aber wie gesagt an der Nuki Bridge. Ich könnte höchstens versuchen, nach einer Aktion für ca. 2-3 Sekunden die Eingabe von weiteren Aktionen komplett zu sperren, um das zu verhindern…ich hielt das aber bisher nicht für nötig, da man ja am Nuki selbst auch nicht so schnell schließt.
-
Und einem Script auch einen Zugang gemacht, wenn ich in einer bestimmten Reihenfolge und zeitlichen Abständen Einfachklick, Doppelklick und Longclick betätige, dann öffnet der iobroker das Nuki `
Würdest du es uns zur Verfügung stellen?