Nuki Callback nutzen

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Benutzeravatar
Jailbraik
Beiträge: 429
Registriert: 26.07.2013, 06:53
Hat sich bedankt: 11 Mal
Danksagung erhalten: 2 Mal

Re: Nuki Callback nutzen

Beitrag von Jailbraik » 18.03.2021, 20:29

Guten.

Habe es jetzt " dank Euch " am laufen ( abfrage des Status).

Leider wird mir nur der Status des NUKI - Haustür angezeigt, obwohl ich zwei Nukis habe ( anderer im Keller )." Nur eine Bridge "
Auch wenn ich im Keller öffne oder schliesse, wird der Status nicht geändert.

Könnte man mit der NUKI ID arbeiten ? ( davon habe ich 2 ) siehe hier:

Code: Alles auswählen

[{"deviceType": 0, "nukiId": 469123456, "name": "Haustür", "firmwareVersion": "2.10.8", "lastKnownState": {"mode": 2, "state": 1, "stateName": "locked", "batteryCritical": false, "batteryCharging": false, "batteryChargeState": 50, "doorsensorState": 1, "doorsensorStateName": "deactivated", "timestamp": "2021-03-18T18:48:39+00:00"}}, {"deviceType": 0, "nukiId": 469123457, "name": "Kellertür", "firmwareVersion": "2.10.8", "lastKnownState": {"mode": 2, "state": 1, "stateName": "locked", "batteryCritical": false, "batteryCharging": false, "batteryChargeState": 64, "doorsensorState": 2, "doorsensorStateName": "door closed", "timestamp": "2021-03-18T19:00:27+00:00"}}]


loockstate : Status abfragen (Haustür) " funktioniert wunderbar im Browser, aber nicht in Programmabfrage:
http://192.168.178.12:8080/lockState?nu ... oken=token

Dies funktioniert aber nicht - ( ist die Abfrage falsch, obwohl im Browser funktioniert? )

Code: Alles auswählen

string stdout;
string stderr;

integer anfang;
integer ende;
integer i;

string url="http://192.168.178.12:8080/list?nukiId=461123456&token=token";


