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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Script fürTabelle der Batterie Zustände

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Script fürTabelle der Batterie Zustände

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascriptmonitoringtemplate
1.4k Beiträge 67 Kommentatoren 489.8k Aufrufe 86 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.
  • liv-in-skyL liv-in-sky

    @Scrounger
    wegen sortierung des namens: ich übergebe ja nur ein json - das ist nicht sortiert sondern sammelt alle daten der einzelnen devices - ich dachte, die sortierung wird in deinen table widget vorgenommen? meine sortierung hat doch damit nichts zu tun - wenn ich auf die spaltenüberschrift auf deinem widget drücke, hat das doch keine auswirkungen auf mein script?

    nachtrag - hatte im widget etwas eingetragen - die sortierung des namen funktioniert jetzt ohne probleme
    @Oli in meinem widget steht im spaltenlayout[0] unter Objectname zum Sortieren[0] etwas drin - das einfach rauslöschen)

    • das mit dem extraproperty für zahlenwerte muss ich mir noch ansehen

    hier das beispiel json

    [
       {
       	"Device": "Comet DECT #2 Kueche",
       	"Wert": "50 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "Comet DECT #1 Zimmer",
       	"Wert": "60 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "Comet DECT Flur",
       	"Wert": "90 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "Comet DECTBad",
       	"Wert": "60 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "FRITZ!DECT BAD",
       	"Wert": "70 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "FRITZ!DECT KUECHE",
       	"Wert": "80 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "FRITZ!DECT WOHNZIMMER",
       	"Wert": "70 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fritzk.png"
       },
       {
       	"Device": "Außenmodul-Carport",
       	"Wert": "5 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/netatmok.png"
       },
       {
       	"Device": "Regenmesser",
       	"Wert": "33 %",
       	"Status": "??",
       	"Hersteller": "/vis.0/armin/img/marken/netatmok.png"
       },
       {
       	"Device": "Schlafzimmer",
       	"Wert": "99 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/netatmok.png"
       },
       {
       	"Device": "Windmesser",
       	"Wert": "11 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/netatmok.png"
       },
       {
       	"Device": "xmagnet",
       	"Wert": "60.6 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "magnet",
       	"Wert": "62.4 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "magnet",
       	"Wert": "64.2 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "magnet",
       	"Wert": "60.6 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "motion 2",
       	"Wert": "66.1 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "motion 1",
       	"Wert": "67.9 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "sensor_motion.aq2",
       	"Wert": "60.6 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "switch",
       	"Wert": "69.2 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "switch",
       	"Wert": "71 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "vibration",
       	"Wert": "64.2 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "vibration",
       	"Wert": "64.2 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/xiaomki.png"
       },
       {
       	"Device": "Fenster Küche",
       	"Wert": "66 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Wasser Küche",
       	"Wert": "33 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Fenster Kinderzimmer rechts",
       	"Wert": "66 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Fenster Wohnzimmer",
       	"Wert": "22 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Temp Schlafzimmer",
       	"Wert": "44 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Fenster Schlafzimmer",
       	"Wert": "99 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Fenster Bad",
       	"Wert": "44 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Wasser Bad",
       	"Wert": "33 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Fenster Kinderzimmer links",
       	"Wert": "5 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/deconzk.png"
       },
       {
       	"Device": "Wintergarten",
       	"Wert": "low",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Tado Virtuell",
       	"Wert": "high",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Wohnzimmer",
       	"Wert": "low",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Küche",
       	"Wert": "high",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Schlafzimmer",
       	"Wert": "high",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Flur",
       	"Wert": "high",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Essbereich",
       	"Wert": "high",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/tadok.png"
       },
       {
       	"Device": "Heizk_Hobby",
       	"Wert": "3.5 V",
       	"Status": "??",
       	"Hersteller": "/vis.0/armin/img/marken/homematick.png"
       },
       {
       	"Device": "TC_Bad_EG",
       	"Wert": "1.5 V",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/homematick.png"
       },
       {
       	"Device": "RT_02_EG_WOHNEN",
       	"Wert": "2.4 V",
       	"Status": "??",
       	"Hersteller": "/vis.0/armin/img/marken/homematick.png"
       },
       {
       	"Device": "Fire Tablet",
       	"Wert": "67 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       },
       {
       	"Device": "Samsung Galaxy Tab 3",
       	"Wert": "72 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       },
       {
       	"Device": "TrekStor SurfTab theatre 13.3",
       	"Wert": "100 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       },
       {
       	"Device": "SM-T113-Tab",
       	"Wert": "87 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       },
       {
       	"Device": "GalaxyTabS2",
       	"Wert": "61 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       },
       {
       	"Device": "MediaPadT5",
       	"Wert": "74 %",
       	"Status": "?",
       	"Hersteller": "/vis.0/armin/img/marken/fullyk.png"
       }
    ]
    

    ScroungerS Offline
    ScroungerS Offline
    Scrounger
    Developer
    schrieb am zuletzt editiert von Scrounger
    #794

    @liv-in-sky
    Hast natürlich Recht, die Sortierung wird vom Tablet Widget übernommen.
    Bin voll im IconList Widget Modus ;-)

    Mit dem Tablet Widget kannst dann auch nur nach % oder V sortieren. Oder die beiden mixen.
    Dazu musst eine extra property im json Objekt einführen, wo nur die Zahl (Number) drin steht.
    Den Namen der property muss dann in den Widget Einstellungen für die Spalte wert als Sortierungs eintragen.

    <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

    <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

    liv-in-skyL 1 Antwort Letzte Antwort
    0
    • ScroungerS Scrounger

      @liv-in-sky
      Hast natürlich Recht, die Sortierung wird vom Tablet Widget übernommen.
      Bin voll im IconList Widget Modus ;-)

      Mit dem Tablet Widget kannst dann auch nur nach % oder V sortieren. Oder die beiden mixen.
      Dazu musst eine extra property im json Objekt einführen, wo nur die Zahl (Number) drin steht.
      Den Namen der property muss dann in den Widget Einstellungen für die Spalte wert als Sortierungs eintragen.

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von liv-in-sky
      #795

      @Scrounger bitte nochmal für dummies:

      es gibt folgende werte in einer spalte
      zahl in %
      zahl in volt
      string : low oder high

      ich schleife 2 variablen variable mit , die letztlich im json landen - z.b prozentValue und voltValue

      ich setze zusätzlich zum normalen wert die prozentValue, wenn eine prozent anzeige ist und gleichzeitig den voltwert auf 0
      oder
      ich setze zusätzlich zum normalen wert die voltValue, wenn eine voltanzeige ist und gleichzeitig den prozentwert auf 0
      ich setze zusätzlich zum low/high wert die voltValue auf 0, und gleichzeitig den prozentwert auf 0

      am ende sieht ds json-push so aus

      myJsonWidget2.push({
                      text: vax1,
                      subText: mysubText,
                      statusBarColor: vax5,
                      image: vax4,
                      imageColor: "",
                      listType: "text",
                      showValueLabel: false,
                      name: vax1,
                      status: vax3,
                      voltValue:voltValue,
                      prozentValue:prozentValue
                  });
      

      im widget muss ich dann

      Image 3.png

      kommt das ungefähr hin ode explodiert die vis oder das widget?

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      ScroungerS ub.privatU 2 Antworten Letzte Antwort
      0
      • liv-in-skyL liv-in-sky

        @Scrounger bitte nochmal für dummies:

        es gibt folgende werte in einer spalte
        zahl in %
        zahl in volt
        string : low oder high

        ich schleife 2 variablen variable mit , die letztlich im json landen - z.b prozentValue und voltValue

        ich setze zusätzlich zum normalen wert die prozentValue, wenn eine prozent anzeige ist und gleichzeitig den voltwert auf 0
        oder
        ich setze zusätzlich zum normalen wert die voltValue, wenn eine voltanzeige ist und gleichzeitig den prozentwert auf 0
        ich setze zusätzlich zum low/high wert die voltValue auf 0, und gleichzeitig den prozentwert auf 0

        am ende sieht ds json-push so aus

        myJsonWidget2.push({
                        text: vax1,
                        subText: mysubText,
                        statusBarColor: vax5,
                        image: vax4,
                        imageColor: "",
                        listType: "text",
                        showValueLabel: false,
                        name: vax1,
                        status: vax3,
                        voltValue:voltValue,
                        prozentValue:prozentValue
                    });
        

        im widget muss ich dann

        Image 3.png

        kommt das ungefähr hin ode explodiert die vis oder das widget?

        ScroungerS Offline
        ScroungerS Offline
        Scrounger
        Developer
        schrieb am zuletzt editiert von
        #796

        @liv-in-sky Objektname zum sortieren kann nur eine property verarbeiten.

        <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

        <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

        1 Antwort Letzte Antwort
        0
        • liv-in-skyL liv-in-sky

          @Scrounger bitte nochmal für dummies:

          es gibt folgende werte in einer spalte
          zahl in %
          zahl in volt
          string : low oder high

          ich schleife 2 variablen variable mit , die letztlich im json landen - z.b prozentValue und voltValue

          ich setze zusätzlich zum normalen wert die prozentValue, wenn eine prozent anzeige ist und gleichzeitig den voltwert auf 0
          oder
          ich setze zusätzlich zum normalen wert die voltValue, wenn eine voltanzeige ist und gleichzeitig den prozentwert auf 0
          ich setze zusätzlich zum low/high wert die voltValue auf 0, und gleichzeitig den prozentwert auf 0

          am ende sieht ds json-push so aus

          myJsonWidget2.push({
                          text: vax1,
                          subText: mysubText,
                          statusBarColor: vax5,
                          image: vax4,
                          imageColor: "",
                          listType: "text",
                          showValueLabel: false,
                          name: vax1,
                          status: vax3,
                          voltValue:voltValue,
                          prozentValue:prozentValue
                      });
          

          im widget muss ich dann

          Image 3.png

          kommt das ungefähr hin ode explodiert die vis oder das widget?

          ub.privatU Offline
          ub.privatU Offline
          ub.privat
          schrieb am zuletzt editiert von
          #797

          @liv-in-sky

          Servus, wollte nur mal kurz anfragen, ob du das Akku-Script weiter "verfeinerst"?
          Hätte großes Interesse an den Filterfunktionen...
          Aber mach dir keine Umstände, auch ein "nein" ist ok...

          Beste Grüße :wink:

          liv-in-skyL 1 Antwort Letzte Antwort
          0
          • ub.privatU ub.privat

            @liv-in-sky

            Servus, wollte nur mal kurz anfragen, ob du das Akku-Script weiter "verfeinerst"?
            Hätte großes Interesse an den Filterfunktionen...
            Aber mach dir keine Umstände, auch ein "nein" ist ok...

            Beste Grüße :wink:

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von liv-in-sky
            #798

            @ub-privat

            habe es noch nicht genau kapiert - wenn ich nur nach einem sortieren kann, macht es keinen sinn bei 3 verschiedenen werten - es wird nie eine gute sortierung rauskommen

            ansonsten müßte ich tatsächlich mit 3 spalten für den wert arbeiten -also name,wert1,wert2,wert3,status,hersteller
            und werte für low/high stehen in wert1
            werte mit 1.3 V stehen in wert2
            und werte mit prozent in wert3

            ist nicht schön -

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              hier ein beispiel für die Anzeige der Sensoren-Batterie-Zustände über ein html-Widget (oder iQontrol) - angelehnt an die scripte für html tabellen: https://forum.iobroker.net/topic/28021/html-table-für-vis-oder-iqontrol-js-und-blockly

              1578859811737-batterien_final.png

              die MaterialDesign Widgets sind auch mit eingebunden https://forum.iobroker.net/post/389578

              export der widgets

              [{"tpl":"tplVis-materialdesign-Icon-List","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","wrapItems":true,"listItemDataMethod":"jsonStringObject","countListItems":"1","vibrateOnMobilDevices":"50","listLayout":"card","itemLayout":"horizontal","listType0":"text","showValueLabel0":"true","listType1":"text","showValueLabel1":"true","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"maxItemsperRow":"4","json_string_oid":"controll-own.0.TABELLEN.AkkuMaterialWidget","labelFontSize":"22","subLabelFontSize":"14","labelFontFamily":"RobotoCondensed-Regular","horizontalIconContainerWidth":"70","buttonHeight":"70","iconHeight":"35","iconItemMinWidth":"300"},"style":{"left":"117px","top":"67px","width":"60.89%","height":"87.71%","overflow-y":"auto"},"widgetSet":"materialdesign"}]
              

              [{"tpl":"tplVis-materialdesign-Table","data":{"oid":"controll-own.0.TABELLEN.AkkuMaterialWidgetTable","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","countCols":"4","tableLayout":"standard","showHeader":"true","headerTextSize":"headline6","showColumn0":"true","colType0":"text","textAlign0":"left","showColumn1":"true","colType1":"text","textAlign1":"center","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"showColumn2":"true","colType2":"text","textAlign2":"center","showColumn3":"true","colType3":"image","textAlign3":"center","dataJson":"","colTextSize0":"headline4","label1":"Wert","label0":"Name","label2":"Status","sortKey0":"","fontFamily0":"RobotoCondensed-Regular","padding_left0":"10","colTextColor0":"","colorBackground":"#ffffff","colorHeaderRowBackground":"#424242","colorHeaderRowText":"#b6b9b7","borderColor":"#000000","fontFamily1":"RobotoCondensed-Regular","colTextColor1":"#beb7b7","rowHeight":"19","label3":"Hersteller","imageSize3":"20","padding_right3":"-5","sortKey2":"","showColumn4":false,"colType4":"text","textAlign4":"center","sortKey1":"helpSort"},"style":{"left":"1110px","top":"61px","z-index":"0","width":"587px","height":"926px","overflow-y":"auto"},"widgetSet":"materialdesign"}]
              


              Image 11.png Image 1.png


              Image 2.png
              material design widgetImage 2.png Image 3.png

              die javascript adapter version sollte 4.3.x sein !!!

              anzulegen und in das script einzutragen sind folgende datenpunkte

              • ein datenpunkt für die vis-anzeige unter dpVIS - ganz oben - im script - anschliessend kann man die tabelle so einstellen, dass sie in eure vis paßt (übr ein standard-html-widget mit binding auf diesen selbst-angelegten-datenpunkt)- ein html datei kann auf wunsch geschrieben werden - damit kann auch in iQontrol ein popup "gefüttert" werden und als anzeige dienen. auch die werte für warnung oder alarm sind einzutragen
              • ein datenpunkt für die anzahl der devices mit alarm (im script beschrieben)
              • ein datenpunkt für eine liste mit den devices mit einem alarm (im script beschrieben)

              wie legt man einen datenpunkt an: https://forum.iobroker.net/post/400338

              Script zum download bzw. mit Chrome!!! kopieren


              https://github.com/liv-in-sky/battery-iobroker-vis-table

              • bisher integriert
              hersteller
              iogok.png iogo adapter
              tadok.jpg tado
              homeek.jpg homee
              netatmok.jpg netatmo
              zwavek.jpg zwave
              fritzk.png fritzDect theermostate
              xiaomki.png xiaomi, mihome
              homematick.jpg homematic, homematic-Ip
              huek.jpg hue, hue-ext
              zwavek.jpg zwave
              tradfrik.png tradfri
              fullyk.png fully browser adapter
              zigbeek.jpg zigbee
              deconzk.png deconz
              sonoffk.png sonoff zb bridge
              busware-cul.png cul adapter
              rademacher.png rademacher homepilot
              shellyk.jpg shelly
              boschk.png bosch
              hamk.png ham (homebridge)
              nuki-extended
              ScroungerS Offline
              ScroungerS Offline
              Scrounger
              Developer
              schrieb am zuletzt editiert von
              #799

              @liv-in-sky

              Bin grad auf die Idee gekommen, dass man doch aus der Spannung die Batterieladung in % umrechnen könnte. Das geht zumindest mit den Homematic / Homemativ ip devices, indem man das Delta vom Spannungswert bei neuen Batterie berechnet und durch die Spannung bei neuen Batterie - die Unterspannungsgrenze teilt.
              Ob das mit allen von dir unterstützten Geräten geht kann ich natürlich nicht sagen.

              Evtl. könntest du das noch mit in dein Skript ein bauen?

              Hier mein Skript wie ich die Berechnung mit meinen HM Devices mach - zur Inspiration, muss natürlich angepasst werden.

              // Batterie Spannung in % umrechnen -> Batterieladung ****************************************************************************************************
              
              // import
              const mathjs = require("mathjs");
              
              let selector = `[id=${myDevices.Sensoren.getId()}.*.Spannung]`
              let alleSensorenSpannung = $(selector);
              
              // Fehlermeldung ausgeben, wenn selector kein result liefert
              if (alleSensorenSpannung.length === 0) {
                  console.error(`no result for selector '${selector}'`)
              }
              
              // Trigger
              alleSensorenSpannung.on(SpannungToProzent);
              
              function SpannungToProzent() {
                  try {
              
                      for (var i = 0; i <= alleSensorenSpannung.length - 1; i++) {
                          let id = alleSensorenSpannung[i];
                          let val = getState(id).val;
              
                          if (val > 2) {
                              if (existsState(id.replace('.Spannung', '.Batterieladung'))) {
                                  setState(id.replace('.Spannung', '.Batterieladung'), calcPercent(val, 2), true);
                              }
                          } else {
                              if (existsState(id.replace('.Spannung', '.Batterieladung'))) {
                                  setState(id.replace('.Spannung', '.Batterieladung'), calcPercent(val, 1), true);
                              }
                          }
              
                          function calcPercent(val, factor){
                              let spannungNeueBatterie = 1.5 * factor;
                              let unterSpannungsGrenze = 1.1 * factor;
              
                              return mathjs.round( (val - unterSpannungsGrenze) / (spannungNeueBatterie - unterSpannungsGrenze) * 100, 0);
                          }
                      }
                  } catch (err) {
                      console.error(`[SpannungToProzent] error: ${err.message}, stack: ${err.stack}`);
                  }
              }
              
              SpannungToProzent();
              

              <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

              <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

              arteckA 1 Antwort Letzte Antwort
              0
              • ScroungerS Scrounger

                @liv-in-sky

                Bin grad auf die Idee gekommen, dass man doch aus der Spannung die Batterieladung in % umrechnen könnte. Das geht zumindest mit den Homematic / Homemativ ip devices, indem man das Delta vom Spannungswert bei neuen Batterie berechnet und durch die Spannung bei neuen Batterie - die Unterspannungsgrenze teilt.
                Ob das mit allen von dir unterstützten Geräten geht kann ich natürlich nicht sagen.

                Evtl. könntest du das noch mit in dein Skript ein bauen?

                Hier mein Skript wie ich die Berechnung mit meinen HM Devices mach - zur Inspiration, muss natürlich angepasst werden.

                // Batterie Spannung in % umrechnen -> Batterieladung ****************************************************************************************************
                
                // import
                const mathjs = require("mathjs");
                
                let selector = `[id=${myDevices.Sensoren.getId()}.*.Spannung]`
                let alleSensorenSpannung = $(selector);
                
                // Fehlermeldung ausgeben, wenn selector kein result liefert
                if (alleSensorenSpannung.length === 0) {
                    console.error(`no result for selector '${selector}'`)
                }
                
                // Trigger
                alleSensorenSpannung.on(SpannungToProzent);
                
                function SpannungToProzent() {
                    try {
                
                        for (var i = 0; i <= alleSensorenSpannung.length - 1; i++) {
                            let id = alleSensorenSpannung[i];
                            let val = getState(id).val;
                
                            if (val > 2) {
                                if (existsState(id.replace('.Spannung', '.Batterieladung'))) {
                                    setState(id.replace('.Spannung', '.Batterieladung'), calcPercent(val, 2), true);
                                }
                            } else {
                                if (existsState(id.replace('.Spannung', '.Batterieladung'))) {
                                    setState(id.replace('.Spannung', '.Batterieladung'), calcPercent(val, 1), true);
                                }
                            }
                
                            function calcPercent(val, factor){
                                let spannungNeueBatterie = 1.5 * factor;
                                let unterSpannungsGrenze = 1.1 * factor;
                
                                return mathjs.round( (val - unterSpannungsGrenze) / (spannungNeueBatterie - unterSpannungsGrenze) * 100, 0);
                            }
                        }
                    } catch (err) {
                        console.error(`[SpannungToProzent] error: ${err.message}, stack: ${err.stack}`);
                    }
                }
                
                SpannungToProzent();
                
                arteckA Offline
                arteckA Offline
                arteck
                Developer Most Active
                schrieb am zuletzt editiert von
                #800

                @Scrounger im zigbee wird das so gemacht

                zigbee hab ich, zwave auch, nuc's genauso und HA auch

                ScroungerS 1 Antwort Letzte Antwort
                0
                • arteckA arteck

                  @Scrounger im zigbee wird das so gemacht

                  ScroungerS Offline
                  ScroungerS Offline
                  Scrounger
                  Developer
                  schrieb am zuletzt editiert von
                  #801

                  @arteck
                  Vielleicht könnte das auch direkt durch den hm-rpc adapter zur verfügung gestellt werden.
                  Hab gleich mal nen feature request gestellt :)
                  https://github.com/ioBroker/ioBroker.hm-rpc/issues/237

                  <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                  <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                  liv-in-skyL 2 Antworten Letzte Antwort
                  0
                  • ScroungerS Scrounger

                    @arteck
                    Vielleicht könnte das auch direkt durch den hm-rpc adapter zur verfügung gestellt werden.
                    Hab gleich mal nen feature request gestellt :)
                    https://github.com/ioBroker/ioBroker.hm-rpc/issues/237

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von
                    #802

                    @Scrounger erst mal danke , dass du noch weiter dran gedacht hast - werd das mal studieren - habe ja teilweise 3 verschiedene werte zur verfügung (batteriekapazität (1.5V, 3V oder5V ) beim umrechnen muss sowas auch mit kalkuliert werden

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • ScroungerS Scrounger

                      @arteck
                      Vielleicht könnte das auch direkt durch den hm-rpc adapter zur verfügung gestellt werden.
                      Hab gleich mal nen feature request gestellt :)
                      https://github.com/ioBroker/ioBroker.hm-rpc/issues/237

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #803

                      @Scrounger

                      ok - das mit dem factor habe ich kapiert

                      ich bringe alle 3 verschiedenen werte auf prozent-werte

                      hight ist 100%, low ist 0%
                      der factor bei den verschiedenen batterie-möglichkeiten ist auch klar: zb. bei 1.5V batterien: 0.75V sind dann 50%

                      dann erstelle ich ein neues json-property, welches diese werte hat und übergebe es an dein widget - im widget muss ich bei der "Wert"-spalte das neue property als sortierung eingeben !

                      so könnte es funktionieren ?

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      dslraserD 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @Scrounger

                        ok - das mit dem factor habe ich kapiert

                        ich bringe alle 3 verschiedenen werte auf prozent-werte

                        hight ist 100%, low ist 0%
                        der factor bei den verschiedenen batterie-möglichkeiten ist auch klar: zb. bei 1.5V batterien: 0.75V sind dann 50%

                        dann erstelle ich ein neues json-property, welches diese werte hat und übergebe es an dein widget - im widget muss ich bei der "Wert"-spalte das neue property als sortierung eingeben !

                        so könnte es funktionieren ?

                        dslraserD Offline
                        dslraserD Offline
                        dslraser
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #804

                        @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                        zb. bei 1.5V batterien: 0.75V sind dann 50%

                        bei 0.75V sind die leer...

                        liv-in-skyL 3 Antworten Letzte Antwort
                        0
                        • dslraserD dslraser

                          @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                          zb. bei 1.5V batterien: 0.75V sind dann 50%

                          bei 0.75V sind die leer...

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #805

                          @dslraser guter einwand (wenigstens hast du mit gedacht :-) )-beim factor darf ich nicht von 0 bis 1,5V rechnen !

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Antwort Letzte Antwort
                          0
                          • dslraserD dslraser

                            @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                            zb. bei 1.5V batterien: 0.75V sind dann 50%

                            bei 0.75V sind die leer...

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #806

                            @dslraser 0% ist dann bei 1.1 - so habe wir das berechnet

                            das wird ein spaß - das ist keine lineare kurve! bin gespannt ob ich auf den faktor kommen werde

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            1 Antwort Letzte Antwort
                            0
                            • dslraserD dslraser

                              @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                              zb. bei 1.5V batterien: 0.75V sind dann 50%

                              bei 0.75V sind die leer...

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von liv-in-sky
                              #807

                              @dslraser ich wollte kein +1 - stattdessen eine formel hätte mir mehr freude gemacht :-)

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              ScroungerS 1 Antwort Letzte Antwort
                              0
                              • liv-in-skyL liv-in-sky

                                @dslraser ich wollte kein +1 - stattdessen eine formel hätte mir mehr freude gemacht :-)

                                ScroungerS Offline
                                ScroungerS Offline
                                Scrounger
                                Developer
                                schrieb am zuletzt editiert von
                                #808

                                @liv-in-sky

                                Formel:
                                (DP Wert - UnterSpannungsGrenze) / (SpannungNeueBatterie - UnterSpannungsGrenze) * 100

                                Beispiel mit HM Türkontakt HMIP-SWDO:

                                • SpannungNeueBatterie = 1,5V
                                • UnterSpannungsGrenze = 1,1V (kann in der CCU verändert werden!)

                                Sagen wir haben aktuell einen DP Wert von 1,3V, dann ist das in Prozent nach obiger Formel 50%.

                                <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                                <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                                liv-in-skyL 1 Antwort Letzte Antwort
                                1
                                • ScroungerS Scrounger

                                  @liv-in-sky

                                  Formel:
                                  (DP Wert - UnterSpannungsGrenze) / (SpannungNeueBatterie - UnterSpannungsGrenze) * 100

                                  Beispiel mit HM Türkontakt HMIP-SWDO:

                                  • SpannungNeueBatterie = 1,5V
                                  • UnterSpannungsGrenze = 1,1V (kann in der CCU verändert werden!)

                                  Sagen wir haben aktuell einen DP Wert von 1,3V, dann ist das in Prozent nach obiger Formel 50%.

                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  schrieb am zuletzt editiert von liv-in-sky
                                  #809

                                  @Scrounger super - danke - die fehlen noch , der rest funktioniert schon bei der sortierung

                                  ist zwar linear - aber das sollte als annäherung völlig aussreichen

                                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                  ub.privatU 1 Antwort Letzte Antwort
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @Scrounger super - danke - die fehlen noch , der rest funktioniert schon bei der sortierung

                                    ist zwar linear - aber das sollte als annäherung völlig aussreichen

                                    ub.privatU Offline
                                    ub.privatU Offline
                                    ub.privat
                                    schrieb am zuletzt editiert von
                                    #810

                                    @liv-in-sky

                                    ...macht richtig Spaß mitzulesen! Musste schon schmunzeln. Am schönsten war "0.75V - dann sind sie leer!" ...
                                    Das hier ist ein echt Klasse Forum, dir wird geholfen und ein wenig Augenzwinkern ist auch dabei! Da vergisst man glatt den ganzen Alltagsstress.
                                    Danke!!! :+1: :wink:

                                    liv-in-skyL 1 Antwort Letzte Antwort
                                    1
                                    • ub.privatU ub.privat

                                      @liv-in-sky

                                      ...macht richtig Spaß mitzulesen! Musste schon schmunzeln. Am schönsten war "0.75V - dann sind sie leer!" ...
                                      Das hier ist ein echt Klasse Forum, dir wird geholfen und ein wenig Augenzwinkern ist auch dabei! Da vergisst man glatt den ganzen Alltagsstress.
                                      Danke!!! :+1: :wink:

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von
                                      #811

                                      @ub-privat

                                      moin,

                                      im ersten post ist ein neues script und das table widget - die sortierung sieht aber etwas seltsam aus (nach werten), wenn man verschiedene geräte mit z.b verschiedenen batterie kapzitäten hat ( 1,5V oder 3 Volt)

                                      siehst dir einfach mal an

                                      im neuen table widget ist bei sortierung im spaltenlayout1 das object "helpSort" dazugekommen

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      1 Antwort Letzte Antwort
                                      0
                                      • B Offline
                                        B Offline
                                        Bielefelder81
                                        schrieb am zuletzt editiert von
                                        #812

                                        Hallo.

                                        Ich habe zwei Fragen.

                                        1.) Im Script steht TABELLEN.AkkuMeessage ... Darf ich da das eine E entfernen was zu viel ist, oder hat das irgendwelche
                                        Bezüge. Mit Strg+F konnte ich im Script keinen weiteren Punkt mit Meessage finden.

                                        2.) Mich interessiert neben dem prozentualen Wert der Batterie auch welchen Typ Batterie ich in dem Gerät verbaut habe.
                                        Wie binde ich das ein?

                                        MfG Christian

                                        liv-in-skyL 1 Antwort Letzte Antwort
                                        0
                                        • B Bielefelder81

                                          Hallo.

                                          Ich habe zwei Fragen.

                                          1.) Im Script steht TABELLEN.AkkuMeessage ... Darf ich da das eine E entfernen was zu viel ist, oder hat das irgendwelche
                                          Bezüge. Mit Strg+F konnte ich im Script keinen weiteren Punkt mit Meessage finden.

                                          2.) Mich interessiert neben dem prozentualen Wert der Batterie auch welchen Typ Batterie ich in dem Gerät verbaut habe.
                                          Wie binde ich das ein?

                                          MfG Christian

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von liv-in-sky
                                          #813

                                          @Bielefelder81 du kannst die datenpunkte anlegen, wie und wo du willst - du musst sie halt auch im script dann aktualisieren (nur oben im setting bereich) - deshalb stehen die im variablen teil - somit kann das jeder für sich einstellen - meine datenpunkte sind nur beispiele von mir

                                          ich kann die batterie typen nicht aus den datenpunkt informationen generieren - d.h. man müßte das über eine weitere variable vom benutzer machen lassen - das bedeutet - du müßtest einen eintrag für jedes device und dessen batterie typ machen

                                          diese umstellung erzeugt extrem viel aufwand - wenn ich den batt-typ zusätzlich in der wert spalte (in klammern) anzeigen lasse, kann nicht danach sortiert werden (materialdesign) - nehme ich eine neue spalte dafür, brauche ich ein anderes table-template script

                                          sorry - da müßten schon einige benutzer danach verlangen, dass ich das momentan umsetze

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          634

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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