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
    331

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • 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.
  • 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

                      373

                      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