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. ioBroker Allgemein
  4. shellys auslesen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    153

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

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

shellys auslesen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
8 Beiträge 4 Kommentatoren 1.5k Aufrufe 4 Watching
  • Ä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.
  • A Offline
    A Offline
    Alero
    schrieb am zuletzt editiert von Alero
    #1

    Hi,
    vielleicht kann ich ja auch mal was beitragen. Auch wenn es nicht direkt von mir ist.

    ich habe im Internet ein schönes Script gefunden welches alle Shellys auslesen kann.
    Mit der Änderung auch für den 3empro.

    Hier der Link falls noch nicht bekannt.
    https://www.kreyenborg.koeln/shelly-verbrauchs-historie-fuer-tag-woche-monat-jahr/comment-page-7/?unapproved=1488&moderation-hash=1431404234d6afdbde4ad69cf889c462#comment-1488

    Es werden Datenpunkte angelegt und befüllt wie "gesamt", "dieses_jahr", "letztes_jahr", "letzter_monat", "dieser_monat", "letzte_woche",
    "diese_woche", "gestern", "heute", "alter_wert", "aktueller_wert

    ich nutze es für mein Grafana Dashboard.

    Hier die Anpassung für den shelly 3emPro. Diese Zeilen in das script von zeile 47 bis 54 eintragen. zzw. überschreiben. Dann wird auf der 3empro ausgelesen und befüllt.

    // Datenpunkte der Shelly Pro3EM DP
    var shelly3EMDps = $('state[id=' + shelly_dp + '.*.*.TotalActiveEnergy]'); // Total
    
    // Datenpunkte der Shelly Pro3EM DP – Total
    var shelly3EMTotalDps = $('state[id=' + shelly_dp + '.*.*.TotalActivePower]'); //ConsumedPower
    
    // Datenpunkte der Shelly Pro3EM DP – Total
    var shelly3EMTotalReturned = $('state[id=' + shelly_dp + '.*.*.TotalActiveReturnEnergy]'); //Total_Returned
    

    ich hatte zuerst Fehler als ich es aus dem Kommentar kopiert hatte. Das Problem war das man das " ’ " durch ein " ' " ersetzen muss. Schwierig zu sehen.

    So sollte es dann unter Javascript.0.shellyverbrauch ausschauen:
    d754f1ff-cd89-45fb-b4e9-6915aeae3a0a-image.png

    Ich hoffe es hilft einigen von euch hier.
    Würde mich freuen.

    P.S. Kann mir jemand den Unterschied der Ordner vom 3empro erklären?
    EM0 und EMData0?

    R HomoranH 2 Antworten Letzte Antwort
    0
    • A Alero

      Hi,
      vielleicht kann ich ja auch mal was beitragen. Auch wenn es nicht direkt von mir ist.

      ich habe im Internet ein schönes Script gefunden welches alle Shellys auslesen kann.
      Mit der Änderung auch für den 3empro.

      Hier der Link falls noch nicht bekannt.
      https://www.kreyenborg.koeln/shelly-verbrauchs-historie-fuer-tag-woche-monat-jahr/comment-page-7/?unapproved=1488&moderation-hash=1431404234d6afdbde4ad69cf889c462#comment-1488

      Es werden Datenpunkte angelegt und befüllt wie "gesamt", "dieses_jahr", "letztes_jahr", "letzter_monat", "dieser_monat", "letzte_woche",
      "diese_woche", "gestern", "heute", "alter_wert", "aktueller_wert

      ich nutze es für mein Grafana Dashboard.

      Hier die Anpassung für den shelly 3emPro. Diese Zeilen in das script von zeile 47 bis 54 eintragen. zzw. überschreiben. Dann wird auf der 3empro ausgelesen und befüllt.

      // Datenpunkte der Shelly Pro3EM DP
      var shelly3EMDps = $('state[id=' + shelly_dp + '.*.*.TotalActiveEnergy]'); // Total
      
      // Datenpunkte der Shelly Pro3EM DP – Total
      var shelly3EMTotalDps = $('state[id=' + shelly_dp + '.*.*.TotalActivePower]'); //ConsumedPower
      
      // Datenpunkte der Shelly Pro3EM DP – Total
      var shelly3EMTotalReturned = $('state[id=' + shelly_dp + '.*.*.TotalActiveReturnEnergy]'); //Total_Returned
      

      ich hatte zuerst Fehler als ich es aus dem Kommentar kopiert hatte. Das Problem war das man das " ’ " durch ein " ' " ersetzen muss. Schwierig zu sehen.

      So sollte es dann unter Javascript.0.shellyverbrauch ausschauen:
      d754f1ff-cd89-45fb-b4e9-6915aeae3a0a-image.png

      Ich hoffe es hilft einigen von euch hier.
      Würde mich freuen.

      P.S. Kann mir jemand den Unterschied der Ordner vom 3empro erklären?
      EM0 und EMData0?

      R Offline
      R Offline
      RGT
      schrieb am zuletzt editiert von
      #2

      @alero
      Hallo,
      wenn ich das richtig interpretiere werden unter EM0 die Bezugswerte aus dem Netz aufgelistet. Das sind die Werte für Spannung, Strom, Scheinleistung etc. Hier wird auch der "Eigenverbrauch" des Shelly erfasst.
      Unter EMData0 geht es um die Energie (KWh), die an den "Verbraucher" gehen oder von da kommen.
      Ich erfasse mit dem Shelly die Zuleitung zu meiner Wallbox für's EAuto.
      Unter EMData0 sind dann bei mir die reinen Ladedaten ins Auto, während unter EM0 auch die Werte für den Shelly selbst erscheinen. Hier sind auch dann Änderungen, wenn das Auto nicht geladen wird. Die liegen bei mir im einstelligen Watt Bereich und sind für mich Vernachlässigbar, da das Auto sich im KW-Bereich bewegt. Unter EMData0 ändern sich die Werte nur dann, wenn die Wallbox das Auto lädt, also wirklich ein Verbrauch vom Shelly auf den drei Phasen gemessen wird.

      Eine Gegenfrage.
      Wie hast du das Skript von Kreyerborg bei dir eingebaut. Einfach im iobroker ein neues Skript angelegt und copy paste?

      LG RGT

      Ich bin zwar alt, aber lernfähig...

      A 1 Antwort Letzte Antwort
      1
      • A Alero

        Hi,
        vielleicht kann ich ja auch mal was beitragen. Auch wenn es nicht direkt von mir ist.

        ich habe im Internet ein schönes Script gefunden welches alle Shellys auslesen kann.
        Mit der Änderung auch für den 3empro.

        Hier der Link falls noch nicht bekannt.
        https://www.kreyenborg.koeln/shelly-verbrauchs-historie-fuer-tag-woche-monat-jahr/comment-page-7/?unapproved=1488&moderation-hash=1431404234d6afdbde4ad69cf889c462#comment-1488

        Es werden Datenpunkte angelegt und befüllt wie "gesamt", "dieses_jahr", "letztes_jahr", "letzter_monat", "dieser_monat", "letzte_woche",
        "diese_woche", "gestern", "heute", "alter_wert", "aktueller_wert

        ich nutze es für mein Grafana Dashboard.

        Hier die Anpassung für den shelly 3emPro. Diese Zeilen in das script von zeile 47 bis 54 eintragen. zzw. überschreiben. Dann wird auf der 3empro ausgelesen und befüllt.

        // Datenpunkte der Shelly Pro3EM DP
        var shelly3EMDps = $('state[id=' + shelly_dp + '.*.*.TotalActiveEnergy]'); // Total
        
        // Datenpunkte der Shelly Pro3EM DP – Total
        var shelly3EMTotalDps = $('state[id=' + shelly_dp + '.*.*.TotalActivePower]'); //ConsumedPower
        
        // Datenpunkte der Shelly Pro3EM DP – Total
        var shelly3EMTotalReturned = $('state[id=' + shelly_dp + '.*.*.TotalActiveReturnEnergy]'); //Total_Returned
        

        ich hatte zuerst Fehler als ich es aus dem Kommentar kopiert hatte. Das Problem war das man das " ’ " durch ein " ' " ersetzen muss. Schwierig zu sehen.

        So sollte es dann unter Javascript.0.shellyverbrauch ausschauen:
        d754f1ff-cd89-45fb-b4e9-6915aeae3a0a-image.png

        Ich hoffe es hilft einigen von euch hier.
        Würde mich freuen.

        P.S. Kann mir jemand den Unterschied der Ordner vom 3empro erklären?
        EM0 und EMData0?

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #3

        @alero sagte in shellys auslesen:

        ich habe im Internet ein schönes Script gefunden

        ds wird @skb aber freuen!

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        A 1 Antwort Letzte Antwort
        1
        • R RGT

          @alero
          Hallo,
          wenn ich das richtig interpretiere werden unter EM0 die Bezugswerte aus dem Netz aufgelistet. Das sind die Werte für Spannung, Strom, Scheinleistung etc. Hier wird auch der "Eigenverbrauch" des Shelly erfasst.
          Unter EMData0 geht es um die Energie (KWh), die an den "Verbraucher" gehen oder von da kommen.
          Ich erfasse mit dem Shelly die Zuleitung zu meiner Wallbox für's EAuto.
          Unter EMData0 sind dann bei mir die reinen Ladedaten ins Auto, während unter EM0 auch die Werte für den Shelly selbst erscheinen. Hier sind auch dann Änderungen, wenn das Auto nicht geladen wird. Die liegen bei mir im einstelligen Watt Bereich und sind für mich Vernachlässigbar, da das Auto sich im KW-Bereich bewegt. Unter EMData0 ändern sich die Werte nur dann, wenn die Wallbox das Auto lädt, also wirklich ein Verbrauch vom Shelly auf den drei Phasen gemessen wird.

          Eine Gegenfrage.
          Wie hast du das Skript von Kreyerborg bei dir eingebaut. Einfach im iobroker ein neues Skript angelegt und copy paste?

          LG RGT

          A Offline
          A Offline
          Alero
          schrieb am zuletzt editiert von
          #4

          @rgt
          Hi,
          Ich habe das Script auf den em3 Pro angepasst wie es auf der Seite stand und dan eingefügt.

          1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @alero sagte in shellys auslesen:

            ich habe im Internet ein schönes Script gefunden

            ds wird @skb aber freuen!

            A Offline
            A Offline
            Alero
            schrieb am zuletzt editiert von
            #5

            @Homoran
            Hi,
            Skb?

            R 1 Antwort Letzte Antwort
            0
            • A Alero

              @Homoran
              Hi,
              Skb?

              R Offline
              R Offline
              RGT
              schrieb am zuletzt editiert von
              #6

              @alero
              SKB ist der Entwickler des Skripts.

              Ich habe eine Frage zu dem Skript.
              An dieser Stelle:
              // Funktion um die aktuellen Namen des Shelly abzuholen
              function aktualisiere_namen() {
              if (typeof extendObject === "function") {
              shellyDpsName.each(function (id, i) {
              if (existsState(id)) {
              setState(shelly_DP_Name(id), String(getState(id).val), true);
              // extendObject("javascript.0." + shelly_DP_Name_Main(id), {
              extendObject("0_userdata.0." + shelly_DP_Name_Main(id), {
              common: {
              wird scheinbar der Datenpunkt definiert, der dann unter javasript.0. erscheint.
              Ich wollte diesen Punkt gerne wo anders hinhaben.
              Im iobroker sollten Benutzerdefinierte Datenpunkte unter 0_userdata.0 eingehängt werden.
              Das habe ich versucht, wie man oben sehen kann.
              Leider ohne Erfolg. Selbst wenn ich die Zeile extendObject auskommentiere wird er unter javascript.0 wieder erzeugt und gefüllt.
              Was mache ich falsch?
              Wie bekomme ich die oberste Ebene des DP definiert?

              LG RGT

              Ich bin zwar alt, aber lernfähig...

              A da_WoodyD 2 Antworten Letzte Antwort
              0
              • R RGT

                @alero
                SKB ist der Entwickler des Skripts.

                Ich habe eine Frage zu dem Skript.
                An dieser Stelle:
                // Funktion um die aktuellen Namen des Shelly abzuholen
                function aktualisiere_namen() {
                if (typeof extendObject === "function") {
                shellyDpsName.each(function (id, i) {
                if (existsState(id)) {
                setState(shelly_DP_Name(id), String(getState(id).val), true);
                // extendObject("javascript.0." + shelly_DP_Name_Main(id), {
                extendObject("0_userdata.0." + shelly_DP_Name_Main(id), {
                common: {
                wird scheinbar der Datenpunkt definiert, der dann unter javasript.0. erscheint.
                Ich wollte diesen Punkt gerne wo anders hinhaben.
                Im iobroker sollten Benutzerdefinierte Datenpunkte unter 0_userdata.0 eingehängt werden.
                Das habe ich versucht, wie man oben sehen kann.
                Leider ohne Erfolg. Selbst wenn ich die Zeile extendObject auskommentiere wird er unter javascript.0 wieder erzeugt und gefüllt.
                Was mache ich falsch?
                Wie bekomme ich die oberste Ebene des DP definiert?

                LG RGT

                A Offline
                A Offline
                Alero
                schrieb am zuletzt editiert von
                #7

                @rgt
                Hi, da kann ich dir leider nicht helfen. So fit bin ich auch nicht. Für mich passte das Script mit der kleinen Anpassung. Vielleicht kann jemand hier im Forum dir helfen.

                1 Antwort Letzte Antwort
                0
                • R RGT

                  @alero
                  SKB ist der Entwickler des Skripts.

                  Ich habe eine Frage zu dem Skript.
                  An dieser Stelle:
                  // Funktion um die aktuellen Namen des Shelly abzuholen
                  function aktualisiere_namen() {
                  if (typeof extendObject === "function") {
                  shellyDpsName.each(function (id, i) {
                  if (existsState(id)) {
                  setState(shelly_DP_Name(id), String(getState(id).val), true);
                  // extendObject("javascript.0." + shelly_DP_Name_Main(id), {
                  extendObject("0_userdata.0." + shelly_DP_Name_Main(id), {
                  common: {
                  wird scheinbar der Datenpunkt definiert, der dann unter javasript.0. erscheint.
                  Ich wollte diesen Punkt gerne wo anders hinhaben.
                  Im iobroker sollten Benutzerdefinierte Datenpunkte unter 0_userdata.0 eingehängt werden.
                  Das habe ich versucht, wie man oben sehen kann.
                  Leider ohne Erfolg. Selbst wenn ich die Zeile extendObject auskommentiere wird er unter javascript.0 wieder erzeugt und gefüllt.
                  Was mache ich falsch?
                  Wie bekomme ich die oberste Ebene des DP definiert?

                  LG RGT

                  da_WoodyD Offline
                  da_WoodyD Offline
                  da_Woody
                  schrieb am zuletzt editiert von
                  #8

                  @rgt "selbst erstellte DPs" ja
                  Von JavaScript erstellte werden eben dort gespeichert. Wo ist das Problem? Die werden vom Script erstellt, nicht von dir.

                  gruß vom Woody
                  HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                  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
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  374

                  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