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.5k

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

  • 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
    #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

                      456

                      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