system.Exec("wget -q -O - " # url, &stdout, &stderr);
WriteLine(stdout);

anfang=stdout.Find("state");
anfang=anfang+8;
ende=anfang+1;

i=stdout.Substr(anfang,1);

WriteLine(i);

dom.GetObject("Nuki-Kellertuer").State(i);
Jemand ne Idee?

:(
@
Raspberry 4 / Home Assistant / 80 Aktoren /

Benutzeravatar
Jailbraik
Beiträge: 429
Registriert: 26.07.2013, 06:53
Hat sich bedankt: 11 Mal
Danksagung erhalten: 2 Mal

Re: Nuki Callback nutzen

Beitrag von Jailbraik » 18.03.2021, 20:59

Noch eien Frage: Kann ich per CCU einen Schließbefehl senden?

Wenn ich das Haus verlasse und den Alarm scharf schalte, wäre es toll, wenn alle Nukis verriegeln - dann wäre mir die Statusabfrage fast egal.
Hauptsache es ist alles zu, wenn ich das Haus verlasse.

Edit: Habe auch über den Raspi 4 iobroker mit Nuki app am laufen- könnte man eventuell dadrüber machen ?


beste Grüße

jörg
@
Raspberry 4 / Home Assistant / 80 Aktoren /

kalanthes
Beiträge: 9
Registriert: 03.12.2020, 08:59
System: CCU und Access Point
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Nuki Callback nutzen

Beitrag von kalanthes » 23.03.2021, 10:45

ich hab folgendes Programm zum verriegeln:
Nuki_verriegeln.jpg

Code: Alles auswählen

string stdout;
string stderr;

string url="http://<IP>:8080/lockAction?nukiId=<NukiID>&deviceType=0&action=2&token=<TOKEN>";

system.Exec("wget -q -O - '"#url#"'", &stdout, &stderr);

WriteLine(stdout);

Die Taster sind bei mir die virtuellen HmIP-Taster.
Nuki_Taster.jpg

Zum Öffnen der Türe muss im obigen Skript nur action=3 benutzt werden
Zum Entriegeln der Türe muss im obigen Skript nur action=1 benutzt werden
Natürlich auch die prüfenden Systemzustände anpassen ;)

Andre_B.
Beiträge: 3
Registriert: 06.11.2020, 20:32
System: CCU

Re: Nuki Callback nutzen

Beitrag von Andre_B. » 27.03.2021, 12:38

Hallo zusammen,
versuche auch gerade das NuKi zu integrieren und komme leider nicht weiter.
Könntet Ihr mir bitte kurz unter die Arme greifen und mir sagen wo der Fehler liegt.
1.JPG
1.JPG (23.29 KiB) 1482 mal betrachtet
2.JPG
3.JPG
Danke

ueffchen
Beiträge: 176
Registriert: 29.03.2011, 10:35
Hat sich bedankt: 4 Mal
Danksagung erhalten: 13 Mal

Re: Nuki Callback nutzen

Beitrag von ueffchen » 30.03.2021, 22:15

@Jailbreak
Leider wird mir nur der Status des NUKI - Haustür angezeigt, obwohl ich zwei Nukis habe ( anderer im Keller )." Nur eine Bridge "
Auch wenn ich im Keller öffne oder schliesse, wird der Status nicht geändert.
Das Thema wurde hier schon mal diskutiert, aber glaube ich ohne Lösung.
Das Problem ist, dass die Suche nach "state" immer beim ersten Nuki aufhört. Ich habe mir das mal vor ein paar Wochen angesehen, aber keine Idee, wir man von da aus weitersuchen kann.

Ich nutzte Redmatic, da dürfte es einfacher sein mittels JSON zum zweiten Nuki zu gehen, aber für Dich habe ich keine Lösung

ueffchen
Beiträge: 176
Registriert: 29.03.2011, 10:35
Hat sich bedankt: 4 Mal
Danksagung erhalten: 13 Mal

Re: Nuki Callback nutzen

Beitrag von ueffchen » 30.03.2021, 22:24

Andre_B. hat geschrieben:
27.03.2021, 12:38
Hallo zusammen,
versuche auch gerade das NuKi zu integrieren und komme leider nicht weiter.
Könntet Ihr mir bitte kurz unter die Arme greifen und mir sagen wo der Fehler liegt.
Kannst Du mal

Code: Alles auswählen

http://DEINE_NUKI_IP:8080/callback/list?token=DEIN_TOKEN
im browser ausführen und gucken, ob die URL von Deiner CCU richtig eingetragen ist?

Bei mir sehen die Rohdaten in Firefox so aus:

Code: Alles auswählen

{"callbacks": [{"id": 0, "url": "http://192.168.178.35:8181/nuki.exe?sagt=(dom.GetObject(17705).State('tttop'))"},{"id": 1, "url": "http://192.168.178.35/addons/red/nuki"}]}
Kannst Du mal das Skript auf Fehler prüfen und dann ausführen?
Was kommt dabei raus?

Bei mir sieht das so aus

Code: Alles auswählen

[{"deviceType": 0, "nukiId": xxxxxxxx, "name": "xxxx", "firmwareVersion": "2.10.8", "lastKnownState": {"mode": 2, "state": 3, "stateName": "unlocked", "batteryCritical": false, "batteryCharging": false, "batteryChargeState": 42, "doorsensorState": 2, "doorsensorStateName": "door closed", "timestamp": "2021-03-30T20:00:42+00:00"}}]
3

Mr_G2005
Beiträge: 1
Registriert: 25.11.2021, 21:21
System: CCU

Re: Nuki Callback nutzen

Beitrag von Mr_G2005 » 25.11.2021, 21:26

Hallo Leute.

Habe mich die letzte Woche eigentlich ziemlich in das Thema eingelesen und mich jetzt für das neue Nuki 3.0 Pro entschieden.
Leider ist auch scheinbar genau das das Problem. Der Aufbau scheint anders zu sein (es ist ja auch keine Bridge da) und somit funktioniert die gute Anleitung nicht.
Ist schon jemand dran, bzw. weiß jemand wie es geht?

Danke und lG

Gunther

EDIT: Habe da leider schon mal das Problem den richtige Token zu finden, bin ein Laie aber check die Sachen im Normalfall recht schnell bzw. erarbeite mit Notwendiges.

EDIT2: Scheinbar gibt es am Nuki3.0 Pro keine Bridge API und man muss sich für die Integration die Bridge extra kaufen. Fantastische "Pro"-Version. Aber vielleicht kennt ja trotzdem jemand einen Weg.

WAdler 68
Beiträge: 1425
Registriert: 09.11.2008, 16:29
Hat sich bedankt: 2 Mal

Re: Nuki Callback nutzen

Beitrag von WAdler 68 » 11.12.2021, 19:40

Ich bekomme hier (http://ip-deiner-bridge:8080/callback/a ... %3Fsagt%3D(dom.GetObject(17705).State(%27tttop%27))&token=token-deines-nuki) keine Aktualisierung von NukiCallback . Ich habe die Richtige ID eingetragen und kann sie so http://ip-deiner-ccu:8181/nuki.exe?sagt=(dom.GetObject(17705).State('tttop')) über den Browser füllen, bzw akrualisieren.
Für mich wäre es auch besser, wenn ich gleich einen virtuellen Kanal umschalten könnte, da ich die Tür mit der CL Software bediene und kontrolliere. Ich möchte mir da nur mit dem Callback hier eine Dauerschleife ersparen.

WAdler 68
Beiträge: 1425
Registriert: 09.11.2008, 16:29
Hat sich bedankt: 2 Mal

Re: Nuki Callback nutzen

Beitrag von WAdler 68 » 11.12.2021, 20:26


ueffchen
Beiträge: 176
Registriert: 29.03.2011, 10:35
Hat sich bedankt: 4 Mal
Danksagung erhalten: 13 Mal

Re: Nuki Callback nutzen

Beitrag von ueffchen » 16.12.2021, 11:21

Ich habe mein Callback Programm mit Nuki2 immer noch am laufen, aber es kann natürlich sein, dass mit N3 Änderungen in der API sind.
Generell stelle ich alle Programme aber auf Node Red / Redmatic um. Habe dort auch Zugriff auf Nuki.
Der Aufwand am Anfang ist hoch, ich musste mich erstmal in die Node Red Logik reindenken. Es aber so viele fertige Nodes, um zB Telegram Nachrichten zu verschicken, sich Daten aus dem Web zu holen und in Systemvariablen zu schreiben etc. Das, kombiniert mit der Möglichkeit eigene Funktionen mit Javascript zu schreiben, ist für mich einfacher, als in der CCU Scriptsprache was zu machen. Ich benutze die CCU eigentlch nur noch für Direktverknüpfungen, da ist sie unschlagbar wenn es um Realzeit geht, und um an die Homematic Komponenten zu kommen, die ich dann in Redmatic nutze.

Antworten

Zurück zu „HomeMatic allgemein“