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. [gelöst] Fritzbox - Adapter; unbekannt = "### ? ###" lässt sich nicht verarbeiten

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[gelöst] Fritzbox - Adapter; unbekannt = "### ? ###" lässt sich nicht verarbeiten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
20 Beiträge 3 Kommentatoren 2.3k 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.
  • blauholstenB Offline
    blauholstenB Offline
    blauholsten
    Developer
    schrieb am zuletzt editiert von
    #4

    probier doch mal mit

    var str =  "### ? ###";
    
    if(str.test(nummer)){
           "tue dies tue das"
    }
    

    Entwickler vom: - Viessman Adapter
    - Alarm Adapter

    1 Antwort Letzte Antwort
    0
    • bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #5

      Deinen code versteh ich nicht.

      mfg


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • blauholstenB Offline
        blauholstenB Offline
        blauholsten
        Developer
        schrieb am zuletzt editiert von
        #6

        @bahnuhr:

        Deinen code versteh ich nicht.

        mfg `
        Die .test() Methode prüft einen String auf dessen Inhalt, und gibt dann true oder false zurück.

        von mir aus so

        var str =  "### ? ###";
        
        if(str.test(nummer)){
               log('ja');
        }
        else{
               log('nein');
        }
        

        Entwickler vom: - Viessman Adapter
        - Alarm Adapter

        1 Antwort Letzte Antwort
        0
        • bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #7

          @blauholsten:

          probier doch mal mit

          var str =  "### ? ###";
          
          if(str.test(nummer)){
                 "tue dies tue das"
          }
          ```` `  
          

          Es kommt Fehlermeldung:

          str.test is not a function


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          1 Antwort Letzte Antwort
          0
          • bahnuhrB Online
            bahnuhrB Online
            bahnuhr
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #8

            Müsste dies (wie oben im Code)

            if (nummer === "### ? ###") {
                log ("richtig");
            } else {
                log ("nein");
            }
            

            nicht das gleiche sein.

            Und dies klappt eben nicht.


            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
            Danke.
            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
            ScreenToGif :https://www.screentogif.com/downloads.html

            1 Antwort Letzte Antwort
            0
            • blauholstenB Offline
              blauholstenB Offline
              blauholsten
              Developer
              schrieb am zuletzt editiert von
              #9

              @bahnuhr:

              @blauholsten:

              probier doch mal mit

              var str =  "### ? ###";
              
              if(str.test(nummer)){
                     "tue dies tue das"
              }
              ```` `  
              

              Es kommt Fehlermeldung:

              str.test is not a function `

              Stimmt! Muss wohl so heissen….

              var str = /### ? ###/
              

              Kommt aber trotzdem false raus. Kann es sein das das "verbotene Zeichen" sind?

              Entwickler vom: - Viessman Adapter
              - Alarm Adapter

              1 Antwort Letzte Antwort
              0
              • bahnuhrB Online
                bahnuhrB Online
                bahnuhr
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #10

                habe mittlerweile folgendes festgestellt:

                Die Fritzbox übermittelt: "### ? ###"

                Hierbei ist die Leertaste mit dem charCode 160 !!! benannt.

                Im String ""### ? ###" ist der charCode der Leertaste 32 !!!

                Also unterschiedlicher Code für Leertaste.

                mfg


                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                Danke.
                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                ScreenToGif :https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                0
                • bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #11

                  wie vermutet landet dein Code auch bei Nein !!!

                    var str =  /### ? ###/;
                  
                  if(str.test(nummer)){
                         log('ja');
                  }
                  else{
                         log('nein');
                  }
                  

                  m.E. liegt es an der unterschiedlichen Behandlung der Leertaste.

                  mfg

                  D.Müller


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • blauholstenB Offline
                    blauholstenB Offline
                    blauholsten
                    Developer
                    schrieb am zuletzt editiert von
                    #12

                    Fehler gefunden:

                    var str =  /### \? ###/;
                    
                    if(str.test(nummer)){
                           log('ja');
                    }
                    else{
                           log('nein');
                    }
                    

                    Das geht

                    Entwickler vom: - Viessman Adapter
                    - Alarm Adapter

                    1 Antwort Letzte Antwort
                    0
                    • bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #13

                      bei mir geht es nicht.

                      … not a function


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      0
                      • bahnuhrB Online
                        bahnuhrB Online
                        bahnuhr
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #14

                        Also ich bleib jetzt bei meiner Lösung:

                        if (nummer === String.fromCharCode(35,35,35,160,63,160,35,35,35)) {  // charCode entspricht "### ? ###"
                            log ("richtig");
                        } else {
                            log ("nein");
                        }
                        

                        Die Fritzbox scheint die Leertaste anders zu übermitteln.

                        Und mit o.g. char… funktioniert es.

                        mfg


                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                        Danke.
                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                        ScreenToGif :https://www.screentogif.com/downloads.html

                        1 Antwort Letzte Antwort
                        0
                        • blauholstenB Offline
                          blauholstenB Offline
                          blauholsten
                          Developer
                          schrieb am zuletzt editiert von
                          #15

                          Jetzt schon:

                          var str =  /### \? ###/;
                          
                          if(str.test(nummer)){
                                 log('ja');
                          }
                          else{
                                 log('nein');
                          }
                          

                          Entwickler vom: - Viessman Adapter
                          - Alarm Adapter

                          1 Antwort Letzte Antwort
                          0
                          • bahnuhrB Online
                            bahnuhrB Online
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #16

                            blauholsten

                            Deine Lösung klappt nicht !!!

                            -> Es klappt mit deinem String

                            -> Es klappt aber nicht mit dem String der die Fritzbox übermittelt.

                            Diese übermittelt als String einen anderen CharCode für die Leertaste.

                            Probier es mit dem Handy aus und schalt die Tel.Nr. aus.

                            mfg

                            Dieter


                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            1 Antwort Letzte Antwort
                            0
                            • blauholstenB Offline
                              blauholstenB Offline
                              blauholsten
                              Developer
                              schrieb am zuletzt editiert von
                              #17

                              Okay!

                              PS Skript bitte als gelöst markieren.

                              Entwickler vom: - Viessman Adapter
                              - Alarm Adapter

                              1 Antwort Letzte Antwort
                              0
                              • bahnuhrB Online
                                bahnuhrB Online
                                bahnuhr
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #18

                                Anbei das Script wie es nun bei mir läuft komplett:

                                ! ````
                                // Telefon Anzeige in vis
                                ! // Variablen
                                var Anrufer_Nr = "fritzbox.0.calls.ringActualNumber"; // Nr. des Anrufers
                                var Anrufer_Name = "tr-064.0.callmonitor.inbound.callerName"; // Name des Anrufers
                                var Sprache = getState("hm-rega.0.29816").val; // Auto Sprachausgabe
                                var request = require ('request');
                                ! function weiter(obj) {
                                // Name ermitteln
                                var name = "";
                                ! if (obj.state.val === String.fromCharCode(35,35,35,160,63,160,35,35,35)) { // undefinierte Rufnummern, charCode entspricht "### ? ###"
                                name = "Unbekannt"; // undefinierte Rufnummern
                                } else {
                                name = getState(Anrufer_Name).val;
                                }
                                ! // Bild ermitteln
                                switch (name) {
                                case 'Dieter Arbeit':
                                name = "Dieter";
                                setState('javascript.0.Status.Telefon.Bild_Nr', 1);
                                break;
                                default:
                                setState('javascript.0.Status.Telefon.Bild_Nr', 0);
                                break;
                                }
                                ! if (name === "") {
                                name = "Unbekannt";
                                } else {
                                setState('javascript.0.Status.Telefon.Name', name);
                                }
                                setState('javascript.0.Status.Telefon.Nummer', obj.state.val);

                                // Sprachausgabe
                                    if (Sprache === true) {
                                        request('http://192.168.243.76:50000/track=tos-computer-03.wav');
                                        setTimeout(setState('sayit.0.tts.text', name + " ruft an."), 3000);
                                    }
                                
                                //Telegram und log
                                    if (name ==='Unbekannt') {
                                        sendTo('telegram', "Telefon zu Hause:\n Unbekannte Nummer ruft an.");
                                        log("Telefon zu Hause: Unbekannte Nummer ruft an.");
                                    } else {
                                        sendTo('telegram', "Telefon zu Hause:\n" + name + ", " + obj.state.val + ", ruft an.");     
                                        log("Telefon zu Hause: " + name + ", " + obj.state.val + ", ruft an.");     
                                    }
                                
                                View_change ('Telefon', 0); 
                                setTimeout(function() {
                                        View_change ('Titel', 0);
                                        setState('javascript.0.Status.Telefon.Name', "");
                                        setState('javascript.0.Status.Telefon.Nummer', "");
                                        setState('javascript.0.Status.Telefon.Bild_Nr', 0);
                                }, 30000); 
                                

                                ! }
                                ! on({id: Anrufer_Nr, change: "ne"}, function(obj) {
                                log ('Auslöser Telefon');
                                if (obj.state.val !== '') {
                                weiter(obj);
                                }
                                });
                                ! ````


                                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                Danke.
                                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                ScreenToGif :https://www.screentogif.com/downloads.html

                                1 Antwort Letzte Antwort
                                0
                                • ruhr70R Offline
                                  ruhr70R Offline
                                  ruhr70
                                  schrieb am zuletzt editiert von
                                  #19

                                  das "andere Leerzeichen" kommt nicht von der Fritzbox, sondern vom Adapter.

                                  Ein Leerzeichen wird gegen ein nbsp; (non breaking space) ausgetauscht, damit die Länge bei html mit Festbreitenschrift passt.

                                  Beim Mac erzeugt man ein nbsp; mit alt+Leertaste (aus dem Gedächtnis)

                                  im Javascripteditor wird das dann auch grafisch angezeigt

                                  Gesendet von iPhone mit Tapatalk

                                  Adapter: Fritzbox, Unify Circuit
                                  Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                                  1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB Online
                                    bahnuhrB Online
                                    bahnuhr
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #20

                                    Vom Adapter - hab ich mir schon gedacht.

                                    Trotzdem muss man das erst einmal wissen. Man versucht halt mit der normalen Leertaste eine if abfrage zu basteln und ist fast am verzweifeln warum dies nicht klappt.

                                    Danke für den Tipp mit dem "alt + Leertaste".

                                    Muss ich mal versuchen.

                                    Wieder was gelernt.

                                    Mit freundlichen Grüßen


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    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

                                    691

                                    Online

                                    32.6k

                                    Benutzer

                                    82.2k

                                    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