Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. tr-064 v3.1.x (Latest Repo) Diskussion

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    tr-064 v3.1.x (Latest Repo) Diskussion

    This topic has been deleted. Only users with topic management privileges can see it.
    • crunchip
      crunchip Forum Testing Most Active @wendy2702 last edited by

      @wendy2702 nein, es ist nur der tr-64 instaliert.
      nochmal die Reihenfolge
      tr-64 lief in der alten Version, nach Umstellung (js-controller) war das soef Problem, daher zusätzlich den community installiert, der alte war ausgeschaltet. Einige Tage laufen lassen, mit dem Community, dann habe ich den alten tr-64 gelöscht.
      nachdem der alte wiederbelebt wurde, habe ich diesen Installiert und danach den Community gelöscht.
      als einzigstes "Überbleibsel" hab ich die meta noch drin stehen, dazu hatte ich aber glaub ich, auch schon gefragt, ob das so richtig ist, aber keine Antwort bekommen
      659f65da-0cce-42d8-a213-588dde1f7176-image.png

      dslraser 1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @crunchip last edited by

        @crunchip
        hm...wenn es alle Varianten nicht tun, dann deutet es ja fast auf die Fritte selbst hin ? Aber wie gesagt, alles nur Vermutungen. Ohne Fehler im LOG, wie will man da auch was finden...

        1 Reply Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active @apollon77 last edited by Negalein

          @apollon77 du bist witzig😁
          wo und wie pack ich das rein?
          das ist die aktuelle callmonitor.js

          /* jshint -W097 */
          /* jshint strict: false */
          /* jslint node: true */
          'use strict';
          
          const CALLMONITOR_NAME = 'callmonitor';
          const enableConnect1012 = '--- To use the callmonitor, enable connects to port 1012 on FritzBox by dialing #96*5* with a directly connected phone (line/dect) and restart this adapter';
          
          function checkPatchForECONNREFUSED(adapter) {
             if (process || process.version) {
                 const ar = process.version.split('.');
                 if (ar[0].indexOf('v') === 0) {
                     ar[0] = ar[0].substr(1);
                 }
                 let version = 0;
                 for (let i = 0; i < ar.length; i++) {
                     version *= 1000;
                     version += ~~ar[i];
                 }
                 if (version >= 6000000) return;
             }
          
             const util = require('util');
             const old_errnoException = util._errnoException;
             util._errnoException = function (err, syscall, original) {
                 if (typeof original === 'string' && original.indexOf(':1012') >= 0) {
                     adapter.log.error('--- ECONNREFUSED ' + original);
                     adapter.log.error(enableConnect1012);
                 }
                 return old_errnoException(err, syscall, original);
             };
          }
          
          const pauseStates = {
             inbound:  'ring',
             lastCall: 'end',
             connect:  'connect'
          };
          
          function CallMonitor(adapter, devices, phonebook) {
             if (!adapter.config.useCallMonitor) {
                 return;
             }
             adapter.log.debug('starting callmonitor');
             checkPatchForECONNREFUSED(adapter);
          
             const net = require('net');
             const connections = {};
             let timeout;
             let lastCaller;
             let lastCallee;
             let client;
          
             devices.root.createNew(CALLMONITOR_NAME + '.toPauseState', {val: '', common: {name: 'On call states', desc: 'State to pause players. values are: ring, connect, end'}});
          
             function init() {
                 client = new net.Socket();
          
                 client.on('connect', () =>
                     adapter.log.debug('callmonitor connected'));
          
                 client.on('error', err => {
                     if (err.errno === 'ECONNREFUSED') {
                         adapter.log.error(enableConnect1012);
                         this.close();
                     }
                 });
          
                 client.on('close', _hadError => {
                     timeout && clearTimeout(timeout);
                     timeout = setTimeout(() => {
                         timeout = null;
                         init();
                     }, adapter.config.reconnectInterval || 5000);
                 });
          
                 client.on('data', data => {
                     const raw = data.toString();
                     adapter.log.debug('Callmonitor Raw: ' + raw);
                     const array = raw.split(';');
                     const type = array[1];
                     const id = array[2];
                     const timestamp = array[0];
                     let message;
                     //var dev = new devices.CDevice(0, '');
                     //dev.setDevice(CALLMONITOR_NAME, {common: {name: CALLMONITOR_NAME, role: 'channel'}, native: {} });
                     const dev = new devices.CDevice(CALLMONITOR_NAME, '');
                     dev.force = true;
                     let timer = null;
          
                     function set(name) {
                         //const dev = new devices.CDevice(CALLMONITOR_NAME, '');
                         //dev.force = true;
                         timer && clearTimeout(timer);
                         timer = null;
          
                         adapter.log.debug('New Call data ' + name + ': ' + JSON.stringify(message));
                         dev.setChannel('', '');
                         dev.set('ringing', name === 'inbound');
          
                         // var pause = pauseStates[name];
                         // if (pause !== undefined) {
                         //     dev.set('toPauseState', pause);
                         // }
          
                         dev.setChannel(name, name);
                         for (const i in message) {
                             if (i[0] !== '_') {
                                 dev.set(i, message[i]);
                             }
                         }
                         dev.set('timestamp', timestamp);
                         message._type = name;
                         if (adapter.config.usePhonebook && phonebook) {
                             if (lastCaller !== message.caller) {
                                 lastCaller = message.caller;
                             }
                             if (!message.callerName && message.caller) {
                                 const pbe = phonebook.byNumber(message.caller);
                                 if (pbe) {
                                     message.callerName = pbe.name;
                                     if (pbe.imageurl) {
                                         message.imageurlcaller = pbe.imageurl;
                                     }
                                 } else {
                                     message.callerName = '';
                                 }
                             }
                             dev.set('callerName', message.callerName || '');
          
                             if (lastCallee !== message.callee) {
                                 lastCallee = message.callee;
                             }
          
                             if (!message.calleeName && message.callee) {
                                 const pbee = phonebook.byNumber(message.callee);
                                 if (pbee) {
                                     message.calleeName = pbee.name;
                                     if (pbee.imageurl) message.imageurlcallee = pbee.imageurl;
                                 } else {
                                     message.calleeName = '';
                                 }
                             }
                             dev.set('calleeName', message.calleeName || '');
                         }
          
                         dev.set('json', JSON.stringify(message));
          
                         dev.setChannel('', '');
                         const pause = pauseStates[name];
                         if (pause !== undefined) {
                             dev.set('toPauseState', pause);
                             message.extension && dev.set('toPauseState-' + message.extension, pause);
                         }
          
                         // soef.getHttpData(message.imageurlcaller, function (err, body, res) {
                         //     res = res;
                         // })
                         adapter.log.debug('callMonitor.set: type=' + name + ' caller=' + message.caller + ' callee=' + message.callee + (message.callerName ? ' callerName=' + message.callerName : '') + (message.calleeName ? ' calleeName=' + message.calleeName : ''));
                         timer = setTimeout(() => {
                             dev.update();
                             devices.update();
                         }, 500);
                     }
          
                     switch (type) {
                         case 'CALL':
                             message = {caller: array[4], callee: array[5], extension: array[3], timestamp, id};
                             connections[id] = message;
                             set('outbound');
                             break;
          
                         case 'RING':
                             message = {caller: array[3], callee: array[4], timestamp, id};
                             connections[id] = message;
                             set('inbound');
                             break;
          
                         case 'CONNECT':
                             message = connections[id];
                             if (!message) {
                                 break;
                             }
                             message.extension = array[3];
                             set('connect');
                             break;
          
                         case 'DISCONNECT':
                             message = connections[id];
                             if (!message) {
                                 break;
                             }
                             switch (message._type) {
                                 case 'inbound':
                                     message.type = 'missed';
                                     break;
                                 case 'connect':
                                     message.type = 'disconnect';
                                     break;
                                 case 'outbound':
                                     message.type = 'unreached';
                                     break;
                             }
                             message.duration = array[3] >> 0;
                             //set('disconnect');
                             set('lastCall');
                             delete connections[id];
                             break;
                     }
                 });
          
                 client.connect({
                     host: adapter.config.ip,
                     port: 1012
                 })
                     .on('error', error =>
                         adapter.log.error('Cannot start ' + CALLMONITOR_NAME + ': ' + error));
             }
          
             this.close = function () {
                 if (client) {
                     try {
                         client.removeAllListeners();
                         client.destroy();
                     } catch (e) {
          
                     }
                     client = null;
                 }
                 timeout && clearTimeout(timeout);
                 timeout = null;
             };
          
             init();
          
             return this;
          }
          
          module.exports = CallMonitor;
          

          apollon77 1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 last edited by

            kannst du mal auf Konsolen ebene schauen ob es den wirklich nur einmal gibt?

            iobroker list adapters
            
            crunchip 1 Reply Last reply Reply Quote 0
            • crunchip
              crunchip Forum Testing Most Active @wendy2702 last edited by

              @wendy2702 gibt nur den einen
              system.adapter.tr-064 : tr-064 - v3.1.4

              1 Reply Last reply Reply Quote 0
              • apollon77
                apollon77 @crunchip last edited by

                @crunchip das links in dem GitHub Link auf der Seite sind die Zeilennummern. Rote sind gelöschte und grüne sind neue. Und es wird immer bissl mehr oben und unten drunter angezeigt. Das sollte reichen um die Stellen im Code zu finden. Alternativ Klick im GitHub oben rechts auf file anzeigen oder so und dort ggf raw. Dann kopierst du halt alles

                crunchip 1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 @crunchip last edited by

                  @crunchip heißt das vllt das nach einem scheduled restart das Problem da war und keine Daten mehr ankamen ? Dann wäre wieder debug log interessant ...

                  crunchip 1 Reply Last reply Reply Quote 0
                  • crunchip
                    crunchip Forum Testing Most Active @apollon77 last edited by

                    @apollon77 ok, werd ich testen

                    1 Reply Last reply Reply Quote 0
                    • crunchip
                      crunchip Forum Testing Most Active @apollon77 last edited by crunchip

                      @apollon77 der nächtliche Neustart wäre zumindest eine mögliche Fehlerquelle, dachte ja zuerst, das Fritzbox/Telekom aktualisiert hat und das der Grund wäre, aber ja nicht der Fall war.
                      jetzt könnt ich testen

                      • a) gucken, das ich ihn aktuell zum laufen bekomm und nehm den Neustart raus
                      • b) ich lass wie es ist und änder die Datei

                      @apollon77 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                      Dann wäre wieder debug log interessant ...

                      könnte ich machen, falls ich so lange wach bin heute

                      1 Reply Last reply Reply Quote 0
                      • crunchip
                        crunchip Forum Testing Most Active last edited by

                        @apollon77 v3.2.0 gerade probiert

                        host.IoBroker	2020-02-21 08:26:54.076	info	Restart adapter system.adapter.tr-064.0 because enabled
                        host.IoBroker	2020-02-21 08:26:54.076	info	instance system.adapter.tr-064.0 terminated with code 0 (NO_ERROR)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at process._tickCallback (internal/process/next_tick.js:68:7)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at (anonymous function).(anonymous function) (/opt/iobroker/node_modules/iobroker.objects-redis/index.js:17:71697)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at objects.getObject (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2491:65)
                        host.IoBroker	2020-02-21 08:26:54.075	error	Caught by controller[0]: at adapter.getForeignObject (/opt/iobroker/node_modules/iobroker.tr-064/main.js:115:13)
                        host.IoBroker	2020-02-21 08:26:54.074	error	Caught by controller[0]: at main (/opt/iobroker/node_modules/iobroker.tr-064/main.js:1119:49)
                        host.IoBroker	2020-02-21 08:26:54.074	error	Caught by controller[0]: ReferenceError: secret is not defined
                        tr-064.0	2020-02-21 08:26:53.526	info	(25256) Terminated (NO_ERROR): Without reason
                        tr-064.0	2020-02-21 08:26:53.525	info	(25256) terminating
                        tr-064.0	2020-02-21 08:26:53.495	error	(25256) ReferenceError: secret is not defined at main (/opt/iobroker/node_modules/iobroker.tr-064/main.js:1119:49) at adapter.getForeignObject (/opt/iobroker/node_modules/iobroker.tr-064/main.
                        tr-064.0	2020-02-21 08:26:53.494	error	(25256) uncaught exception: secret is not defined
                        tr-064.0	2020-02-21 08:26:53.251	info	(25256) starting. Version 3.2.0 in /opt/iobroker/node_modules/iobroker.tr-064, node: v10.19.0
                        host.IoBroker	2020-02-21 08:26:50.119	info	instance system.adapter.tr-064.0 started with pid 25256
                        host.IoBroker	2020-02-21 08:26:49.074	info	Restart adapter system.adapter.tr-064.0 because enabled
                        
                        apollon77 1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 @crunchip last edited by

                          @crunchip hat ja auch keiner gesagt das GitHub gerade nutzbar ist, oder?! 😉

                          crunchip 1 Reply Last reply Reply Quote 0
                          • crunchip
                            crunchip Forum Testing Most Active @apollon77 last edited by

                            @apollon77 stimmt, wollte es nur testen, da ich durch https://forum.iobroker.net/post/381090 darauf gekommen bin
                            diesbezüglich wollte ich es nur melden, bzw Bescheid geben😘

                            1 Reply Last reply Reply Quote 0
                            • wendy2702
                              wendy2702 last edited by

                              Gestern eine Ansage komplett neu aufgesetzt.

                              TR-064 in Version 3.1.4 installiert, Benutzer auf Fritzbox eingerichtet und Haken gesetzt um TR064 Zugriff zu erlauben.

                              Direkt beim ersten Anruf wurden alle Datenpunkte angelegt und aktualisiert.

                              @crunchip : habe nicht alle Beiträge gelesen aber der Haken für TR064 Zugriff in der Fritzbox ist noch drin?

                              Du könntest mal den Netzwerkverkehr mitschneiden zwischen Fritzbox und iobroker.

                              Entweder hier: http://fritz.box/html/capture.html oder mit Wireshark im Netzwerk schnüffeln um zu sehen wer wann nicht antwortet.

                              crunchip 1 Reply Last reply Reply Quote 0
                              • crunchip
                                crunchip Forum Testing Most Active @wendy2702 last edited by

                                @wendy2702 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                                TR064 Zugriff in der Fritzbox ist noch drin?

                                ja klar, funktioniert ja auch wieder nach einem manuellen Neustart, hab versuchsweise mal den scheduled von 0:01 vorverlegt auf 23:58
                                mit wireshark kenn ich mich leider nicht aus

                                1 Reply Last reply Reply Quote 0
                                • wendy2702
                                  wendy2702 last edited by

                                  Mach doch mal den Mitschnitt auf der Fritzbox, also Mitschnitt starten, z.b. einen Anruf empfangen, Mitschnitt stoppen und log hier posten.

                                  crunchip 1 Reply Last reply Reply Quote 0
                                  • crunchip
                                    crunchip Forum Testing Most Active @wendy2702 last edited by

                                    @wendy2702 ok und was muss ich da anklicken zum mitschneiden?

                                    1 Reply Last reply Reply Quote 0
                                    • wendy2702
                                      wendy2702 last edited by wendy2702

                                      Starten für den "ethx" Port an denen dein Iobroker hängt.

                                      Habe mal versucht dein Historie mit dem Problem zu lesen.

                                      Hast du mal versucht alles was mit TR-064 zu tun hat zu löschen und neu zu installieren?

                                      Also Instanz löschen, Adapter löschen, alle Objekte löschen, iobroker bzw. iobroker rechner neu starten, dann Adapter installieren, Instanz erzeugen und konfigurieren?

                                      Was steht bei dir im Adapter drin, "fritz.box" oder die IP ?

                                      Mal zum testen Callmonitor in der Box deaktiviert, Fritzbox neustart, Callmonitor aktiviert ?

                                      crunchip 2 Replies Last reply Reply Quote 0
                                      • crunchip
                                        crunchip Forum Testing Most Active @wendy2702 last edited by

                                        @wendy2702 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                                        alles was mit TR-064 zu tun hat zu löschen

                                        könnte ich mal versuchen, das artet jedoch dann etwas aus, da ich sämtliche Datenpunkte(Influx/Flot/Grafana)...alles wieder neu anlegen müsste

                                        @wendy2702 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                                        "fritz.box" oder die IP

                                        IP-Adresse ist hinterlegt

                                        @wendy2702 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                                        testen Callmonitor in der Box deaktiviert

                                        das wäre nochmal ne Option

                                        1 Reply Last reply Reply Quote 0
                                        • crunchip
                                          crunchip Forum Testing Most Active @wendy2702 last edited by crunchip

                                          @wendy2702 sagte in tr-064 v3.1.x (Latest Repo) Diskussion:

                                          versucht alles was mit TR-064 zu tun hat zu löschen

                                          denke, hat damit nichts zu tun, da auch der fritzbox Adapter nicht aktualisiert

                                          .....und täglich grüsst das Murmeltier....😁

                                          • gestern die Option in der Fritzbox de/aktiviert
                                          • Adapter neugestartet, fritzbox.0, sowie tr-64.0.

                                          cronjob hatte ich bei beiden eingestellt, tr-64-- 23:58 und fritzbox--23:59, also bewusst mal vor 0:00
                                          hatte es laufe des Tages mehrfach gestestet, funktionierte den ganzen Tag, jedoch heute morgen wieder nicht,
                                          weder der fritzbox , noch der tr-64 aktualisieren, eingehende und ausgehende Anrufe getestet.

                                          beide Adapter manuell neugestartet und funktioniert wieder alles.
                                          werde den nächtlichen cronjob jetzt mal weglassen und testen ob es morgen aktualisiert.

                                          1 Reply Last reply Reply Quote 0
                                          • wendy2702
                                            wendy2702 last edited by

                                            Mal ne andere Frage. Vielleicht habe ich es auch überlesen.

                                            Welche FB?

                                            IOBROKER per LAN oder WLAN ?

                                            Läuft nur ioBroker auf der verwendeten Hardware oder noch anderes?

                                            Schnittstellen Mitschnitt gemacht ?

                                            crunchip 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

                                            930
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            tr-064
                                            50
                                            295
                                            33832
                                            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