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. Funktion zum auslesen der Leistungsdaten SMA WEBBOX

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    338

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Funktion zum auslesen der Leistungsdaten SMA WEBBOX

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
14 Beiträge 5 Kommentatoren 3.7k 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.
  • W Offline
    W Offline
    wobo
    schrieb am zuletzt editiert von
    #3

    Danke für die schnelle Antwort.

    Ich meinte eine node-red Funktion.
    1330_unbenannt.png

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #4

      Ich wollte die Objektstruktur besser sichtbar machen.

      Von node-red habe ich keine Ahnung. Vielleicht so ?

      return  { payload: msg.payload.result.overview[1].value };
      

      oder so ?

      return msg.result.overview[1].value ;
      

      oder, da die Ausgabe "msg.payload" ist, so ?

      return  { payload: msg.result.overview[1].value };
      

      Ich hoffe, dass eine der Varianten funktioniert ;)

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • N Offline
        N Offline
        nobody
        schrieb am zuletzt editiert von
        #5

        Hallo,

        Eine kleine Änderung ist notwendig:

        msg.payload=msg.payload.result.overview [1].value;

        return msg;

        Gesendet von meinem SM-G900F mit Tapatalk

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #6

          @nobody:

          msg.payload=msg.payload.result.overview [1].value;

          return msg; `
          Das sollte identisch zu meinem ersten Vorschlag sein.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • N Offline
            N Offline
            nobody
            schrieb am zuletzt editiert von
            #7

            Praktisch ja, rein formell nein. Zu einem korrekten Message Objekt gehören per Definition mindestens die Attribute payload und topic, auch wenn diese leer sind.

            Gesendet von meinem SM-G900F mit Tapatalk

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #8

              @nobody:

              Zu einem korrekten Message Objekt gehören per Definition mindestens die Attribute payload und topic, auch wenn diese leer sind. `
              Danke für die Information.

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              0
              • W Offline
                W Offline
                wobo
                schrieb am zuletzt editiert von
                #9

                Hat super funktioniert

                hier die Lösung

                msg1 = {};

                msg1.payload = msg.payload.result.overview[0].value + " " + msg.payload.result.overview[0].unit;

                msg2 = {};

                msg2.payload = msg.payload.result.overview[1].value + " " + msg.payload.result.overview[1].unit;

                msg3 = {};

                msg3.payload = msg.payload.result.overview[2].value + " " + msg.payload.result.overview[2].unit ;

                return [msg1,msg2,msg3];

                mir ist noch unklar wie die Funktion aussehen müsste wenn der folgende String abgefragt wird.

                {"result":{"devices":[{"channels":[{"meta":"Ipv","name":"DC Strom Eingang","unit":"A","value":"0"},{"meta":"Upv-Ist","name":"DC Spannung Eingang","unit":"V","value":"0"},{"meta":"WindVel m/s","name":"Windgeschwindigkeit","unit":"m/s","value":"2.4"},{"meta":"TmpAmb C","name":"Au\u00DFentemperatur","unit":"\u00B0C","value":"20.3"},{"meta":"IntSolIrr","name":"Einstrahlung","unit":"W/m^2","value":"75"},{"meta":"Fac","name":"Netzfrequenz","unit":"Hz","value":"0"},{"meta":"Iac-Ist","name":"Netzstrom","unit":"A","value":"0"},{"meta":"Pac","name":"Leistung","unit":"W","value":"0"},{"meta":"Riso","name":"Isolationswiderstand","unit":"Ohm","value":"0"},{"meta":"TmpMdul C","name":"Modultemperatur","unit":"\u00B0C","value":"22.3"},{"meta":"h-On","name":"Einspeisezeit","unit":"h","value":"0"},{"meta":"h-Total","name":"Betriebszeit","unit":"h","value":"0"},{"meta":"E-Total","name":"Gesamtertrag","unit":"kWh","value":"0"},{"meta":"Netz-Ein","name":"Anzahl Netzzuschaltungen","value":"0"}],"key":"0088:0000725b"}]},"format":"JSON","proc":"GetProcessData","version":"1.0","id":"1"}

                1 Antwort Letzte Antwort
                0
                • N Offline
                  N Offline
                  nobody
                  schrieb am zuletzt editiert von
                  #10

                  Gib das json objekt doch mal hier in das Formular ein:

                  http://jsonprettyprint.com

                  Dann wird es richtig formatiert und man sieht die Ebenen und Arrays für den Zugriff auf die Attribute.

                  Gesendet von meinem SM-G900F mit Tapatalk

                  1 Antwort Letzte Antwort
                  0
                  • W Offline
                    W Offline
                    wobo
                    schrieb am zuletzt editiert von
                    #11

                    Danke für den Tip.

                    es sind 2 Arrays wie fragt man die dann ab ? Ich würde dann gerne die Modultemperatur auslesen.

                    {

                    "result": {

                    "devices": [

                    {

                    "channels": [

                    {

                    "meta": "Ipv",

                    "name": "DC Strom Eingang",

                    "unit": "A",

                    "value": "0"

                    },

                    {

                    "meta": "Upv-Ist",

                    "name": "DC Spannung Eingang",

                    "unit": "V",

                    "value": "0"

                    },

                    {

                    "meta": "WindVel m/s",

                    "name": "Windgeschwindigkeit",

                    "unit": "m/s",

                    "value": "2.4"

                    },

                    {

                    "meta": "TmpAmb C",

                    "name": "Au\u00dfentemperatur",

                    "unit": "\u00b0C",

                    "value": "20.3"

                    },

                    {

                    "meta": "IntSolIrr",

                    "name": "Einstrahlung",

                    "unit": "W/m^2",

                    "value": "75"

                    },

                    {

                    "meta": "Fac",

                    "name": "Netzfrequenz",

                    "unit": "Hz",

                    "value": "0"

                    },

                    {

                    "meta": "Iac-Ist",

                    "name": "Netzstrom",

                    "unit": "A",

                    "value": "0"

                    },

                    {

                    "meta": "Pac",

                    "name": "Leistung",

                    "unit": "W",

                    "value": "0"

                    },

                    {

                    "meta": "Riso",

                    "name": "Isolationswiderstand",

                    "unit": "Ohm",

                    "value": "0"

                    },

                    {

                    "meta": "TmpMdul C",

                    "name": "Modultemperatur",

                    "unit": "\u00b0C",

                    "value": "22.3"

                    },

                    {

                    "meta": "h-On",

                    "name": "Einspeisezeit",

                    "unit": "h",

                    "value": "0"

                    },

                    {

                    "meta": "h-Total",

                    "name": "Betriebszeit",

                    "unit": "h",

                    "value": "0"

                    },

                    {

                    "meta": "E-Total",

                    "name": "Gesamtertrag",

                    "unit": "kWh",

                    "value": "0"

                    },

                    {

                    "meta": "Netz-Ein",

                    "name": "Anzahl Netzzuschaltungen",

                    "value": "0"

                    }

                    ],

                    "key": "0088:0000725b"

                    }

                    ]

                    },

                    "format": "JSON",

                    "proc": "GetProcessData",

                    "version": "1.0",

                    "id": "1"

                    }

                    1 Antwort Letzte Antwort
                    0
                    • N Offline
                      N Offline
                      nobody
                      schrieb am zuletzt editiert von
                      #12

                      Einfach durchhangeln. Z. B.

                      msg.payload.result.devices[0].channels [0].value

                      Wenn nur die Werte und Einheiten interessant sind, bleibt das erste Array konstant auf 0. Die Anzahl der Einträge im zweiten Array bekommt man mit msg.payload.result.devices[0].channels.length.

                      Jetzt kommt es drauf an, was mit den Werten passieren soll.

                      Gesendet von meinem GT-N8000 mit Tapatalk

                      1 Antwort Letzte Antwort
                      0
                      • J Offline
                        J Offline
                        jamesmalvi
                        schrieb am zuletzt editiert von
                        #13

                        @nobody:

                        Gib das json objekt doch mal hier in das Formular ein:

                        http://jsonprettyprint.com

                        Dann wird es richtig formatiert und man sieht die Ebenen und Arrays für den Zugriff auf die Attribute.

                        Gesendet von meinem SM-G900F mit Tapatalk `

                        Ich benutze https://jsonformatter.org/json-pretty-print und https://codebeautify.org/jsonviewer

                        1 Antwort Letzte Antwort
                        0
                        • boeserkornB Offline
                          boeserkornB Offline
                          boeserkorn
                          schrieb am zuletzt editiert von
                          #14

                          @wobo

                          hast du es gelöst… ich bekomme leider noch nicht mal eine Rückmeldung von der Webbox, wäre schön wenn du mir da helfen könntest.

                          Danke

                          @wobo:

                          Danke für den Tip.

                          es sind 2 Arrays wie fragt man die dann ab ? Ich würde dann gerne die Modultemperatur auslesen.

                          {

                          "result": {

                          "devices": [

                          {

                          "channels": [

                          {

                          "meta": "Ipv",

                          "name": "DC Strom Eingang",

                          "unit": "A",

                          "value": "0"

                          },

                          {

                          "meta": "Upv-Ist",

                          "name": "DC Spannung Eingang",

                          "unit": "V",

                          "value": "0"

                          },

                          {

                          "meta": "WindVel m/s",

                          "name": "Windgeschwindigkeit",

                          "unit": "m/s",

                          "value": "2.4"

                          },

                          {

                          "meta": "TmpAmb C",

                          "name": "Au\u00dfentemperatur",

                          "unit": "\u00b0C",

                          "value": "20.3"

                          },

                          {

                          "meta": "IntSolIrr",

                          "name": "Einstrahlung",

                          "unit": "W/m^2",

                          "value": "75"

                          },

                          {

                          "meta": "Fac",

                          "name": "Netzfrequenz",

                          "unit": "Hz",

                          "value": "0"

                          },

                          {

                          "meta": "Iac-Ist",

                          "name": "Netzstrom",

                          "unit": "A",

                          "value": "0"

                          },

                          {

                          "meta": "Pac",

                          "name": "Leistung",

                          "unit": "W",

                          "value": "0"

                          },

                          {

                          "meta": "Riso",

                          "name": "Isolationswiderstand",

                          "unit": "Ohm",

                          "value": "0"

                          },

                          {

                          "meta": "TmpMdul C",

                          "name": "Modultemperatur",

                          "unit": "\u00b0C",

                          "value": "22.3"

                          },

                          {

                          "meta": "h-On",

                          "name": "Einspeisezeit",

                          "unit": "h",

                          "value": "0"

                          },

                          {

                          "meta": "h-Total",

                          "name": "Betriebszeit",

                          "unit": "h",

                          "value": "0"

                          },

                          {

                          "meta": "E-Total",

                          "name": "Gesamtertrag",

                          "unit": "kWh",

                          "value": "0"

                          },

                          {

                          "meta": "Netz-Ein",

                          "name": "Anzahl Netzzuschaltungen",

                          "value": "0"

                          }

                          ],

                          "key": "0088:0000725b"

                          }

                          ]

                          },

                          "format": "JSON",

                          "proc": "GetProcessData",

                          "version": "1.0",

                          "id": "1"

                          } `

                          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

                          742

                          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