Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Blockly
  5. [Gelöst] Batterieüberwachung per "IDs vom Selektor"

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    356

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    319

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    939

[Gelöst] Batterieüberwachung per "IDs vom Selektor"

Geplant Angeheftet Gesperrt Verschoben Blockly
5 Beiträge 2 Kommentatoren 374 Aufrufe 1 Beobachtet
  • Ä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.
  • T Offline
    T Offline
    TDCroPower
    schrieb am zuletzt editiert von TDCroPower
    #1

    Vielleicht hat jemand für mich eine guten Tipp wie ich die Batterie Meldungen weiter optimieren kann.

    Aktuell verwende ich "IDs vom Selektor..." um mehrere Geräte mit Batteriewerten auf einmal abzugreifen...
    Bildschirmfoto 2021-10-15 um 14.45.02.png

    Da der Prozentwert der ZigBee Geräte nicht stimmt greife ich hier zum voltage Datenpunkt.

    Dazu habe ich 2 JS-Funktionen die Anhand der ID den Namen und den Raum ermitteln sollen...
    Bildschirmfoto 2021-10-15 um 14.45.13.png
    getName

    return getObject(ObjectID).common.name;
    

    getRoom

    let room = getObject(ObjectID,'rooms').enumNames[0];
    return room.de;
    

    Problem 1:
    Die Funktion der Ermittlung des Raums funktioniert leider nicht, obwohl dem Objekt der Raumname zugewiesen wurde.
    Weiß jemand wie ich die getRoom Funktion umschreiben muss um den Raum Namen aus lesen zu können?
    Bildschirmfoto 2021-10-15 um 14.51.23.png

    Problem 2:
    Durch Problem 1 habe ich dem Namen des Datenpunkts voltage alle fehlenden Informationen dazu geschrieben.
    Leider wird daraus eine unschöner Telegram Nachrichten Baukasten.
    Lieber hätte ich die Werte Raum, Name und Batterietyp getrennt als Variable um den Telegram Text individueller zu gestalten.
    Bildschirmfoto 2021-10-15 um 14.47.49.png

    paul53P 1 Antwort Letzte Antwort
    0
    • T TDCroPower

      Vielleicht hat jemand für mich eine guten Tipp wie ich die Batterie Meldungen weiter optimieren kann.

      Aktuell verwende ich "IDs vom Selektor..." um mehrere Geräte mit Batteriewerten auf einmal abzugreifen...
      Bildschirmfoto 2021-10-15 um 14.45.02.png

      Da der Prozentwert der ZigBee Geräte nicht stimmt greife ich hier zum voltage Datenpunkt.

      Dazu habe ich 2 JS-Funktionen die Anhand der ID den Namen und den Raum ermitteln sollen...
      Bildschirmfoto 2021-10-15 um 14.45.13.png
      getName

      return getObject(ObjectID).common.name;
      

      getRoom

      let room = getObject(ObjectID,'rooms').enumNames[0];
      return room.de;
      

      Problem 1:
      Die Funktion der Ermittlung des Raums funktioniert leider nicht, obwohl dem Objekt der Raumname zugewiesen wurde.
      Weiß jemand wie ich die getRoom Funktion umschreiben muss um den Raum Namen aus lesen zu können?
      Bildschirmfoto 2021-10-15 um 14.51.23.png

      Problem 2:
      Durch Problem 1 habe ich dem Namen des Datenpunkts voltage alle fehlenden Informationen dazu geschrieben.
      Leider wird daraus eine unschöner Telegram Nachrichten Baukasten.
      Lieber hätte ich die Werte Raum, Name und Batterietyp getrennt als Variable um den Telegram Text individueller zu gestalten.
      Bildschirmfoto 2021-10-15 um 14.47.49.png

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @tdcropower sagte: getRoom Funktion umschreiben muss um den Raum Namen aus lesen zu können?

      let room = getObject(ObjectID, 'rooms').enumNames[0];
      if(typeof room == 'object') room = room.de;
      return room;
      

      @tdcropower sagte in Die Batterieerkennung per "IDs vom Selektor" optimieren:

      Lieber hätte ich die Werte Raum, Name und Batterietyp getrennt

      Den Batterietyp kann man nur im Namen, unter common.desc oder unter native unterbringen.

      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 Antwort Letzte Antwort
      0
      • paul53P paul53

        @tdcropower sagte: getRoom Funktion umschreiben muss um den Raum Namen aus lesen zu können?

        let room = getObject(ObjectID, 'rooms').enumNames[0];
        if(typeof room == 'object') room = room.de;
        return room;
        

        @tdcropower sagte in Die Batterieerkennung per "IDs vom Selektor" optimieren:

        Lieber hätte ich die Werte Raum, Name und Batterietyp getrennt

        Den Batterietyp kann man nur im Namen, unter common.desc oder unter native unterbringen.

        T Offline
        T Offline
        TDCroPower
        schrieb am zuletzt editiert von
        #3

        @paul53 danke fürs Feedback leider funktioniert dies ebenfalls nicht...

        Bildschirmfoto 2021-10-15 um 15.11.35.png

        Bildschirmfoto 2021-10-15 um 15.11.43.png

        Für den Batterietypen überlege ich mir einen "im Text suchen..." + "der Fall ist" Abfrage einzubauen.
        Hier könnte ich den ZigBee Typen mit in den Namen einbauen zum Beispiel SensorFenster, Bewegung oder Taster und denen dann verschiedene Batteriewerte hinzufügen.

        paul53P 1 Antwort Letzte Antwort
        0
        • T TDCroPower

          @paul53 danke fürs Feedback leider funktioniert dies ebenfalls nicht...

          Bildschirmfoto 2021-10-15 um 15.11.35.png

          Bildschirmfoto 2021-10-15 um 15.11.43.png

          Für den Batterietypen überlege ich mir einen "im Text suchen..." + "der Fall ist" Abfrage einzubauen.
          Hier könnte ich den ZigBee Typen mit in den Namen einbauen zum Beispiel SensorFenster, Bewegung oder Taster und denen dann verschiedene Batteriewerte hinzufügen.

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @tdcropower sagte: funktioniert dies ebenfalls nicht...

          Der Selektor liefert ein Array of IDs! Damit kann die Funktion nichts anfangen, denn sie erwartet einen ID-String.

          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 Antwort Letzte Antwort
          0
          • paul53P paul53

            @tdcropower sagte: funktioniert dies ebenfalls nicht...

            Der Selektor liefert ein Array of IDs! Damit kann die Funktion nichts anfangen, denn sie erwartet einen ID-String.

            T Offline
            T Offline
            TDCroPower
            schrieb am zuletzt editiert von TDCroPower
            #5

            @paul53 ah ok ich habe eine alternative gefunden mit der ich noch einfacher arbeiten könnte.
            Da ich sowieso schon den voltage Name auf Raum-Name-Typ z.B. Bad-Fenster-CR2156 geändert habe, kann ich daraus ja eigentlich mit den Text Operatoren 3 Variablen beschreiben.
            Hierfür müsste ich lediglich den Trenner "-" übergeben und das Ergebnis in die jeweilige Variable schreiben.

            Hat jemand Sample Beispiel für den Text Cut Operator?
            Den ersten Fall "Bad" habe ich soweit schon einmal hinbekommen...
            Bildschirmfoto 2021-10-15 um 16.15.24.png

            edit:
            habe sogar eine noch leichtere Methode gefunden.
            Ich erstelle einfach eine Liste mit dem Wert aus getName mit dem Trennzeichen "-".
            Diese kann ich dann mit 1, 2 und 3 ansprechen...
            Bildschirmfoto 2021-10-15 um 18.39.03.png

            edit2:
            und hier das Ergebnis...
            Bildschirmfoto 2021-10-15 um 18.57.17.png
            Bildschirmfoto 2021-10-15 um 18.57.52.png

            1 Antwort Letzte Antwort
            0

            Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

            Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

            Mit deinem Input könnte dieser Beitrag noch besser werden 💗

            Registrieren Anmelden
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            284

            Online

            32.8k

            Benutzer

            82.8k

            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