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. Script Xiaomi Battery leer ?

NEWS

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

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

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

Script Xiaomi Battery leer ?

Geplant Angeheftet Gesperrt Verschoben Ungelöst Skripten / Logik
blockly
93 Beiträge 19 Kommentatoren 11.0k Aufrufe 16 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.
  • L lesiflo

    @robbsen

    Hier ist es: Zigbee.txt

    NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    schrieb am zuletzt editiert von
    #42

    @lesiflo sagte in Script Xiaomi Battery leer ?:

    Hier ist es: Zigbee.txt

    Hallo

    Ich hab gerade dein Script in Blockly importiert.
    Mir wird alles angezeigt, aber ich sehe auch einen schwarzen Baustein.
    javascript - ioBroker.png
    Fehlt da bei mir irgendwas?

    Danke

    ° Node.js: 20.17.0 NPM: 10.8.2
    ° Proxmox, Ubuntu 22.04.3 LTS
    ° Fixer ---> iob fix

    L 1 Antwort Letzte Antwort
    0
    • NegaleinN Negalein

      @lesiflo sagte in Script Xiaomi Battery leer ?:

      Hier ist es: Zigbee.txt

      Hallo

      Ich hab gerade dein Script in Blockly importiert.
      Mir wird alles angezeigt, aber ich sehe auch einen schwarzen Baustein.
      javascript - ioBroker.png
      Fehlt da bei mir irgendwas?

      Danke

      L Offline
      L Offline
      lesiflo
      Most Active
      schrieb am zuletzt editiert von
      #43

      @Negalein
      Wie sieh der Rest von Script aus?

      NegaleinN 1 Antwort Letzte Antwort
      0
      • MyzerATM Offline
        MyzerATM Offline
        MyzerAT
        schrieb am zuletzt editiert von
        #44

        f56edd84-9ef2-4e01-af2b-2482dd93b38c-grafik.png

        lg Rudi

        Master Debian 12 (Wien)
        Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

        Slave Debian 12. (TULLN) --> OpenVPN to Vienna
        Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

        Node 20.19.0
        Nodejs 20.19.0
        npm 10.8.2
        js-controller 7.0.6

        1 Antwort Letzte Antwort
        0
        • L lesiflo

          @Negalein
          Wie sieh der Rest von Script aus?

          NegaleinN Offline
          NegaleinN Offline
          Negalein
          Global Moderator
          schrieb am zuletzt editiert von
          #45

          @lesiflo sagte in Script Xiaomi Battery leer ?:

          @Negalein
          Wie sieh der Rest von Script aus?

          javascript - ioBroker (1).png

          ° Node.js: 20.17.0 NPM: 10.8.2
          ° Proxmox, Ubuntu 22.04.3 LTS
          ° Fixer ---> iob fix

          L 1 Antwort Letzte Antwort
          0
          • NegaleinN Negalein

            @lesiflo sagte in Script Xiaomi Battery leer ?:

            @Negalein
            Wie sieh der Rest von Script aus?

            javascript - ioBroker (1).png

            L Offline
            L Offline
            lesiflo
            Most Active
            schrieb am zuletzt editiert von
            #46

            @Negalein

            Beim Batteriescript fehlt nichts. Kannst du löschen wenn es denn geht.

            NegaleinN 1 Antwort Letzte Antwort
            0
            • L lesiflo

              @Negalein

              Beim Batteriescript fehlt nichts. Kannst du löschen wenn es denn geht.

              NegaleinN Offline
              NegaleinN Offline
              Negalein
              Global Moderator
              schrieb am zuletzt editiert von
              #47

              @lesiflo sagte in Script Xiaomi Battery leer ?:

              @Negalein

              Beim Batteriescript fehlt nichts. Kannst du löschen wenn es denn geht.

              Danke

              Aktuell hab ich leider das Problem, dass bei den Blocklys kein "Speichern Button" erscheint.

              ° Node.js: 20.17.0 NPM: 10.8.2
              ° Proxmox, Ubuntu 22.04.3 LTS
              ° Fixer ---> iob fix

              1 Antwort Letzte Antwort
              0
              • MyzerATM Offline
                MyzerATM Offline
                MyzerAT
                schrieb am zuletzt editiert von
                #48

                verschieb es etwas, dann sollte speichern möglich sein, das speichern ist nur ausgegraut wenn keine änderungen sind!

                lg Rudi

                Master Debian 12 (Wien)
                Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

                Slave Debian 12. (TULLN) --> OpenVPN to Vienna
                Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

                Node 20.19.0
                Nodejs 20.19.0
                npm 10.8.2
                js-controller 7.0.6

                NegaleinN 1 Antwort Letzte Antwort
                0
                • MyzerATM MyzerAT

                  verschieb es etwas, dann sollte speichern möglich sein, das speichern ist nur ausgegraut wenn keine änderungen sind!

                  NegaleinN Offline
                  NegaleinN Offline
                  Negalein
                  Global Moderator
                  schrieb am zuletzt editiert von
                  #49

                  @MyzerAT sagte in Script Xiaomi Battery leer ?:

                  verschieb es etwas, dann sollte speichern möglich sein, das speichern ist nur ausgegraut wenn keine änderungen sind!

                  Danke, das wars!

                  ° Node.js: 20.17.0 NPM: 10.8.2
                  ° Proxmox, Ubuntu 22.04.3 LTS
                  ° Fixer ---> iob fix

                  1 Antwort Letzte Antwort
                  0
                  • ? Ein ehemaliger Benutzer

                    Hi,
                    ich verwende dafür dieses Javascript, das alle xiaomi-batterie States scannt und dann in einen Datenpunkt schreibt, wo die Batterie leer ist.
                    Funktioniert auch prima mit fritzdect, muss nur der State geändert werden.

                    const idVis = 'Batterie.MiHomeBatterietausch';
                    const batt = $('mihome.0.*.percent');
                    
                    createState(idVis, '', {type: 'string'});
                    
                    function lowBatt() {
                    	var low = [];
                    	batt.each(function (id, i) {
                    	if(getState(id).val < 30) {
                    			id = id.split('.');
                    			id = 'mihome.0.' + id[2] + '.' + id[3];
                    			low.push(getObject(id).common.name); // Geräte-Name
                    		}	
                    	});
                    	setState(idVis, low.join(',<br>'), true);		
                    }
                    
                    schedule('0 * * * *', lowBatt); // jede volle Stunde
                    
                    
                    
                    K Offline
                    K Offline
                    karstent
                    schrieb am zuletzt editiert von
                    #50

                    @ilovegym
                    Und wie bekommst Du diese Nachricht das die Batterien sich leeren? Würde gerne das Script benutzen. Danke

                    ? 1 Antwort Letzte Antwort
                    0
                    • MyzerATM Offline
                      MyzerATM Offline
                      MyzerAT
                      schrieb am zuletzt editiert von
                      #51

                      sieht für mich aus als ob es über vis ausgegeben wird

                      lg Rudi

                      Master Debian 12 (Wien)
                      Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8. 7. als VM

                      Slave Debian 12. (TULLN) --> OpenVPN to Vienna
                      Intel NUC6CAYH 16GB RAM, 500 GB SSD & auf Proxmox 8.7. als VM

                      Node 20.19.0
                      Nodejs 20.19.0
                      npm 10.8.2
                      js-controller 7.0.6

                      1 Antwort Letzte Antwort
                      0
                      • iomountainI Offline
                        iomountainI Offline
                        iomountain
                        schrieb am zuletzt editiert von
                        #52

                        @karstent sagte in Script Xiaomi Battery leer ?:

                        Und wie bekommst Du diese Nachricht das die Batterien sich leeren? Würde gerne das Script benutzen. Danke

                        Brauchst dir nur die Variable "Alarmtext" als Text, zum Beispiel mit Telegram, aufs Handy schicken.
                        Funktioniert bei mir 1 A

                        1 Antwort Letzte Antwort
                        0
                        • K Offline
                          K Offline
                          karstent
                          schrieb am zuletzt editiert von
                          #53

                          Ist das die Variable "Batterie.MiHomeBatterietausch"? Eine andere finde ich nicht.

                          iomountainI 1 Antwort Letzte Antwort
                          0
                          • K karstent

                            Ist das die Variable "Batterie.MiHomeBatterietausch"? Eine andere finde ich nicht.

                            iomountainI Offline
                            iomountainI Offline
                            iomountain
                            schrieb am zuletzt editiert von
                            #54

                            @karstent die Variable "Alarmtext" aus dem Blockly von @MyzerAT oder @Negalein

                            1 Antwort Letzte Antwort
                            0
                            • K karstent

                              @ilovegym
                              Und wie bekommst Du diese Nachricht das die Batterien sich leeren? Würde gerne das Script benutzen. Danke

                              ? Offline
                              ? Offline
                              Ein ehemaliger Benutzer
                              schrieb am zuletzt editiert von
                              #55

                              @karstent sagte in Script Xiaomi Battery leer ?:

                              @ilovegym
                              Und wie bekommst Du diese Nachricht das die Batterien sich leeren? Würde gerne das Script benutzen. Danke

                              Ich triggere das Objekt javascript.0.Batterie.MiHomeBatterietausch ( habe da noch mehr, -FritzBatterietausch, etc..) mit einem anderen Script, das mir den Wert dann als Message über Telegram schickt.

                              1 Antwort Letzte Antwort
                              0
                              • iomountainI Offline
                                iomountainI Offline
                                iomountain
                                schrieb am zuletzt editiert von
                                #56

                                @karstent so sieht es bei mir aus:
                                5c518edc-94eb-4cf4-91ce-b130ecbd982d-image.png

                                1 Antwort Letzte Antwort
                                0
                                • ? Ein ehemaliger Benutzer

                                  Hi,
                                  ich verwende dafür dieses Javascript, das alle xiaomi-batterie States scannt und dann in einen Datenpunkt schreibt, wo die Batterie leer ist.
                                  Funktioniert auch prima mit fritzdect, muss nur der State geändert werden.

                                  const idVis = 'Batterie.MiHomeBatterietausch';
                                  const batt = $('mihome.0.*.percent');
                                  
                                  createState(idVis, '', {type: 'string'});
                                  
                                  function lowBatt() {
                                  	var low = [];
                                  	batt.each(function (id, i) {
                                  	if(getState(id).val < 30) {
                                  			id = id.split('.');
                                  			id = 'mihome.0.' + id[2] + '.' + id[3];
                                  			low.push(getObject(id).common.name); // Geräte-Name
                                  		}	
                                  	});
                                  	setState(idVis, low.join(',<br>'), true);		
                                  }
                                  
                                  schedule('0 * * * *', lowBatt); // jede volle Stunde
                                  
                                  
                                  
                                  P Offline
                                  P Offline
                                  passuff
                                  schrieb am zuletzt editiert von passuff
                                  #57

                                  @ilovegym sagte in Script Xiaomi Battery leer ?:

                                  Hi,
                                  ich verwende dafür dieses Javascript, das alle xiaomi-batterie States scannt und dann in einen Datenpunkt schreibt, wo die Batterie leer ist.
                                  Funktioniert auch prima mit fritzdect, muss nur der State geändert werden.

                                  const idVis = 'Batterie.MiHomeBatterietausch';
                                  const batt = $('mihome.0.*.percent');
                                  
                                  createState(idVis, '', {type: 'string'});
                                  
                                  function lowBatt() {
                                  	var low = [];
                                  	batt.each(function (id, i) {
                                  	if(getState(id).val < 30) {
                                  			id = id.split('.');
                                  			id = 'mihome.0.' + id[2] + '.' + id[3];
                                  			low.push(getObject(id).common.name); // Geräte-Name
                                  		}	
                                  	});
                                  	setState(idVis, low.join(',<br>'), true);		
                                  }
                                  
                                  schedule('0 * * * *', lowBatt); // jede volle Stunde
                                  
                                  
                                  

                                  Vielen Dank für das Skript. Ich wollte es neben mihome ach für meine Homematic Komponenten einsetzen. Dazu habe ich es wie folgt geändert:


                                  const idVis = 'Batterie.HomematicBatterietausch';
                                  const batt = $('hm-rpc.0.OEQ19*.LOWBAT');

                                  createState(idVis, '', {type: 'string'});

                                  function lowBatt() {
                                  console.log('lowbat Homematic wird ausgeführt');
                                  var low = [];
                                  batt.each(function (id, i) {
                                  if(getState(id).val == true) {
                                  id = id.split('.');
                                  id = 'hm-rpc.0.' + id[2] + '.' + id[3];
                                  low.push(getObject(id).common.name); // Geräte-Name
                                  }
                                  });
                                  setState(idVis, low.join(',<br>'), true);
                                  }

                                  //schedule('*/5 * * * * *', lowBatt); // jeden Tag
                                  schedule('{"time":{"exactTime":true,"start":"18:00"},"period":{"days":1}}', lowBatt)


                                  Ich würde gerne abgesehen vom Gerätenamen noch den Raum in den Datenpunkt schreiben, da bei mir dieser aus der Homematic Nomenklatur nicht hervorgeht. Wie stelle ich das an?

                                  paul53P 1 Antwort Letzte Antwort
                                  0
                                  • P passuff

                                    @ilovegym sagte in Script Xiaomi Battery leer ?:

                                    Hi,
                                    ich verwende dafür dieses Javascript, das alle xiaomi-batterie States scannt und dann in einen Datenpunkt schreibt, wo die Batterie leer ist.
                                    Funktioniert auch prima mit fritzdect, muss nur der State geändert werden.

                                    const idVis = 'Batterie.MiHomeBatterietausch';
                                    const batt = $('mihome.0.*.percent');
                                    
                                    createState(idVis, '', {type: 'string'});
                                    
                                    function lowBatt() {
                                    	var low = [];
                                    	batt.each(function (id, i) {
                                    	if(getState(id).val < 30) {
                                    			id = id.split('.');
                                    			id = 'mihome.0.' + id[2] + '.' + id[3];
                                    			low.push(getObject(id).common.name); // Geräte-Name
                                    		}	
                                    	});
                                    	setState(idVis, low.join(',<br>'), true);		
                                    }
                                    
                                    schedule('0 * * * *', lowBatt); // jede volle Stunde
                                    
                                    
                                    

                                    Vielen Dank für das Skript. Ich wollte es neben mihome ach für meine Homematic Komponenten einsetzen. Dazu habe ich es wie folgt geändert:


                                    const idVis = 'Batterie.HomematicBatterietausch';
                                    const batt = $('hm-rpc.0.OEQ19*.LOWBAT');

                                    createState(idVis, '', {type: 'string'});

                                    function lowBatt() {
                                    console.log('lowbat Homematic wird ausgeführt');
                                    var low = [];
                                    batt.each(function (id, i) {
                                    if(getState(id).val == true) {
                                    id = id.split('.');
                                    id = 'hm-rpc.0.' + id[2] + '.' + id[3];
                                    low.push(getObject(id).common.name); // Geräte-Name
                                    }
                                    });
                                    setState(idVis, low.join(',<br>'), true);
                                    }

                                    //schedule('*/5 * * * * *', lowBatt); // jeden Tag
                                    schedule('{"time":{"exactTime":true,"start":"18:00"},"period":{"days":1}}', lowBatt)


                                    Ich würde gerne abgesehen vom Gerätenamen noch den Raum in den Datenpunkt schreiben, da bei mir dieser aus der Homematic Nomenklatur nicht hervorgeht. Wie stelle ich das an?

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

                                    @passuff

                                    var raum = getObject(id, 'rooms').enumNames.join(', ');
                                    

                                    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

                                    P 1 Antwort Letzte Antwort
                                    0
                                    • paul53P paul53

                                      @passuff

                                      var raum = getObject(id, 'rooms').enumNames.join(', ');
                                      
                                      P Offline
                                      P Offline
                                      passuff
                                      schrieb am zuletzt editiert von
                                      #59

                                      @paul53 sagte in Script Xiaomi Battery leer ?:

                                      @passuff

                                      var raum = getObject(id, 'rooms').enumNames.join(', ');
                                      

                                      Wo muss das hin? Ich bin blutiger Anfänger und habe bisher nur blockly code generiert.

                                      Mein erster Versuch schlug direkt fehl.

                                      paul53P 1 Antwort Letzte Antwort
                                      0
                                      • P passuff

                                        @paul53 sagte in Script Xiaomi Battery leer ?:

                                        @passuff

                                        var raum = getObject(id, 'rooms').enumNames.join(', ');
                                        

                                        Wo muss das hin? Ich bin blutiger Anfänger und habe bisher nur blockly code generiert.

                                        Mein erster Versuch schlug direkt fehl.

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

                                        @passuff sagte:

                                        Wo muss das hin?

                                        Wie willst Du die Räume anzeigen ? Zusammen mit dem Kanalnamen (davor / dahinter) oder getrennt ?

                                        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

                                        P 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @passuff sagte:

                                          Wo muss das hin?

                                          Wie willst Du die Räume anzeigen ? Zusammen mit dem Kanalnamen (davor / dahinter) oder getrennt ?

                                          P Offline
                                          P Offline
                                          passuff
                                          schrieb am zuletzt editiert von
                                          #61

                                          @paul53 Kanalname + Raum wäre super

                                          paul53P 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

                                          670

                                          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