Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Lowbat *einmalig* mailen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    539

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Lowbat *einmalig* mailen

Scheduled Pinned Locked Moved Blockly
26 Posts 4 Posters 1.4k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Timmss

    @paul53 sagte: Es muss der Eintrag in beiden Listen gelöscht werden, damit der Index weiter übereinstimmt.

    Ja genau.

    Fände diesen Automatismus schöner, als sich auf die Nutzer zu verlassen.

    paul53P Offline
    paul53P Offline
    paul53
    wrote on last edited by
    #12

    @timmss sagte: Fände diesen Automatismus schöner, als sich auf die Nutzer zu verlassen.

    Da der Batteriewechsel eine manuelle Tätigkeit ist, dürfte man sich schnell daran gewöhnen, anschließend die Taste zu betätigen.

    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

    T 1 Reply Last reply
    0
    • paul53P paul53

      @timmss sagte: Fände diesen Automatismus schöner, als sich auf die Nutzer zu verlassen.

      Da der Batteriewechsel eine manuelle Tätigkeit ist, dürfte man sich schnell daran gewöhnen, anschließend die Taste zu betätigen.

      T Offline
      T Offline
      Timmss
      wrote on last edited by Timmss
      #13

      @paul53 Ich habe mal aus Neugier was gebaut:

      204f79d0-3a37-4831-ab05-eab1e9c6f895-grafik.png

      Ich bin mir nicht sicher, ob man so Werte aus einer Liste löscht. Aber prinzipiell müsste es so gehen?

      Edit: Der 'entferne'-Block wurde gefunden. Man müsste nur selber durchschauen :grimacing:

      paul53P 1 Reply Last reply
      0
      • T Timmss

        @paul53 Ich habe mal aus Neugier was gebaut:

        204f79d0-3a37-4831-ab05-eab1e9c6f895-grafik.png

        Ich bin mir nicht sicher, ob man so Werte aus einer Liste löscht. Aber prinzipiell müsste es so gehen?

        Edit: Der 'entferne'-Block wurde gefunden. Man müsste nur selber durchschauen :grimacing:

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by paul53
        #14

        @timmss
        Falsche Variable Liste.

        Blockly_temp.JPG

        Außerdem falsche Schleife gewählt. Richtig:

        Blockly_temp.JPG

        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

        T 2 Replies Last reply
        1
        • paul53P paul53

          @timmss
          Falsche Variable Liste.

          Blockly_temp.JPG

          Außerdem falsche Schleife gewählt. Richtig:

          Blockly_temp.JPG

          T Offline
          T Offline
          Timmss
          wrote on last edited by
          #15

          @paul53 Oh man. Ist angepasst.

          Deswegen finde ich es hier im Forum so toll. Danke für die Große Hilfe!

          1 Reply Last reply
          0
          • paul53P paul53

            @timmss
            Falsche Variable Liste.

            Blockly_temp.JPG

            Außerdem falsche Schleife gewählt. Richtig:

            Blockly_temp.JPG

            T Offline
            T Offline
            Timmss
            wrote on last edited by Timmss
            #16

            @paul53 Wobei mir gerade beim Testen was auffällt. Wir nehmen Einträge aus der Liste tagesliste weg. Wir versuchen aber über die gesamte ursprüngliche Länge der Liste auf die Werte zuzugreifen. Der Index spielt uns in die Karten.

            Als Lösung vielleicht eine dritte Liste, die sich spiegelt mit der tagesliste. Nur dort entfernen wir und aktualisieren diese zum Schluss mit der tagesliste?

            paul53P 1 Reply Last reply
            0
            • T Timmss

              @paul53 Wobei mir gerade beim Testen was auffällt. Wir nehmen Einträge aus der Liste tagesliste weg. Wir versuchen aber über die gesamte ursprüngliche Länge der Liste auf die Werte zuzugreifen. Der Index spielt uns in die Karten.

              Als Lösung vielleicht eine dritte Liste, die sich spiegelt mit der tagesliste. Nur dort entfernen wir und aktualisieren diese zum Schluss mit der tagesliste?

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by paul53
              #17

              @timmss sagte: Der Index spielt uns in die Karten.

              Dann korrigiere den Index nach dem Entfernen.

              Blockly_temp.JPG

              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

              T 1 Reply Last reply
              0
              • paul53P paul53

                @timmss sagte: Der Index spielt uns in die Karten.

                Dann korrigiere den Index nach dem Entfernen.

                Blockly_temp.JPG

                T Offline
                T Offline
                Timmss
                wrote on last edited by
                #18

                @paul53 sagte: Dann korrigiere den Index nach dem Entfernen.

                Das wäre eine Idee. Dennoch geht die Schleife ja so lang wie die ursprüngliche Länge der tagesliste.

                Aus benachrichtigt = [id1, id2] und tagesliste = [1, 20] wird benachrichtigt = [id2] und tagesliste = [20, -1].

                paul53P 1 Reply Last reply
                0
                • T Timmss

                  @paul53 sagte: Dann korrigiere den Index nach dem Entfernen.

                  Das wäre eine Idee. Dennoch geht die Schleife ja so lang wie die ursprüngliche Länge der tagesliste.

                  Aus benachrichtigt = [id1, id2] und tagesliste = [1, 20] wird benachrichtigt = [id2] und tagesliste = [20, -1].

                  paul53P Offline
                  paul53P Offline
                  paul53
                  wrote on last edited by
                  #19

                  @timmss sagte: tagesliste = [20, -1].

                  Wirklich? Ich habe mal eine Tagesliste mit Javascript nachgebildet:

                  Blockly_temp.JPG

                  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

                  T 1 Reply Last reply
                  0
                  • paul53P paul53

                    @timmss sagte: tagesliste = [20, -1].

                    Wirklich? Ich habe mal eine Tagesliste mit Javascript nachgebildet:

                    Blockly_temp.JPG

                    T Offline
                    T Offline
                    Timmss
                    wrote on last edited by Timmss
                    #20

                    @paul53 Diese Schleife:

                    92316133-4da7-45d3-b147-b668f8dfc1f5-grafik.png

                    gibt mir diese outputs:

                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt vorher: 11,20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste vorher: 1,20,29
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 0
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 20,29
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 1
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,29
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 2
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,28
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 3
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,28,-1
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt danach: 20,94
                    2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste danach: 19,28,-1
                    

                    So wurden die debugs eingearbeitet:

                    e2db6a16-1ee4-4776-abc6-9f2d62fbe1b2-grafik.png

                    paul53P 1 Reply Last reply
                    0
                    • T Timmss

                      @paul53 Diese Schleife:

                      92316133-4da7-45d3-b147-b668f8dfc1f5-grafik.png

                      gibt mir diese outputs:

                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt vorher: 11,20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste vorher: 1,20,29
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 0
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 20,29
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 1
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,29
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 2
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,28
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: Schleifendurchgang: 3
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt jetzt: 20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste jetzt: 19,28,-1
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: benachrichtigt danach: 20,94
                      2025-09-10 08:55:06.468 - info: javascript.0 (36733) script.js.common.Allgemein.Mailing_von_LOW_BAT: tagesliste danach: 19,28,-1
                      

                      So wurden die debugs eingearbeitet:

                      e2db6a16-1ee4-4776-abc6-9f2d62fbe1b2-grafik.png

                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #21

                      @timmss sagte: gibt mir diese outputs:

                      In Blockly funktioniert es so leider nicht, da die Blockly-Schleife eine Zwischenvariable i_end verwendet, die beim Entfernen nicht angepasst wird.

                      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

                      T 1 Reply Last reply
                      0
                      • paul53P paul53

                        @timmss sagte: gibt mir diese outputs:

                        In Blockly funktioniert es so leider nicht, da die Blockly-Schleife eine Zwischenvariable i_end verwendet, die beim Entfernen nicht angepasst wird.

                        T Offline
                        T Offline
                        Timmss
                        wrote on last edited by
                        #22

                        @paul53 Ärgerlich. Dann bauen wir diese Schleife einfach in eine JavaScript-Funktion?

                        paul53P 2 Replies Last reply
                        0
                        • T Timmss

                          @paul53 Ärgerlich. Dann bauen wir diese Schleife einfach in eine JavaScript-Funktion?

                          paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by paul53
                          #23

                          @timmss sagte: Ärgerlich.

                          Abhilfe:

                          Blockly_temp.JPG

                          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

                          T 1 Reply Last reply
                          1
                          • paul53P paul53

                            @timmss sagte: Ärgerlich.

                            Abhilfe:

                            Blockly_temp.JPG

                            T Offline
                            T Offline
                            Timmss
                            wrote on last edited by
                            #24

                            @paul53 So simpel wie es eigentlich ist hat es geholfen. Auch nach Tests.

                            Riesiges Dankeschön für deine Zeit und Geduld.

                            1 Reply Last reply
                            0
                            • T Timmss

                              @paul53 Ärgerlich. Dann bauen wir diese Schleife einfach in eine JavaScript-Funktion?

                              paul53P Offline
                              paul53P Offline
                              paul53
                              wrote on last edited by paul53
                              #25

                              @timmss sagte: Schleife einfach in eine JavaScript-Funktion?

                              Mit einer Javascript-Funktion ist es wesentlich kürzer:

                              for(let i = 0; i < tage.length; i++) {
                                  tage[i]--;
                                  if(tage[i] == 0) {
                                      tage.splice(i, 1);
                                      ids.splice(i, 1);
                                      i--;
                                  }
                              }
                              

                              Blockly_temp.JPG

                              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

                              MartinPM 1 Reply Last reply
                              0
                              • paul53P paul53

                                @timmss sagte: Schleife einfach in eine JavaScript-Funktion?

                                Mit einer Javascript-Funktion ist es wesentlich kürzer:

                                for(let i = 0; i < tage.length; i++) {
                                    tage[i]--;
                                    if(tage[i] == 0) {
                                        tage.splice(i, 1);
                                        ids.splice(i, 1);
                                        i--;
                                    }
                                }
                                

                                Blockly_temp.JPG

                                MartinPM Online
                                MartinPM Online
                                MartinP
                                wrote on last edited by MartinP
                                #26

                                Eine andere Idee:

                                Ein weiterer Zustand

                                BatteryOkValidated wird erst gesetzt, wenn mindestens einen Tag keine BatteryLow Ereignisse gekommen sind. Wird bei Start des Skripts auf True gesetzt ...

                                Kommt ein BatteryLow Ereignis wird geprüft ob BatteryOkValidated gesetzt ist.

                                Falls ja, wird BatteryOkValidated auf false gesetzt, und eine Mail abgesetzt, sowie ein Timeout (für das Zurücksetzen von BatteryOkValidated auf true) gesetzt.

                                Falls nein wird der Timeout für das Setzen von BatteryOkValidated verlängert.

                                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                                Virtualization : unprivileged lxc container (debian 13) on Proxmox 9.1.5)
                                Linux pve 6.17.9-1-pve
                                6 GByte RAM für den Container
                                Fritzbox 6591 FW 8.20 (Vodafone Leih-Box)
                                Remote-Access über Wireguard der Fritzbox

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                389

                                Online

                                32.7k

                                Users

                                82.5k

                                Topics

                                1.3m

                                Posts
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Home
                                • Recent
                                • Tags
                                • Unread 0
                                • Categories
                                • Unreplied
                                • Popular
                                • GitHub
                                • Docu
                                • Hilfe