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. ioBroker Allgemein
  4. Adapter hm-rpc Alarm Objekte

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    325

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

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    791

Adapter hm-rpc Alarm Objekte

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
15 Beiträge 3 Kommentatoren 1.4k Aufrufe
  • Ä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.
  • foxriver76F Offline
    foxriver76F Offline
    foxriver76
    Developer
    schrieb am zuletzt editiert von
    #6

    Im Objekt stehen doch die Typinformationen drin: obj.native.TYPE

    {
      "_id": "hm-rpc.0.OEQ0313814",
      "type": "device",
      "common": {
        "name": "Keymatic Haustür",
        "icon": "/icons/14_hm-sec-key_thumb.png"
      },
      "native": {
        "ADDRESS": "OEQ0313814",
        "CHILDREN": [
          "OEQ0313814:0",
          "OEQ0313814:1"
        ],
        "FIRMWARE": "2.5",
        "FLAGS": 1,
        "INTERFACE": "PEQ0174423",
        "PARAMSETS": [
          "MASTER"
        ],
        "PARENT": "",
        "RF_ADDRESS": 5718645,
        "ROAMING": 0,
        "RX_MODE": 2,
        "TYPE": "HM-Sec-Key-S",
        "UPDATABLE": 0,
        "VERSION": 7
      },
      "from": "system.adapter.hm-rega.0",
      "ts": 1548444115252,
      "acl": {
        "object": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      }
    }
    
    

    Videotutorials & mehr

    Hier könnt ihr mich unterstützen.

    1 Antwort Letzte Antwort
    0
    • cashC Offline
      cashC Offline
      cash
      Most Active
      schrieb am zuletzt editiert von
      #7

      Das stimmt. Nur der Auslöser ist bei einer LOWBAT Meldung doch dieser Datenpunkt?

      Ich frage mit

      var cacheSelectorLOWBAT  = $('channel[state.id=hm-rpc.0.*.0.LOWBAT_ALARM$]');
      

      Ich glaube da liefert mir obj.native.TYPE nichts. Werde das aber nochmal testen. Ansonsten wäre es halt perfekt wenn dieser TYPE auch unter LOWBAT_ALARM auftauchen würde.

      1 Antwort Letzte Antwort
      0
      • cashC Offline
        cashC Offline
        cash
        Most Active
        schrieb am zuletzt editiert von
        #8

        Kriege ein undefined wenn ich es versuche:

        ! ````
        var logging = true;
        var debugging = true;
        ! //var _device = 'All';
        var cacheSelectorLOWBAT = $('channel[state.id=hm-rpc.0.*.0.LOWBAT_ALARM$]');
        ! function countLowbat(obj) {
        // Setzt die Zähler vor dem Durchlauf aller Elemente *.LOWBAT auf 0
        var moeglicheLOWBAT = 0;
        var LOWBAT = 0;
        var textLOWBAT = [];

        cacheSelectorLOWBAT.each(function (id, i) {                         // Schleife für jedes gefundenen Element *.LOWBAT
            var status = getState(id).val;                                  // Zustand *.LOWBAT abfragen (jedes Element)
            var obj    = getObject(id);
            var Bezeichnung =  getObject(id).common.name.substr(0, obj.common.name.indexOf(':'));
            var ID_Name = id.split('.')[2];
            var test = obj.native.TYPE
            if (status === true) {      // wenn Zustand = true, dann wird die Anzahl der Geräte hochgezählt
                ++LOWBAT;
                textLOWBAT.push(ID_Name + ' ' +Bezeichnung);                           // Zu Array hinzufügen
                _message_tmp = _message_tmp +ID_Name + ' ' +Bezeichnung+'\n';
        
            }  
            ++moeglicheLOWBAT;                                        // Zählt die Anzahl der vorhandenen Geräte unabhängig vom Status
            if(debugging){
                log('Geräte Nr. ' + i + ': ' +ID_Name +' '+ Bezeichnung + ': ' + status +test);
            }
        
        }); 
        

        ! // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon LOWBAT zutreffend) ausgegeben
        if(LOWBAT > 0){
        if(logging){
        log('Anzahl möglicher Geräte mit Batteriewarnung ' + moeglicheLOWBAT +' Stück, davon Geräte mit LOWBAT: '+LOWBAT + ' Stück');
        log('Betroffene Geräte: ' + textLOWBAT.join(', '));

           }
        
        }
        

        }

        ! //beim Start
        countLowbat();
        ! ````

        1 Antwort Letzte Antwort
        0
        • foxriver76F Offline
          foxriver76F Offline
          foxriver76
          Developer
          schrieb am zuletzt editiert von
          #9

          Ja weil das nur im Objekt des Channels drin steht, probier es mal so:

          on({id: 'hm-rpc.1.000393C99B9EDF.0.LOW_BAT_ALARM', val: 1, ack: true}, obj => {
              getObject(obj.id.substring(0, obj.id.lastIndexOf('.') - 2), (err, _obj) => {
                  log(`Batterie von ${_obj.common.name} (${_obj.native.TYPE})  leer`, 'warn');
              });
          });
          

          Videotutorials & mehr

          Hier könnt ihr mich unterstützen.

          1 Antwort Letzte Antwort
          0
          • foxriver76F Offline
            foxriver76F Offline
            foxriver76
            Developer
            schrieb am zuletzt editiert von
            #10

            Ich habe diesbezüglich noch Fixes vorgenommen in REGA und RPC. RPC ignoriert nun den stateChange (bestätigen von Servicemeldungen) was vorher zu einer Fehlermeldung geführt hat. Und Rega kann jetzt auch für alle anderen Typen als rfd die Servicemeldungen bestätigen, da war noch ein kleiner Bug drin. Entsprechend REGA 2.2.1, RPC 1.9.5

            Videotutorials & mehr

            Hier könnt ihr mich unterstützen.

            1 Antwort Letzte Antwort
            0
            • foxriver76F Offline
              foxriver76F Offline
              foxriver76
              Developer
              schrieb am zuletzt editiert von
              #11

              @cash:

              Kriege ein undefined wenn ich es versuche:

              ! ````
              var logging = true;
              var debugging = true;
              ! //var _device = 'All';
              var cacheSelectorLOWBAT = $('channel[state.id=hm-rpc.0.*.0.LOWBAT_ALARM$]');
              ! function countLowbat(obj) {
              // Setzt die Zähler vor dem Durchlauf aller Elemente *.LOWBAT auf 0
              var moeglicheLOWBAT = 0;
              var LOWBAT = 0;
              var textLOWBAT = [];

              cacheSelectorLOWBAT.each(function (id, i) {                         // Schleife für jedes gefundenen Element *.LOWBAT
                  var status = getState(id).val;                                  // Zustand *.LOWBAT abfragen (jedes Element)
                  var obj    = getObject(id);
                  var Bezeichnung =  getObject(id).common.name.substr(0, obj.common.name.indexOf(':'));
                  var ID_Name = id.split('.')[2];
                  var test = obj.native.TYPE
                  if (status === true) {      // wenn Zustand = true, dann wird die Anzahl der Geräte hochgezählt
                      ++LOWBAT;
                      textLOWBAT.push(ID_Name + ' ' +Bezeichnung);                           // Zu Array hinzufügen
                      _message_tmp = _message_tmp +ID_Name + ' ' +Bezeichnung+'\n';
                     
                   
                  }  
                  ++moeglicheLOWBAT;                                        // Zählt die Anzahl der vorhandenen Geräte unabhängig vom Status
                  if(debugging){
                      log('Geräte Nr. ' + i + ': ' +ID_Name +' '+ Bezeichnung + ': ' + status +test);
                  }
                                                               
              }); 
              

              ! // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon LOWBAT zutreffend) ausgegeben
              if(LOWBAT > 0){
              if(logging){
              log('Anzahl möglicher Geräte mit Batteriewarnung ' + moeglicheLOWBAT +' Stück, davon Geräte mit LOWBAT: '+LOWBAT + ' Stück');
              log('Betroffene Geräte: ' + textLOWBAT.join(', '));

                 }
                 
              }
              

              }

              ! //beim Start
              countLowbat();
              ! ```` `

              const logging = true;
              const debugging = true;
              
              //var _device = 'All'; 
              const cacheSelectorLOWBAT  = $('channel[state.id=hm-rpc.0.*.0.LOWBAT_ALARM$]');
              
              function countLowbat(obj) {
                 // Setzt die Zähler vor dem Durchlauf aller Elemente *.LOWBAT auf 0
                 let moeglicheLOWBAT = 0;
                 let LOWBAT = 0;
                 const textLOWBAT      = [];
              
                  cacheSelectorLOWBAT.each(function (id, i) {                         // Schleife für jedes gefundenen Element *.LOWBAT
                      const status = getState(id).val;                                  // Zustand *.LOWBAT abfragen (jedes Element)
                      const obj    = getObject(id);
                      const Bezeichnung =  getObject(id).common.name.substr(0, obj.common.name.indexOf(':'));
                      const ID_Name = id.split('.')[2];
                      const test = getObject(id.substring(0, id.lastIndexOf('.') - 2)).native.TYPE;
                      if (status === true) {      // wenn Zustand = true, dann wird die Anzahl der Geräte hochgezählt
                          ++LOWBAT;
                          textLOWBAT.push(ID_Name + ' ' +Bezeichnung);                           // Zu Array hinzufügen
                          const _message_tmp = _message_tmp + ID_Name + ' ' +Bezeichnung+'\n';
                      }  
                      ++moeglicheLOWBAT;                                        // Zählt die Anzahl der vorhandenen Geräte unabhängig vom Status
                      if(debugging){
                          log('Geräte Nr. ' + i + ': ' + ID_Name + ' '+ Bezeichnung + ': ' + status + ' ' + test);
                      }
              
                  }); 
              
                  // Schleife ist durchlaufen. Im Log wird der aktuelle Status (Anzahl, davon LOWBAT zutreffend) ausgegeben
                  if(LOWBAT > 0){
                     if(logging){
                          log('Anzahl möglicher Geräte mit Batteriewarnung ' + moeglicheLOWBAT +' Stück, davon Geräte mit LOWBAT: '+LOWBAT + ' Stück');
                          log('Betroffene Geräte: ' + textLOWBAT.join(', '));
              
                     }
              
                  }
              
              }
              
              //beim Start
              countLowbat();
              

              Videotutorials & mehr

              Hier könnt ihr mich unterstützen.

              1 Antwort Letzte Antwort
              0
              • cashC Offline
                cashC Offline
                cash
                Most Active
                schrieb am zuletzt editiert von
                #12

                So noch etwas probiert und es sieht vielversprechend aus.

                1407_2be706a6-0d39-42cd-979c-9556322d2d00.jpeg

                So sieht die Meldung derzeit aus. Noch ein wenig Feintuning dann veröffentliche ich das Script mal. Wenn alles klappt sollte dann bei einer LOWBAt Meldung eine Push verschickt werden mit der Info welche Batterie man braucht.

                Deine Verbesserung guck ich mir mal an. Verstehe ich das richtig das ich wenn ich den State sticky_unread_Alarm auf 2 in iobroker setze die Servicemeldung in der ccu bestätige?

                Das wäre perfekt. Die anderen Meldungen verschwinden ja sowieso automatisch…

                1 Antwort Letzte Antwort
                0
                • foxriver76F Offline
                  foxriver76F Offline
                  foxriver76
                  Developer
                  schrieb am zuletzt editiert von
                  #13

                  Ja Meldungen kannst du bestätigen damit, sogar wenn in der CCU die Schaltfläche ausgegraut ist soweit ich weiß

                  Videotutorials & mehr

                  Hier könnt ihr mich unterstützen.

                  1 Antwort Letzte Antwort
                  0
                  • E Offline
                    E Offline
                    excalibur270
                    schrieb am zuletzt editiert von
                    #14

                    @cash:

                    So noch etwas probiert und es sieht vielversprechend aus.

                    2BE706A6-0D39-42CD-979C-9556322D2D00.jpeg

                    So sieht die Meldung derzeit aus. Noch ein wenig Feintuning dann veröffentliche ich das Script mal. Wenn alles klappt sollte dann bei einer LOWBAt Meldung eine Push verschickt werden mit der Info welche Batterie man braucht.

                    Deine Verbesserung guck ich mir mal an. Verstehe ich das richtig das ich wenn ich den State sticky_unread_Alarm auf 2 in iobroker setze die Servicemeldung in der ccu bestätige?

                    Das wäre perfekt. Die anderen Meldungen verschwinden ja sowieso automatisch… `
                    Das wäre super wenn du das Script veröffentlichst.

                    1 Antwort Letzte Antwort
                    0
                    • cashC Offline
                      cashC Offline
                      cash
                      Most Active
                      schrieb am zuletzt editiert von
                      #15

                      Ich habe das Script unter

                      viewtopic.php?f=21&t=21651

                      veröffentlicht.

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

                      470

                      Online

                      32.9k

                      Benutzer

                      83.0k

                      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