Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst]Einbindung von Nuki Smarthome Schloss über simple.api

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

[Gelöst]Einbindung von Nuki Smarthome Schloss über simple.api

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
24 Beiträge 8 Kommentatoren 4.4k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    Spider12785
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    Zuerst hoffe ich das ich im richtigen Abschnitt gelandet bin, sonst bitte verschieben. War mir nicht sicher ob das eher für Scripte oder für Adapter fragen ist.

    Ich bin leider relativer Neuling aber gebe mir Mühe zu verstehen was ich lese und was zu tun ist. Im Forum habe ich ebenfalls schon gesucht aber nicht direkt was gefunden.

    Dort gibt es zwar den Ansatz für Einbindung in simple.api aber irgendwie blicke ich da nicht so durch.

    Es geht um ein nuki türschloss mit vorhandener software Bridge und eingeschalteter api.

    Was geht ist über http den aktuellen Status abzufragen.

    Jedoch würde ich gerne über die vorhandene Callback Funktion und der simple api von iobroker den sich ändernden Zustand in eine Variable eintragen lassen, welche ich dann über vis. Abfragen und visualisieren kann.

    Was ich schon versucht habe ist einen Callback über die nuki api einzurichten, aber dort habe ich z.b. das Problem das wenn ich den Callback Anfrage als Antwort z.b. steht

    Http://\ Usw. Mit http Schreibweise also den %… habe ich es auch schon versucht aber es hat nicht geklappt.

    In iobroker habe ich mir eine neue Device angelegt als Dummy in die ich die Daten übernehmen will als String.

    Wenn ich dort über simple api die Daten rein bekomme reicht mir das erstmal. Das auswerten denke ich werde ich mit js schon hinbekommen. Aber irgendwie kommt halt nichts an in iobroker.

    Steuern interessiert mich nicht ich möchte eigentlich nur den aktuellen Status übermittelt bekommen.

    Über request würde ich das ungern machen zum einen weil die Antwort immer relativ lange dauert und zum anderen weil dann jedes mal der Status aktiv am Schloss abgefragt wird, was natürlich ordentlich Batterie kostet.

    An Hardware habe ich iobroker auf dem pi3 am laufen. Wie schon geschrieben nuki + Android Bridge.

    Eine ccu ist leider nicht vorhanden.

    Über Lösungs Vorschläge bin ich dankbar. Am liebsten wäre mir eine kleine Anleitung.

    Mfg

    1 Antwort Letzte Antwort
    0
    • eric2905E Online
      eric2905E Online
      eric2905
      schrieb am zuletzt editiert von
      #2

      Hi,

      hast Du die gleiche Frage nicht auch bei Facebook in der ioBroker-Gruppe gestellt?

      Nur für mich zur Info, damit ich weiß, ob wir von einer oder zwei Personen sprechen.

      Hier die gleiche Antwort, die ich schon auf Facebook gepostet habe :-)

      Du müsstest prüfen, ob die Bridge aktiv bei einer Veränderung einen http-Request senden kann. Wenn ja, und Du den auch noch „frei“ definieren kannst, sendest Du (bzw. die Bridge) an die simpleapi von ioBroker.

      Gruß,

      Eric

      Von unterwegs getippert

      Roses are red, violets are blue,

      if I listen to metal, my neighbours do too

      1 Antwort Letzte Antwort
      0
      • S Offline
        S Offline
        Spider12785
        schrieb am zuletzt editiert von
        #3

        Ja ich hatte das auch in Facebook gepostet. Hatte gehofft das man hier evtl. Mehr Leute erreicht weil ja nicht jeder Facebook hat.

        Also ich kann bei dem Schloss eine URL definieren an welche eine Variable gesendet wird, sobald sich der Status des Schlosses ändert.

        Die Variable kann ich leider nicht frei benennen aber sie ist immer nach dem gleichen Schema aufgebaut.

        {“nukiId”: 11, <u>“state”: 1,</u> “stateName”: “locked”, “batteryCritical”: false}

        Die state 1 ändert die Zahl jenachdem welches Status das Schloss hat. Also 1 zugesperrt 2 aufgesperrt usw. Die Zahl würde ich dann mit JavaScript aus dem String abgreifen um dann mit vis darzustellen.

        Mein Problem ist halt ich bekomm es nicht hin das nuki den state in meine Device über das simple api schreibt.

        In nuki ist folgende URL als Callback hinterlegt.

        {"id":2,"url":"http://192.168.178.111:8087/set/datenpunkt.eigen?NukiBridgeResponse={0123456}"}]}

        Ich habe in iobroker unter dem JavaScript.0 Ordner einen datenpunkt angelegt mit Namen Eigen welcher einen String erhalten soll

        1 Antwort Letzte Antwort
        0
        • eric2905E Online
          eric2905E Online
          eric2905
          schrieb am zuletzt editiert von
          #4

          Schau Dir mal die Doku zum simpleapi an (https://github.com/ioBroker/ioBroker.si … /README.md).

          Einen State über simpleapi setzen geht z.B. mit

           http://ipaddress:8087/set/javascript.0.test?value=1
          

          Versuche mal, das in den Callback einzubauen („ipaddress“ ist die IP vom ioBroker-Host).

          In dem Beispiel musst Du unter javascipt.0 einen Datenpunkt „test“ haben; der würde dann mit dem Wert 1 beschrieben werden.

          Gruß,

          Eric

          Von unterwegs getippert

          Roses are red, violets are blue,

          if I listen to metal, my neighbours do too

          1 Antwort Letzte Antwort
          0
          • S Offline
            S Offline
            Spider12785
            schrieb am zuletzt editiert von
            #5

            Ah das hilft mir doch schonmal weiter. Hatte mir die Doku zwar schon mal angeschaut aber irgendwie bin ich bei dem geh und Set usw. Nicht weiter gekommen.

            Ich werde mal ausprobieren über eine normale URL Eingabe den Befehl zu senden. Wenn das in iobroker angezeigt wird müsste ich das ja nur noch etwas anpassen das das Callback von Schloss das auch so sendet.

            Danke schon mal für den Tipp. Ich werde mich melden wenn ich es probieren konnte.

            Mfg

            1 Antwort Letzte Antwort
            0
            • eric2905E Online
              eric2905E Online
              eric2905
              schrieb am zuletzt editiert von
              #6

              Das Verfahren als solches funktioniert auf jeden Fall.

              Ich lasse mir so z.B. die Statusänderungen vom Doorbird in Datenpunkte schreiben und verarbeite die dann weiter.

              Gruß,

              Eric

              Von unterwegs getippert

              Roses are red, violets are blue,

              if I listen to metal, my neighbours do too

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                Spider12785
                schrieb am zuletzt editiert von
                #7

                also ich habe jetzt schon einiges versucht.

                Das problem ist das ich wenn ich in der nuki api den callback eintrage bekomme ich nicht die richtige formatierung.

                Die eingabe soll url encoded erfolgen und egal was ich eingebe ich bekomme immer ein / eingesetzt.

                vielleicht kann mir ja einer einen tipp geben wo ich den fehler beim encode mache:

                wenn ich

                http://192.168.178.41:8080/callback/add?url=192.168.178.111:8087/set?javascript.0.test&token=XXXXX

                eingebe bekomme ich unter callback/list folgendes ergebnis

                {"id":2,"url":"192.168.178.111:8087/set?javascript.0.test"}

                gebe ich

                http%3A%2F%2F192.168.178.41%3A8080%2Fcallback%2Fadd%3Furl%3D192.168.178.111%3A8087%2Fset%3Fjavascript.0.test%26token%3DXXXXXX

                ein bekomme ich token invalid.

                gebe ich

                http://192.168.178.41:8080/callback/add?url=192.168.178.111%3A8087%2Fset%3Fjavascript.0.test&token=XXXXXX

                ein bekomme ich folgendes ergebnis

                {"callbacks":[{"id":0,"url":"192.168.178.111:8087/set?javascript.0.test"}

                was mich stört ist egal welche formatierung ich wähle ich bekomme die / immer und bekomme sie nicht weg.

                ich hab dem support auch schon eine mail geschrieben aber vielleicht kennt sich ja jemand gut aus.

                mfg

                1 Antwort Letzte Antwort
                0
                • E Offline
                  E Offline
                  eXTreMe
                  schrieb am zuletzt editiert von
                  #8

                  Ich bin mir nicht sicher ob ich dein problem richtig verstanden habe, ich poste dir aber mal meine 2 scripte (eins zum status auslesen und eins zum auf/zu machen der Tür) welche ich für mein nuki nutze, habe die mir auch nur aus dem internet zusammenkopiert da ich nur wenig ahnung von APIs habe

                  vielleicht hilfts dir (oder jemand anderem) ja trotzdem in irgend einer Form weiter.

                  Ich nutze aber die original nuki bridge und nicht wie du die "android bridge" (davon hab ich noch nie was gehört, daher kA ob mein Script bei dir funktioniert)

                  Script 1: Status abfrage per API alle 5min und schreibt dementsprechend true/false in einen von mir erstellten Datenpunkt

                  ! ````
                  schedule("*/5 * * * *", function () { // Status auslesen alle 5min

                  var url = "http://192.168.x.x:8080/lockstate?token=XXXXXX?nukiid=YYYYYY";
                  var request = require("request");
                  request(url, function (error, response, body) {
                  var json = JSON.parse(body);
                  

                  ! setState("javascript.0.Nuki", json.state);
                  log('Neuer Türstatus: ' + json.state);
                  });
                  });

                  
                  Script 2: Steuerung Tür auf/zu
                  
                  >! ````
                  var tuer_status       = "javascript.0.Nuki";
                  >! on({ id: tuer_status, val: 1 }, function() {
                          aufmachen();
                      }
                  );
                  >! on({ id: tuer_status, val: 2 }, function() {
                          zumachen();
                      }
                  );
                  >! function aufmachen()
                  {
                      var request = require("request");
                      request("http://192.168.x.x:8080/lockaction?token=XXXXX?nukiid=YYYYY?action=1");
                      log('Tür wird jetzt geöffnet');
                  }
                  >! function zumachen()
                  {
                      var request = require("request");
                      request("http://192.168.x.x:8080/lockaction?token=XXXXX?nukiid=YYYYYY?action=2");
                      log('Tür wird jetzt geschlossen');
                  }
                  
                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    Spider12785
                    schrieb am zuletzt editiert von
                    #9

                    Hi. Danke für deine Antwort.

                    Das mit den Scripten hatte ich mir auch schon einmal angeschaut. Das einzige was mich daran stört ist das er alle x Minuten aktiv den Status abfragt.

                    Hast du schon etwas in Sachen Verkürzung der Batterie Laufzeit gemerkt? Im Prinzip ist es mir egal ob ich alle 5 statt 6 Monate die Batterien wechseln muss.

                    Im Internet habe ich aber was von Laufzeiten <1 Monat gelesen deswegen wollte ich auf die api ausweichen.

                    Sollte ich das nicht hin bekommen werde ich mir dankend deine Scripte klauen.

                    Das ist wesentlich besser als gar nichts oder das tägliche ein probieren und verzweifeln was ich gerade am machen bin.

                    Und der Unterschied zwischen unseren Bridges ist einfach nur das nuki für ein altes Android Handy eine App zur Verfügung stellt die nichts anderes macht als eine Bluetooth Verbindung zum nuki her zu stellen und den Status über das wlan weiter zu geben.

                    Mfg

                    1 Antwort Letzte Antwort
                    0
                    • E Offline
                      E Offline
                      eXTreMe
                      schrieb am zuletzt editiert von
                      #10

                      habe mein nuki lock leider schon eine weile abmontiert, da ich den schlüssel an jemanden verliehen habe und keinen ersatzschlüssel habe, habe das script erst vor kurzem gebastelt und nur mit dem nuki lock auf dem schreibtisch liegend ausprobiert. deshalb kann ich zur batterielaufzeit nichts sagen.

                      ich weiss auch nicht genau wie das mit den status abfragen abläuft, die API fragt ja die bridge nach dem status, aber ob die bride dann die statusanfrage weiter an das schloss leitet und sich einen frischen status holt welcher dann als antwort zurück kommt oder ob sie einen zwischengespeicherten wert von der letzten statusänderung zurückliefert. das lock muss ja eigentlich nicht dauerhaft mit der bridge kommunizieren sondern eigentlich nur beim öffnen/schließen. Da müsstest du mal bei den Nuki entwicklern nachfragen ob das dauerabfragen negative auswirkungen auf die batterielaufzeiten hat. Kann ich mir aber nicht vorstellen.

                      ich habe das abfrageintervall des scripts einfach mal so auf 5min gestellt, nur damit ich irgendwelche werte vom lock im iobroker drin habe. da ich momentan aber keine aktionen mit dem lock status verbunden habe reicht das intervall von 5min auch dicke aus. wenn man eine zeitkritische aktion hat oder ein genaues log führen möchte dann sollte man das intervall ggf auf wenige sekunden runtersetzen, sonst bekommt man ja nicht mit ob die tür inzwischen mal offen war.

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        Schatn
                        schrieb am zuletzt editiert von
                        #11

                        Hallo Spider!

                        Habe das auch gerade mal ausprobiert. Deine URL müsste so aussehen:

                        http://192.168.178.41:8080/callback/add … en=XXXXXXX

                        So bekomme ich zumindest beim Callback/list die richtige Adresse zurück. Allerdings werden keine Werte in den Datenpunkt geschrieben.

                        Aber vielleicht hilft dir das ja schon mal etwas weiter.

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          Spider12785
                          schrieb am zuletzt editiert von
                          #12

                          Hallo,

                          Danke für die Antwort.

                          Ich habe es auch mittlerweile hin bekommen und lasse über ein Script die Antwort in verschiedene datenpunkt schreiben, welche ich dann über vis auswerten kann.

                          1 Antwort Letzte Antwort
                          0
                          • S Offline
                            S Offline
                            Schatn
                            schrieb am zuletzt editiert von
                            #13

                            Ok, also machst du auch nur alle 5 Minuten eine Abfrage oder nutzt du die Callback Funtkion?

                            1 Antwort Letzte Antwort
                            0
                            • S Offline
                              S Offline
                              Spider12785
                              schrieb am zuletzt editiert von
                              #14

                              Ich nutze die Callback Funktion und lasse mir das in einen Datenpunkt schreiben. Und mit einem script das bei aktualisierung des datenpunktes getriggert wird schreibe ich mir dann die 3 Variablen aus der Callback in jeweils eigene Datenpunkte.

                              1 Antwort Letzte Antwort
                              0
                              • S Offline
                                S Offline
                                Schatn
                                schrieb am zuletzt editiert von
                                #15

                                Könntest du vielleicht mal deine Callback URL posten? Bei mir wird nichts in den Datenpunkt geschrieben, obwohl die Adresse eigentlich richtig sein müsste.

                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  Spider12785
                                  schrieb am zuletzt editiert von
                                  #16

                                  Hey,

                                  Ich hab dich nicht vergessen.

                                  Ich kann die Callback URL und das Script heute Abend gerne mal Posten.

                                  Vorher komme ich leider nicht nach Hause.

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Offline
                                    S Offline
                                    Schatn
                                    schrieb am zuletzt editiert von
                                    #17

                                    Hallo,

                                    danke, ist überhaupt kein Problem. Es eilt nicht, nur keinen Stress, komme selber auch erst frühestens morgen dazu um es zu testen :D

                                    1 Antwort Letzte Antwort
                                    0
                                    • thexbrainT Offline
                                      thexbrainT Offline
                                      thexbrain
                                      schrieb am zuletzt editiert von
                                      #18

                                      Ich verstehe davon garnichts.

                                      Könnte mir jemand per Team Viewer helfen beim einrichten?

                                      1 Antwort Letzte Antwort
                                      0
                                      • S Offline
                                        S Offline
                                        schumla
                                        schrieb am zuletzt editiert von
                                        #19

                                        Hallo Spider12785,

                                        würdest du mir bitte auch deine Callback URL posten? Bei mir wird nichts in den Datenpunkt geschrieben, obwohl die Adresse eigentlich richtig sein müsste.

                                        Besten Dank und Gruß

                                        1 Antwort Letzte Antwort
                                        0
                                        • T Offline
                                          T Offline
                                          Tefi
                                          schrieb am zuletzt editiert von
                                          #20

                                          Könnte ich die Callback Url bitte auch bekommen

                                          Besten Dank

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          796

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe