Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script um JSON in states zu schreiben

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script um JSON in states zu schreiben

    This topic has been deleted. Only users with topic management privileges can see it.
    • madjack84
      madjack84 last edited by

      Hallo zusammen,

      ich habe mir einen zigbee2mqtt Stick angeschafft.
      Mit einem sensor (aqara Tür/Fenster) bekomme ich folgendes JSON:

      {"contact":false,"linkquality":70,"battery":66,"voltage":2945}

      Um darauf per blockly schalten zu können, würde ich die states gerne erstellen und habe mir folgendes script in Blockly erstellt:

      // i = iobObject
      var obj = JSON.parse(getState(i).val);
      
      for (var prop in obj) {
          url = i + "." + prop;
          //console.log(url + " = " + obj[prop]);
          try {
              createState(url, obj[prop], true, {
                  read: true, 
                  write: false, 
                  name: prop,
                  role: "value",
                  type: "mixed", 
                  def: false
              });
              //console.log(getState(url))
          } catch (e) {
              console.log('exception in getState [' + e + ']');
          }    
      }
      

      ef5c7c79-46b1-4631-a2a7-7cc4382996e9-image.png

      Die Variablen werden erstellt... nur leider kann ich nur Variablen in Javascript.0. erstellen...

      javascript.0.mqtt-client.0.zigbee2mqtt.0x00158d00033a73d5

      wie kann ich die Variable hier erstellen?

      mqtt-client.0.zigbee2mqtt.0x00158d00033a73d5

      Vielen Dank

      arteck paul53 2 Replies Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active @madjack84 last edited by

        @madjack84 sagte in Script um JSON in states zu schreiben:

        ich habe mir einen zigbee2mqtt Stick angeschafft.

        es gibt keinen zigbee2mqtt Stick .. zigbee2mqtt ist ein Projekt der Zigbee Geräte bedienen kann ...
        ich Tippe auf einen cc2531 Stick

        aber warum nimmst du nicht den Zigbee Adapter ??

        madjack84 1 Reply Last reply Reply Quote 0
        • madjack84
          madjack84 @arteck last edited by madjack84

          @arteck korrekt.

          Einfache Antwort: ich kannte den Adapter nicht 😢
          Dachte ich kann von mqtt alles einfach abgreifen, da ich mqtt als dreh und Angelpunkt nutze. (shellies, tasmota, App)
          Kommt auch daher weil ich RAM sparen will und so wenige Adapter wie möglich nutze.

          Das zigbee2mqtt Projekt nutze ich via docker... Auch etwas Spielerei dabei 😉

          Gibt es im Javascript Umfeld eine Möglichkeit states im mqtt Client Adapter zu beschreiben?

          W 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @madjack84 last edited by

            @madjack84 sagte:

            wie kann ich die Variable hier erstellen?

            Man sollte keine eigenen Datenpunkte im Instanzen-Namensraum erstellen, da die Instanzen ihre Datenpunkte verwalten, also auch löschen. Außerhalb von javascript.N kann man Datenpunkte nur manuell im Reiter "Objekte" erstellen.

            1 Reply Last reply Reply Quote 0
            • W
              Waly_de @madjack84 last edited by

              @madjack84 Hab ich auch mal nach gesucht. Leider ist das bewusst blockiert.
              Du kannst einen Adapter in Javascript erstellen. Der kann sowas 😉

              Für Deine Zwecke sollte aber doch auch so ok sein, oder? Auslesen kannst du den Wert ja überall. Geht Dir nur um Kosmetik oder?

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              889
              Online

              31.8k
              Users

              80.0k
              Topics

              1.3m
              Posts

              blockly javascript
              4
              5
              860
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo