Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. homematic hmip-dbb mit Alexasprachausgabe als Türgong

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    homematic hmip-dbb mit Alexasprachausgabe als Türgong

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Kurvenschreck last edited by

      @Nico-Ludwig sagte:

      aber nicht auf Tastendruck.

      Kommt der Tastendruck in ioBroker an, d.h. wird bei Betätigung der Zeitstempel von PRESS_SHORT aktualisiert ?

      1 Reply Last reply Reply Quote 0
      • K
        Kurvenschreck last edited by

        Wir teste ich das im log?

        @paul53 said in homematic hmip-dbb mit Alexasprachausgabe als Türgong:

        Tastendruck

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Kurvenschreck last edited by

          @Kurvenschreck sagte:

          Wir teste ich das im log?

          Im Tab "Objekte" mit dem Mauszeiger über den Wert fahren, dann werden auch Zeitstempel, letzte Änderung ... angezeigt.

          1 Reply Last reply Reply Quote 0
          • K
            Kurvenschreck last edited by

            Gerade getestet, der Zeitstempel steht noch auf 15 Uhr obwohl ich den Taster mehrmals danach gedrückt hatte.

            paul53 1 Reply Last reply Reply Quote 0
            • K
              Kurvenschreck last edited by

              Korrigiere der Zeitstempel steht noch auf dem 3.5.2020

              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Kurvenschreck last edited by paul53

                @Kurvenschreck sagte in homematic hmip-dbb mit Alexasprachausgabe als Türgong:

                Gerade getestet, der Zeitstempel steht noch auf 15 Uhr obwohl ich den Taster mehrmals danach gedrückt hatte.

                Dann hilft eine Dummy-Programm auf der CCU (Forum-Suche) oder versuche es mit folgendem Script, das nur einmal kurz ausgeführt werden muss:

                const channel = '001498A99876B4:1';
                const dp = 'PRESS_SHORT';
                 
                sendTo('hm-rpc.3', 'reportValueUsage', {ID: channel, paramType: dp, params: 1}, res => {
                    log(JSON.stringify(res));
                });
                
                K 1 Reply Last reply Reply Quote 0
                • K
                  Kurvenschreck @paul53 last edited by

                  @paul53 Vielen Dank ich teste gerade.

                  haselchen 1 Reply Last reply Reply Quote 0
                  • haselchen
                    haselchen Most Active @Kurvenschreck last edited by

                    @Kurvenschreck

                    Auf jedenfall den Dummy anlegen in der CCU und dann würde ich sagen musste auf "aktualisiert" triggern ( nicht auf wahr).

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @haselchen last edited by paul53

                      @haselchen sagte:

                      Auf jedenfall den Dummy anlegen in der CCU und dann würde ich sagen musste auf "aktualisiert" triggern ( nicht auf wahr).

                      Das Script sollte das Gleiche machen wie ein Dummy-Programm, wobei ich allerdings nicht weiß, ob es auch bei HmIP funktioniert. "PRESS_SHORT" ist immer true, weshalb man auch auf "wahr" triggern kann.

                      haselchen O 2 Replies Last reply Reply Quote 0
                      • haselchen
                        haselchen Most Active @paul53 last edited by

                        @paul53

                        Habe die gleiche Konstellation wie der TE und da es bei mir so geht , gebe ich das natürlich so weiter 😀
                        Aber ich probiere das mit "true" auch mal.
                        Man lernt nie aus.

                        1 Reply Last reply Reply Quote 0
                        • O
                          ostseeskipper @paul53 last edited by

                          @paul53 und @haselchen
                          Auch wenn der Thread 2 Jahre her ist,
                          Habe auf der Raspimatic das Dummyprogramm angelegt, dann hat es funktioniert, seit dem stehen die Datenpunkte im ioBroker alle auf True
                          Die gehen jedoch nicht zurück auf "false"😕
                          Die Zeitstempel jedenfalls ändern sich.
                          Muss ich am trigger was ändern wenn ich auf den Zeitstempel gehe?

                          const idAlexa_Echo1 = 'alexa2.0.Echo-Devices.G0922MxxxxxxxxGU.Commands.speak'; // Alexa Textausgabe
                          const idAlexa_Echo1_Vol = 'alexa2.0.Echo-Devices.G0922MxxxxxxxxGU.Commands.speak-volume'; // Alexa Lautstärke SOLL
                          
                          const idKlingelReni_L = 'hm-rpc.0.00149F299F0548.1.PRESS_LONG'; // Klingel Reni Long
                          const idKlingelReni_S = 'hm-rpc.0.00149F299F0548.1.PRESS_SHORT'; // Klingel Reni Short
                          const idKlingelTextReni = '0_userdata.0.Haus.TuerklinelReni'; // Textausgabe für Reni
                          
                          const idKlingelDreas_L = 'hm-rpc.0.00149F299F0548.1.PRESS_LONG'; // Klingel Dreas
                          const idKlingelDreas_S = 'hm-rpc.0.00149F299F0548.1.PRESS_SHORT'; // Klingel Dreas
                          const idKlingelTextDreas = '0_userdata.0.Haus.TuerklingelDreas'; // Textausgabe für Dreas
                          
                          function klingelReni(dp) {                 // function = js befehl / frei vergebener Name für die Funktion / dp = temporäre Variable für die funktion
                          
                          let alexa_vol =  getState(idAlexa_Echo1_Vol).val;
                          
                                      setState(idAlexa_Echo1_Vol, 40,false);
                                      setState(idAlexa_Echo1,getState(idKlingelTextReni).val,false);
                                      setState(idAlexa_Echo1_Vol, alexa_vol,false);
                             }
                          
                          on([idKlingelReni_L,idKlingelReni_S], function(dp) { // Triggern bei Wertänderung
                          
                             klingelReni(dp.state.val); //    
                          
                          //log(("Klingel ist: " + dp.state.val),"info");
                          
                          });
                          
                          
                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @ostseeskipper last edited by

                            @ostseeskipper sagte: Muss ich am trigger was ändern wenn ich auf den Zeitstempel gehe?

                            Ja.

                            on({id: [idKlingelReni_L,idKlingelReni_S]}, function() { // Triggern bei Aktualisierung
                                klingelReni();
                            });
                            
                            O 2 Replies Last reply Reply Quote 1
                            • O
                              ostseeskipper @paul53 last edited by

                              @paul53 👍
                              Danke, echt genial das du hier bist und hilfst.
                              Weisst du zufällig warum die Taster sich nicht auf "false" zurücksetzen ?

                              1 Reply Last reply Reply Quote 0
                              • O
                                ostseeskipper @paul53 last edited by

                                @paul53
                                Eine Frage: Möchte noch eine 2te Klingel einbauen.
                                Wie bekomme im Trigger heraus welches der 4 Events der Auslöser war?

                                O 1 Reply Last reply Reply Quote 0
                                • O
                                  ostseeskipper @ostseeskipper last edited by

                                  @paul53
                                  letzte Frage konnte ich inzwischen selbst lösen, hattest mir damals auch schon geholfen, den Auslöser des Triggers herauszufinden.

                                  Falls Einsteiger gleiche Herausforderung haben, so siehts nun aus.
                                  Die idxxxx müssen natürlich Datenpunkten zugewiesen ahben

                                  on({id: [idKlingelReni_L, idKlingelReni_S, idKlingelDreas_L, idKlingelDreas_S]}, function(obj) { // Trigger bei Aktualisierung
                                  
                                      //log('Auslöser: ' + obj.id,"debug");
                                      let alexaEcho1_vol =  getState(idAlexa_Echo1_Vol).val; // ursprungsvolume
                                      let alexaHandy1_vol =  getState(idAlexa_Handy1_Vol).val; // ursprungsvolume
                                  
                                      setState(idAlexa_Echo1_Vol, 60,false);
                                      
                                          if( obj.id == idKlingelReni_L || obj.id == idKlingelReni_S) {
                                  
                                              setState(idAlexa_Echo1,getState(idKlingelTextReni).val,false);
                                              setState(idAlexa_Handy1,getState(idKlingelTextReni).val,false);
                                          }
                                          
                                          if( obj.id == idKlingelDreas_L || obj.id == idKlingelDreas_S) {
                                  
                                              setState(idAlexa_Echo1,getState(idKlingelTextDreas).val,false);
                                              setState(idAlexa_Handy1,getState(idKlingelTextDreas).val,false);
                                          }
                                  
                                      setState(idAlexa_Echo1_Vol, alexaEcho1_vol,false); // Ursprungsvolume zurücksetzen
                                      setState(idAlexa_Handy1_Vol, alexaHandy1_vol,false); // Ursprungsvolume zurücksetzen
                                  
                                          }); 
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  639
                                  Online

                                  32.0k
                                  Users

                                  80.5k
                                  Topics

                                  1.3m
                                  Posts

                                  4
                                  16
                                  573
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo