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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. DECT Telefonat erkennen - Alexa Ruhe bei Gespräch

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

DECT Telefonat erkennen - Alexa Ruhe bei Gespräch

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
communication
14 Beiträge 2 Kommentatoren 954 Aufrufe 2 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.
  • StrathColeS Offline
    StrathColeS Offline
    StrathCole
    schrieb am zuletzt editiert von
    #2

    Meine Idee dazu wäre:

    tr-064.0.callmonitor.connect.timestamp und tr-064.0.callmonitor.lastCall.timestamp zu vergleichen.
    Wenn der Timestamp von lastCall >= dem von connect ist, müsste das aktuelle Gespräch beendet sein.

    SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

    F 1 Antwort Letzte Antwort
    0
    • StrathColeS StrathCole

      Meine Idee dazu wäre:

      tr-064.0.callmonitor.connect.timestamp und tr-064.0.callmonitor.lastCall.timestamp zu vergleichen.
      Wenn der Timestamp von lastCall >= dem von connect ist, müsste das aktuelle Gespräch beendet sein.

      F Offline
      F Offline
      FabianHM
      schrieb am zuletzt editiert von
      #3

      @StrathCole
      Die Idee klingt gut, Dankeschön!
      Ich habe folgendes Srcipt mal zum testen aktiviert:

      on({id: 'tr-064-community.0.callmonitor.connect.timestamp', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val > getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
          console.log('DECT Telefonat aktiv');
        }
        if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val <= getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
          console.log('DECT Telefonat beendet');
        }
      });
      
      StrathColeS 1 Antwort Letzte Antwort
      0
      • F FabianHM

        @StrathCole
        Die Idee klingt gut, Dankeschön!
        Ich habe folgendes Srcipt mal zum testen aktiviert:

        on({id: 'tr-064-community.0.callmonitor.connect.timestamp', change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val > getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
            console.log('DECT Telefonat aktiv');
          }
          if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val <= getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
            console.log('DECT Telefonat beendet');
          }
        });
        
        StrathColeS Offline
        StrathColeS Offline
        StrathCole
        schrieb am zuletzt editiert von
        #4

        @FabianHM
        Das wird nicht ganz funktionieren, denn dein "on" greift nur beim Connect, daher wird es nicht ausgeführt, wenn der Call beendet wird.

        SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

        F 1 Antwort Letzte Antwort
        0
        • StrathColeS Offline
          StrathColeS Offline
          StrathCole
          schrieb am zuletzt editiert von
          #5

          Schwierig wird es auch, wenn auf mehreren Leitungen gleichzeitig telefoniert wird. Beispiel:

          1. Telefonat begonnen -> Regel trifft zu
          2. Telefonat begonnen -> Regel trifft zu
          3. Telefonat begonnen -> Regel trifft nicht mehr zu, das 2. aktive Telefonat wird nicht mehr erkannt.

          SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

          1 Antwort Letzte Antwort
          0
          • StrathColeS StrathCole

            @FabianHM
            Das wird nicht ganz funktionieren, denn dein "on" greift nur beim Connect, daher wird es nicht ausgeführt, wenn der Call beendet wird.

            F Offline
            F Offline
            FabianHM
            schrieb am zuletzt editiert von
            #6

            @StrathCole
            Ja, bei uns werden eher die Varianten 1. und 2. auftreten.
            Damit sollte es funktionieren:

            on({id: new RegExp('tr-064-community\\.0\\.callmonitor\\.connect\\.timestamp' + "|" + 'tr-064-community\\.0\\.callmonitor\\.lastCall\\.timestamp'), change: "ne"}, function (obj) {
                if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val > getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
                console.log('DECT Telefonat aktiv');
              }
              if (getState("tr-064-community.0.callmonitor.lastCall.timestamp").val <= getState("tr-064-community.0.callmonitor.connect.timestamp").val) {
                console.log('DECT Telefonat beendet');
              }
            });
            

            Komisch dass diesen State bisher sonst keiner im Adapter vermisst hat....

            1 Antwort Letzte Antwort
            0
            • StrathColeS Offline
              StrathColeS Offline
              StrathCole
              schrieb am zuletzt editiert von
              #7

              Hier ein Skript, das funktioniert:

              let activeCalls = [];
              
              on('tr-064.0.callmonitor.connect.timestamp', function(obj) {
                  let caller = getState('tr-064.0.callmonitor.connect.caller').val;
                  let callee = getState('tr-064.0.callmonitor.connect.callee').val;
              
                  let time = obj.state.val;
              
                  let idx = activeCalls.findIndex(function(element) {
                      return (element.caller === caller && element.callee === callee);
                  });
              
                  if(idx === -1) {
                      activeCalls.push({
                          caller: caller,
                          callee: callee,
                          time: time
                      });
                  }
              
                  log('Active calls: ' + JSON.stringify(activeCalls));
              });
              
              on('tr-064.0.callmonitor.lastCall.timestamp', function(obj) {
                  let caller = getState('tr-064.0.callmonitor.lastCall.caller').val;
                  let callee = getState('tr-064.0.callmonitor.lastCall.callee').val;
              
                  let idx = activeCalls.findIndex(function(element) {
                      return (element.caller === caller && element.callee === callee);
                  });
                  if(idx != -1) {
                      activeCalls.splice(idx, 1);
                  }
              
                  log('Active calls: ' + JSON.stringify(activeCalls));
              });
              

              SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

              F 1 Antwort Letzte Antwort
              0
              • StrathColeS StrathCole

                Hier ein Skript, das funktioniert:

                let activeCalls = [];
                
                on('tr-064.0.callmonitor.connect.timestamp', function(obj) {
                    let caller = getState('tr-064.0.callmonitor.connect.caller').val;
                    let callee = getState('tr-064.0.callmonitor.connect.callee').val;
                
                    let time = obj.state.val;
                
                    let idx = activeCalls.findIndex(function(element) {
                        return (element.caller === caller && element.callee === callee);
                    });
                
                    if(idx === -1) {
                        activeCalls.push({
                            caller: caller,
                            callee: callee,
                            time: time
                        });
                    }
                
                    log('Active calls: ' + JSON.stringify(activeCalls));
                });
                
                on('tr-064.0.callmonitor.lastCall.timestamp', function(obj) {
                    let caller = getState('tr-064.0.callmonitor.lastCall.caller').val;
                    let callee = getState('tr-064.0.callmonitor.lastCall.callee').val;
                
                    let idx = activeCalls.findIndex(function(element) {
                        return (element.caller === caller && element.callee === callee);
                    });
                    if(idx != -1) {
                        activeCalls.splice(idx, 1);
                    }
                
                    log('Active calls: ' + JSON.stringify(activeCalls));
                });
                
                F Offline
                F Offline
                FabianHM
                schrieb am zuletzt editiert von
                #8

                @StrathCole
                Ich werde es heute Abend testen, Dankeschön für die Hilfe!

                F 1 Antwort Letzte Antwort
                0
                • F FabianHM

                  @StrathCole
                  Ich werde es heute Abend testen, Dankeschön für die Hilfe!

                  F Offline
                  F Offline
                  FabianHM
                  schrieb am zuletzt editiert von
                  #9

                  @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                  @StrathCole
                  Ich werde es heute Abend testen, Dankeschön für die Hilfe!

                  Die Erkennung der Anrufe funktioniert :-)
                  Was muss man abändern, damit die Log Einträge nicht immer doppelt angezeigt werden?

                  F 1 Antwort Letzte Antwort
                  0
                  • F FabianHM

                    @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                    @StrathCole
                    Ich werde es heute Abend testen, Dankeschön für die Hilfe!

                    Die Erkennung der Anrufe funktioniert :-)
                    Was muss man abändern, damit die Log Einträge nicht immer doppelt angezeigt werden?

                    F Offline
                    F Offline
                    FabianHM
                    schrieb am zuletzt editiert von FabianHM
                    #10

                    @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                    Was muss man abändern, damit die Log Einträge nicht immer doppelt angezeigt werden?

                    Ich habe das Script minimal auf meine Belange reduziert, verstehe aber weiterhin nicht, wieso die Logs immer doppelt aufgerufen werden:

                    let activeCalls = [];
                    
                    on('tr-064.0.callmonitor.connect.timestamp', function(obj) {
                    
                        let caller = getState('tr-064.0.callmonitor.connect.caller').val;
                    
                        let callee = getState('tr-064.0.callmonitor.connect.callee').val;    
                    
                        let idx = activeCalls.findIndex(function(element) {
                    
                            return (element.caller === caller && element.callee === callee);
                        });
                    
                     
                        if(idx === -1) {
                    
                            activeCalls.push({
                    
                                caller: caller,
                    
                                callee: callee           
                    
                            });
                    
                        }
                    
                        log('CallActive: Ja ');
                        setState(`javascript.0.Monitoring.FritzBox.CallActive`, true); 
                    
                    });
                    
                    
                    on('tr-064.0.callmonitor.lastCall.timestamp', function(obj) {
                    
                        let caller = getState('tr-064.0.callmonitor.lastCall.caller').val;
                    
                        let callee = getState('tr-064.0.callmonitor.lastCall.callee').val; 
                    
                        let idx = activeCalls.findIndex(function(element) {
                    
                            return (element.caller === caller && element.callee === callee);
                    
                        });
                    
                        if(idx != -1) {
                    
                            activeCalls.splice(idx, 1);
                        }
                       
                        log('CallActive: Nein ');
                        setState(`javascript.0.Monitoring.FritzBox.CallActive`, false); 
                    
                    });
                    

                    53692d94-d631-4619-b21e-24914fce5707-grafik.png

                    StrathColeS 1 Antwort Letzte Antwort
                    0
                    • F FabianHM

                      @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                      Was muss man abändern, damit die Log Einträge nicht immer doppelt angezeigt werden?

                      Ich habe das Script minimal auf meine Belange reduziert, verstehe aber weiterhin nicht, wieso die Logs immer doppelt aufgerufen werden:

                      let activeCalls = [];
                      
                      on('tr-064.0.callmonitor.connect.timestamp', function(obj) {
                      
                          let caller = getState('tr-064.0.callmonitor.connect.caller').val;
                      
                          let callee = getState('tr-064.0.callmonitor.connect.callee').val;    
                      
                          let idx = activeCalls.findIndex(function(element) {
                      
                              return (element.caller === caller && element.callee === callee);
                          });
                      
                       
                          if(idx === -1) {
                      
                              activeCalls.push({
                      
                                  caller: caller,
                      
                                  callee: callee           
                      
                              });
                      
                          }
                      
                          log('CallActive: Ja ');
                          setState(`javascript.0.Monitoring.FritzBox.CallActive`, true); 
                      
                      });
                      
                      
                      on('tr-064.0.callmonitor.lastCall.timestamp', function(obj) {
                      
                          let caller = getState('tr-064.0.callmonitor.lastCall.caller').val;
                      
                          let callee = getState('tr-064.0.callmonitor.lastCall.callee').val; 
                      
                          let idx = activeCalls.findIndex(function(element) {
                      
                              return (element.caller === caller && element.callee === callee);
                      
                          });
                      
                          if(idx != -1) {
                      
                              activeCalls.splice(idx, 1);
                          }
                         
                          log('CallActive: Nein ');
                          setState(`javascript.0.Monitoring.FritzBox.CallActive`, false); 
                      
                      });
                      

                      53692d94-d631-4619-b21e-24914fce5707-grafik.png

                      StrathColeS Offline
                      StrathColeS Offline
                      StrathCole
                      schrieb am zuletzt editiert von
                      #11

                      @FabianHM Scheinbar wird der timestamp 2x aktualisiert. Warum der Adapter bzw. die Fritz!Box das so macht, weiß ich nicht. Du könntest sicher den timestamp zwischenspeichern und das log nur ausgeben, wenn neuer timestamp > alter timestamp + 1000 oder so. Bei mir taucht er auch doppelt auf.

                      SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

                      F 1 Antwort Letzte Antwort
                      0
                      • StrathColeS StrathCole

                        @FabianHM Scheinbar wird der timestamp 2x aktualisiert. Warum der Adapter bzw. die Fritz!Box das so macht, weiß ich nicht. Du könntest sicher den timestamp zwischenspeichern und das log nur ausgeben, wenn neuer timestamp > alter timestamp + 1000 oder so. Bei mir taucht er auch doppelt auf.

                        F Offline
                        F Offline
                        FabianHM
                        schrieb am zuletzt editiert von
                        #12

                        @StrathCole

                        Ich habe gerade einen State im aktuellen Adapter gefunden, der genau meinen Bedarf unterstützt:
                        c9afd778-6f58-40c3-a3dc-4b024a7f72e2-grafik.png

                        der "toPauseState" wird und bleibt bei aktiven Telefonaten auf "connect", also genau was ich benötige :-)

                        Weißt Du vielleicht, was der untere State "toPauseState-10" für eine Bedeutung hat?

                        F 1 Antwort Letzte Antwort
                        0
                        • F FabianHM

                          @StrathCole

                          Ich habe gerade einen State im aktuellen Adapter gefunden, der genau meinen Bedarf unterstützt:
                          c9afd778-6f58-40c3-a3dc-4b024a7f72e2-grafik.png

                          der "toPauseState" wird und bleibt bei aktiven Telefonaten auf "connect", also genau was ich benötige :-)

                          Weißt Du vielleicht, was der untere State "toPauseState-10" für eine Bedeutung hat?

                          F Offline
                          F Offline
                          FabianHM
                          schrieb am zuletzt editiert von
                          #13

                          @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                          Weißt Du vielleicht, was der untere State "toPauseState-10" für eine Bedeutung hat?

                          Hat sich auch erledigt: toPauseState-10 => Wert für Nebenstelle **610 die den Anruf angenommen hat.

                          StrathColeS 1 Antwort Letzte Antwort
                          0
                          • F FabianHM

                            @FabianHM said in DECT Telefonat erkennen - Alexa Ruhe bei Gespräch:

                            Weißt Du vielleicht, was der untere State "toPauseState-10" für eine Bedeutung hat?

                            Hat sich auch erledigt: toPauseState-10 => Wert für Nebenstelle **610 die den Anruf angenommen hat.

                            StrathColeS Offline
                            StrathColeS Offline
                            StrathCole
                            schrieb am zuletzt editiert von
                            #14

                            @FabianHM Ist bei mir nicht ganz so einfach, da ein ISDN-Telefon an der Box hängt, es also nur eine Nebenstelle gibt, die aber wiederum auf mehrere Endnummern verteilt ;-)
                            Umso besser, wenns für dich so einfach zu lösen ist.

                            SolarWatt-Anlage mit 9,6 kWp – KOSTAL Plenticore Plus 10 – BYD B-Box HV 8,96 – Viessmann Vitocal 333g – Zehnder ComfoD 350 (Comfoair 350) mit RS232-Ethernet-Konverter

                            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

                            840

                            Online

                            32.7k

                            Benutzer

                            82.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