Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. TR-064 Fritzbox Anrufbeantworter

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    TR-064 Fritzbox Anrufbeantworter

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

      @chris299

      ok, vielen Dank.

      Schau ich mir mal an.

      1 Reply Last reply Reply Quote 0
      • falke69
        falke69 @chris299 last edited by

        @chris299

        ich habe jetzt mal das Script installiert. im Original von Dir funktioniert zumindest der Start ohne Probleme. Sobald ich aber den Pfad unter "userdata" im Script ändere, kommen Fehlermeldungen, beim Start und bei der Ausführung vom Script. (Vielleicht finde ich den Fehler später noch - ist aktuell nicht schlimm).

        Was mich aktuell verwundert:
        2025-06-25_114340.jpg

        Dieses Zeichen erhalte ich auch, in Telegram. Also kein Anhang, sondern nur dieses Zeichen.
        Bei einem weiteren Anruf mit einer hinterlassenen Nachricht, habe ich dann wieder "The." im Datenpunkt stehen.

        Also wenn ich das richtig verstanden habe, sollte sich doch eigentlich die Nachricht in den Datenpunkt befinden?

        Übrigens ich bin nicht für die Adaption den Scriptes verantwortlich - das war @mcu.😊

        C 1 Reply Last reply Reply Quote 0
        • C
          chris299 @falke69 last edited by

          @falke69 ja, da sollte das Transkript drin sein (nicht das audio file), aber auch nur, wenn der Call zu Azure cognitive services funktioniert hat. was sagt denn das javascript log?

          falke69 1 Reply Last reply Reply Quote 0
          • falke69
            falke69 @chris299 last edited by

            @chris299

            hier mal der log:

            javascript.0
               2025-06-25 14:33:48.240	info	script.js.Anrufer.Wir.test.Skript_1: "Transkript : The."
            javascript.0
               2025-06-25 14:33:48.240	info	script.js.Anrufer.Wir.test.Skript_1: {"durationMilliseconds":6040,"combinedPhrases":[{"text":"The."}],"phrases":[{"offsetMilliseconds":2920,"durationMilliseconds":80,"text":"The.","words":[{"text":"The.","offsetMilliseconds":2920,"durationMilliseconds":80}],"locale":"en-US","confidence":0.25603276}]}
            javascript.0
               2025-06-25 14:33:47.702	info	script.js.Anrufer.Wir.test.Skript_1: FormData { _overheadLength: 264, _valueLength: 51, _valuesToMeasure: [ ReadStream { fd: null, path: '/tmp/Anrufer.Wir.test.Skript_1-5OP0qU/message.wav', flags: 'r', mode: 438, start: undefined, end: Infinity, pos: undefined, bytesRead: 0, _events: [Object], _readableState: [ReadableState], _maxListeners: 100, _eventsCount: 3, emit: [Function (anonymous)], [Symbol(kFs)]: [Object], [Symbol(kIsPerformingIO)]: false, [Symbol(shapeMode)]: true, [Symbol(kCapture)]: false } ], writable: false, readable: true, dataSize: 0, maxDataSize: 2097152, pauseStreams: true, _released: false, _streams: [ '----------------------------379925215142652874426000\r\n' + 'Content-Disposition: form-data; name="definitions"\r\n' + '\r\n', '{"locales":["de-DE"], "profanityFilterMode":"None"}', [Function: bound ], '----------------------------379925215142652874426000\r\n' + 'Content-Disposition: form-data; name="audio"; filename="message.wav"\r\n' + 'Content-Type: audio/wave\r\n' + '\r\n', DelayedStream { source: [ReadStream], dataSize: 0, maxDataSize: Infinity, pauseStream: true, _maxDataSizeExceeded: false, _released: false, _bufferedEvents: [Array], _events: [Object: null prototype], _eventsCount: 1 }, [Function: bound ] ], _currentStream: null, _insideLoop: false, _pendingNext: false, _boundary: '--------------------------379925215142652874426000' }
            javascript.0
               2025-06-25 14:33:47.700	info	script.js.Anrufer.Wir.test.Skript_1: post form data für azure transcribe:
            javascript.0
               2025-06-25 14:33:47.694	info	script.js.Anrufer.Wir.test.Skript_1: Saved to /tmp/Anrufer.Wir.test.Skript_1-5OP0qU/message.wav
            javascript.0
               2025-06-25 14:33:47.694	info	script.js.Anrufer.Wir.test.Skript_1: response header:connection: close content-type: audio/x-wav content-disposition: attachment; filename="message.wav"
            javascript.0
               2025-06-25 14:33:45.936	info	script.js.Anrufer.Wir.test.Skript_1: Anzahl Neuer Nachrichten auf dem AB: 1
            javascript.0
               2025-06-25 14:33:45.936	info	script.js.Anrufer.Wir.test.Skript_1: Nachricht neu [i]: [0]["1"] mit Index: ["0"] und gekürzt: 0
            javascript.0
               2025-06-25 14:33:45.936	info	script.js.Anrufer.Wir.test.Skript_1: result.Root.Message.length: 1
            javascript.0
               2025-06-25 14:33:45.930	info	script.js.Anrufer.Wir.test.Skript_1: wav download : http://192.168.178.1:49000/download.lua?path=/data/tam/rec/rec.0.000 ; post data : sid=2400874c61e0ae6e
            javascript.0
               2025-06-25 14:33:45.929	info	script.js.Anrufer.Wir.test.Skript_1: Pfad zur neusten Message):http://192.168.178.1:49000/download.lua?path=/data/tam/rec/rec.0.000
            javascript.0
               2025-06-25 14:33:45.929	info	script.js.Anrufer.Wir.test.Skript_1: no arrays anymore: {"Index":"0","Tam":"0","Called":"XXXXX","Date":"25.06.25 14:33","Duration":"0:01","Inbook":"1","Name":"USER","New":"1","Number":"0172XXXXXXX","Path":"/download.lua?path=/data/tam/rec/rec.0.000"}
            javascript.0
               2025-06-25 14:33:45.928	info	script.js.Anrufer.Wir.test.Skript_1: neuesten Message (nach Datum):{"Index":["0"],"Tam":["0"],"Called":["XXXXX"],"Date":["25.06.25 14:33"],"Duration":["0:01"],"Inbook":["1"],"Name":["USER"],"New":["1"],"Number":["0172XXXXXXX"],"Path":["/download.lua?path=/data/tam/rec/rec.0.000"]}
            javascript.0
               2025-06-25 14:33:45.927	info	script.js.Anrufer.Wir.test.Skript_1: Index der neuesten Message (nach Datum):0
            javascript.0
               2025-06-25 14:33:45.926	info	script.js.Anrufer.Wir.test.Skript_1: TAMCalllist_JSON: {"Root":{"Message":[{"Index":["0"],"Tam":["0"],"Called":["XXXXX"],"Date":["25.06.25 14:33"],"Duration":["0:01"],"Inbook":["1"],"Name":["USER"],"New":["1"],"Number":["0172XXXXXXX"],"Path":["/download.lua?path=/data/tam/rec/rec.0.000"]}]}}
            javascript.0
               2025-06-25 14:33:45.926	info	script.js.Anrufer.Wir.test.Skript_1: Ergebnis Umwandlung CallList XML in JSON: {"Root":{"Message":[{"Index":["0"],"Tam":["0"],"Called":["XXXXX"],"Date":["25.06.25 14:33"],"Duration":["0:01"],"Inbook":["1"],"Name":["USER"],"New":["1"],"Number":["0172XXXXXXX"],"Path":["/download.lua?path=/data/tam/rec/rec.0.000"]}]}}
            javascript.0
               2025-06-25 14:33:45.920	info	script.js.Anrufer.Wir.test.Skript_1: FB_xml_TamCalls aus XML extrahiert: 1
            javascript.0
               2025-06-25 14:33:45.511	info	script.js.Anrufer.Wir.test.Skript_1: sid : 2400874c61e0ae6e ; tamindex : 0
            javascript.0
               2025-06-25 14:33:45.509	info	script.js.Anrufer.Wir.test.Skript_1: path from commandResult: http://192.168.178.1:49000/tamcalllist.lua?sid=2400874c61e0ae6e&tamindex=0
            javascript.0
               2025-06-25 14:33:45.508	info	script.js.Anrufer.Wir.test.Skript_1: Antwort auf command im State tr-064.0.states.commandResult: {"NewURL":"http://192.168.178.1:49000/tamcalllist.lua?sid=2400874c61e0ae6e&tamindex=0"}
            tr-064.0
               2025-06-25 14:33:44.961	info	{"NewURL":"http://192.168.178.1:49000/tamcalllist.lua?sid=2400874c61e0ae6e&tamindex=0"}
            tr-064.0
               2025-06-25 14:33:44.914	info	{"NewURL":"http://192.168.178.1:49000/tamcalllist.lua?sid=2400874c61e0ae6e&tamindex=0"}
            javascript.0
               2025-06-25 14:33:44.880	info	script.js.Anrufer.Wir.test.Skript_1: Soap Comand : {"service": "urn:dslforum-org:service:X_AVM-DE_TAM:1","action": "GetMessageList","params": {"NewIndex ": "0"}}
            javascript.0
               2025-06-25 14:33:44.880	info	script.js.Anrufer.Wir.test.Skript_1: USER hat auf den Anrufbeantworter 0 gesprochen. Daten werden aus der Fritzbox ausgelesen...
            javascript.0
               2025-06-25 14:33:44.877	info	script.js.Anrufer.Wir.AB_auf_neue_Nachrichten_prüfen-15-03-25: TypeError: Invalid URL at new URL (node:internal/url:806:29) at dispatchHttpRequest (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:2801:20) at /opt/iobroker/node_modules/axios/dist/node/axios.cjs:2721:5 at new Promise (<anonymous>) at wrapAsync (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:2701:10) at http (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:2739:10) at Axios.dispatchRequest (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:4116:10) at Axios._request (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:4416:33) at Axios.request (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:4271:25) at Axios.<computed> [as get] (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:4442:17) at Function.wrap [as get] (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:31:15) at Fritzbox_Anrufbeantworter_GetMessageList (script.js.Anrufer.Wir.AB_auf_neue_Nachrichten_prüfen-15-03-25:92:10) at Object.<anonymous> (script.js.Anrufer.Wir.AB_auf_neue_Nachrichten_prüfen-15-03-25:189:20) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3219:34) at listOnTimeout (node:internal/timers:581:17) at process.processTimers (node:internal/timers:519:7) at Axios.request (/opt/iobroker/node_modules/axios/dist/node/axios.cjs:4276:41) { code: 'ERR_INVALID_URL', input: 'DE_HostListPath":"/devicehostlist.lua?sid=2400874c61e0ae6e' }
            

            Ich hoffe, das ich auch soweit alle meine persönlichen Daten unkentlich gemacht habe.

            C 1 Reply Last reply Reply Quote 0
            • C
              chris299 @falke69 last edited by

              @falke69 sieht eigentlich alles richtig aus. du bekommst als transkript der nachricht tatsächlich "The." zurück. Was sollte das denn sein? und welche Sprache wird da üblicherweise drauf gesprochen?
              nimm mal die neue version, die ich gerade hochgeladen habe, die ist etwas robuster und gibt mehr mitteilungen im debug mode.

              falke69 1 Reply Last reply Reply Quote 0
              • falke69
                falke69 @chris299 last edited by falke69

                @chris299

                jetzt geht es. 🙂
                Bei uns wird deutsch gesprochen. Alles andere würde ich nicht verstehen. 🙂 🙂 🙂
                Habe nur bisher nicht drauf gesprochen, sondern nur Geräusche gemacht um den AB
                voll zu bekommen.

                Hatte das Script sozusagen vollkommen falsch verstanden.
                Ich war der Meinung, das es die Nachricht runterläd und in den Datenpunkt speichert.
                So wie im Log zu sehen:

                script.js.Anrufer.Wir.test.Skript_1: wav download : http://192.168.178.1:49000/download.lua?path=/data/tam/rec/rec.0.001 ; post data : sid=2400874c61e0ae6e
                

                Wo wird den der wav File gespeichert um diese direkt per Telegram, Mail oder WhatsApp mit der Nachricht über den Anrufer zu versenden?

                C 1 Reply Last reply Reply Quote 0
                • C
                  chris299 @falke69 last edited by chris299

                  @falke69 habe eine neue Version hoch geladen, die einen neuen Datenpunkt auf macht, in dem dann der lokale Pfad zur Wav Datei steht. im Blockly kann man darauf zugreifen und das file versenden.....

                  falke69 1 Reply Last reply Reply Quote 0
                  • falke69
                    falke69 @chris299 last edited by

                    @chris299

                    sehr schön. Das mit dem wav File funktioniert. Leider funktioniert die Transkription nicht mehr.
                    Im Datenpunkt steht: "Transkription fehlgeschlagen".

                    Hier der Log:
                    log.txt

                    Hat leider von der Länge nicht direkt mit reingepasst.

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      chris299 @falke69 last edited by chris299

                      @falke69 du musst da natürlich deinen eigenen Azure Key einsetzen. anscheinend hast du vorher eine version erwischt, in der ich versehentlich meinen key nicht gelöscht hatte....
                      und ja, ich muss die fehlermeldung für diesen Fall besser machen. so ist da deine ganze audio datei drin....

                      EDIT:
                      neue Version mit besserem logging hochgeladen

                      falke69 1 Reply Last reply Reply Quote 0
                      • falke69
                        falke69 @chris299 last edited by

                        @chris299

                        daran wird es wohl liegen.
                        Könnte man auch die Transkription im Script deaktivieren und nur den Wav File laden?
                        Habe gerade mir das mit Azure angeschaut - das scheint ja nicht unbedingt einfach zu sein, sich dort einen Key anzulegen. 😞

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          chris299 @falke69 last edited by chris299

                          @falke69 dastranskribieren abschalten kann man auch:
                          einfach in der Zeile 61
                          aus

                          const transcribe = true;
                          
                          const transcribe = false;
                          

                          machen....

                          vielleicht mache ich auch später noch eine Version bei der man das mit einem button in einem datenpunkt ein und ausschalten kann.... mal sehen...
                          EDIT: neue version damit hochgeladen.

                          aber eigentlich sollte das Erzeugen einer Ressource und deren Keys im Portal von Azure über den Link, den ich in der Anleitung angegeben habe, nicht so schwer sein:
                          https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/SpeechServices
                          Man muss ein Abonement anlegen und dann darin die Ressource erstellen, dann kann man den Key abrufen.

                          falke69 2 Replies Last reply Reply Quote 0
                          • falke69
                            falke69 @chris299 last edited by

                            @chris299

                            Vielen Dank

                            ... irgendwie war der Abend gestern noch etwas stressig für mich geworden. Dann war ich schon mit der Registrierung bei Azure überfordert.

                            Ich werde mir das Script heute Nachmittag mal in Ruhe anschauen und dann berichten.

                            1 Reply Last reply Reply Quote 0
                            • falke69
                              falke69 @chris299 last edited by

                              @chris299

                              habe jetzt Zeit gefunden Dein Script zu testen.

                              Bis jetzt funktioniert es tadellos.
                              Am Anfang hatte ich mich nur vertan, was Azure betrift.
                              Ich hat nicht Westeurope ausgewählt.
                              Also alles wieder gelöscht und jetzt richtig erstellt.

                              Dann funktioniert jetzt alles.

                              Vielen Dank für Deine Zeit und Hilfe.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate
                              FAQ Cloud / IOT
                              HowTo: Node.js-Update
                              HowTo: Backup/Restore
                              Downloads
                              BLOG

                              872
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              16
                              88
                              9627
                              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