Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error: tr-064.0 (50556) TypeError: Cannot read property 's:Envelope' of undefined #203

Open
nikmaier opened this issue Jan 12, 2021 · 17 comments
Labels
enhancement New feature or request

Comments

@nikmaier
Copy link

nikmaier commented Jan 12, 2021

Hardwaresystem: | NUC
Arbeitsspeicher: | 16GB
Festplattenart: | SSD
Betriebssystem: | Windows10 Pro
Node-Version: | v12.20.1
Nodejs-Version: | v12.20.1
NPM-Version: | 6.14.10
Installationsart: | Iobroker Windows Setup

Hi there,
I get the error message "tr-064.0 (50556) uncaught exception: Cannot read property 's: Envelope' of undefined" with the tr-064 adapter several times a day:

2021-01-11 02:16:22.286 - error: tr-064.0 (50556) uncaught exception: Cannot read property 's:Envelope' of undefined
2021-01-11 02:16:22.292 - error: tr-064.0 (50556) TypeError: Cannot read property 's:Envelope' of undefined
at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:217:33
at Parser. (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
at Parser.emit (events.js:314:20)
at Parser.EventEmitter.emit (domain.js:483:12)
at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
2021-01-11 02:16:22.344 - error: host.IOBROKER(Iobroker) Caught by controller[0]: TypeError: Cannot read property 's:Envelope' of undefined
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:217:33
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser. (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser.emit (events.js:314:20)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser.EventEmitter.emit (domain.js:483:12)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
2021-01-11 02:16:22.347 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
2021-01-11 02:16:22.348 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
2021-01-11 02:16:22.348 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
2021-01-11 02:16:22.348 - error: host.IOBROKER(Iobroker) instance system.adapter.tr-064.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
2021-01-11 02:16:22.348 - info: host.IOBROKER(Iobroker) Restart adapter system.adapter.tr-064.0 because enabled
2021-01-11 02:16:52.386 - info: host.IOBROKER(Iobroker) instance system.adapter.tr-064.0 started with pid 38480
2021-01-11 02:16:53.292 - info: tr-064.0 (38480) starting. Version 4.2.2 in C:/iobroker/Iobroker4/node_modules/iobroker.tr-064, node: v12.20.1, js-controller: 3.1.6

Can anyone help me?

@Apollon77
Copy link
Member

It seems to me that the reponse from your Fritzbox is no xml ... please check setting s... I can check how to prevent that error but basically if I di it will still not work because he tries to lead XML and needs these data in order to work.

@nikmaier
Copy link
Author

Hallo,
ich glaube ich kann auch deutsch schreiben oder?

Erstmal vielen Dank für deine Hilfe.
Ich weiß nicht wo ich prüfen soll ob von meiner Fritzbox XML kommt oder nicht?
Es funktioniert aber, die Fehlermeldung kommt nur total sporadisch ein paar mal am Tag.

Anbei einfach mal komplett alle Einstellungen von dem Adapter und der Fritzbox.

1
2
3
4
5
6

@Apollon77
Copy link
Member

Also scheinbar antwortet deine FB manchmal nicht mit einem validen XML auf eine Anfrage des Adapters. vllt mal das polling invtervall grösser machen? Lasttechnisch geht es der gut?

@nikmaier
Copy link
Author

Ok, kann ich machen, das Polling wird dann auch den Zustand der Geräte etwas verzögern oder?
Das heißt meine Ab- und Anwesenheit wird dann nicht mehr so schnell angezeigt?

Lasttechnisch ist da eigentlich gar nichts los. WLAN ist aus, läuft alles über Unifi Accesspoints und Datenträger ist auch nicht dran, also als NAS läuft die Fritz auch nicht und VPN wird auch nicht genutzt.
Die baut nur Internet auf, dass wars, also da dürfte kein Problem sein.

@nikmaier
Copy link
Author

Hat leider nichts gebracht, kommt immer noch der Fehler ganz sporadisch paar mal am Tag:

`

2021-01-12 20:37:54.924 - error: tr-064.0 (32020) uncaught exception: Cannot read property 's:Envelope' of undefined

2021-01-12 20:37:54.925 - error: tr-064.0 (32020) TypeError: Cannot read property 's:Envelope' of undefined
at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:217:33
at Parser. (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
at Parser.emit (events.js:314:20)
at Parser.EventEmitter.emit (domain.js:483:12)
at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
2021-01-12 20:37:54.957 - error: host.IOBROKER(Iobroker) Caught by controller[0]: TypeError: Cannot read property 's:Envelope' of undefined
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:217:33
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser. (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser.emit (events.js:314:20)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at Parser.EventEmitter.emit (domain.js:483:12)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
2021-01-12 20:37:54.959 - error: host.IOBROKER(Iobroker) Caught by controller[0]: at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
2021-01-12 20:37:54.960 - error: host.IOBROKER(Iobroker) instance system.adapter.tr-064.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
2021-01-12 20:37:54.960 - info: host.IOBROKER(Iobroker) Restart adapter system.adapter.tr-064.0 because enabled
2021-01-12 20:38:24.989 - info: host.IOBROKER(Iobroker) instance system.adapter.tr-064.0 started with pid 48620
2021-01-12 20:38:25.919 - info: tr-064.0 (48620) starting. Version 4.2.2 in C:/iobroker/Iobroker4/node_modules/iobroker.tr-064, node: v12.20.1, js-controller: 3.1.6

`

Noch irgendeine Idee was ich machen könnte ?

@Apollon77
Copy link
Member

Dann lass uns doch mal rausfinden woran es liegt wird aber ein bissl experimentell.

1.) Auf die Kommandozeile
2.) Schau wo du das verzeichnis tr-O64 (ist keine 0 sondern ein grosses O) findest, sollte in /opt/iobroker/node_modules/iobroker.tr-064/node_modules/tr-O64 sein oder /opt/iobroker/node_modules/tr-O64
3.) editiere in dem Verzeichnis die "lib/Service.js" und VOR Zeile 217 fügst Du ein

if (!result) console.log('ERROR: ' + body);

Dann adater im ioBroker stoppen und manuell auf der Shell starten (Shell muss auf bleiben). mittels:

iobroker debug tr-064

Dann läuft der Adapter so lange bis er crasht und du kannst am Ende das Log schicken

@nikmaier
Copy link
Author

Ok, vielen Dank.
Sobald ich das gemacht habe und das Log habe melde ich mich.

@nikmaier
Copy link
Author

Hallo,
bei mir schaut das File so aus:

image

Nun habe ich das hier so eingetragen:

image

Ist das so korrekt?

@Apollon77
Copy link
Member

exakt

@nikmaier
Copy link
Author

nikmaier commented Jan 16, 2021

Perfekt,
Habe den Adapter im Iobroker gestoppt und mittels Console gestartet:

image

Dann schauen wir mal was passiert.

Wenn der Error auftritt, wirds ja trotzdem im Log angezeigt oder,
dann warte ich jetzt bis der Fehler wieder passiert und schicke dann die Consolen-Ausgabe bzw. das Log.

Vielen Dank derweil.

@Apollon77
Copy link
Member

AM Ende beendet sich der Debug prozess beim Fehler und dann das letzte Log schicken

@nikmaier
Copy link
Author

nikmaier commented Jan 18, 2021

Hallo,
hier der Log von der Console:

2021-01-17 21:56:30.268  - debug: tr-064.0 (1552) setting 0 enable=true
2021-01-17 21:56:30.268  - debug: tr-064.0 (1552) setting 1 enable=true
2021-01-17 21:56:30.268  - debug: tr-064.0 (1552) setting 2 enable=true
2021-01-17 21:56:30.269  - debug: tr-064.0 (1552) setting 3 enable=true
2021-01-17 21:56:30.269  - debug: tr-064.0 (1552) setting 4 enable=true
2021-01-17 21:57:30.269  - debug: tr-064.0 (1552) in updateAll
2021-01-17 21:57:30.270  - debug: tr-064.0 (1552) updateDevices
2021-01-17 21:57:30.270  - debug: tr-064.0 (1552) forEachConfiguredDevice
2021-01-17 21:57:30.763  - debug: tr-064.0 (1552) forEachConfiguredDevice: i=0 Android-Nik active=1
2021-01-17 21:57:30.764  - debug: tr-064.0 (1552) forEachConfiguredDevice: {"NewIPAddress":"192.168.88.26","NewAddressSource":"DHCP","NewLeaseTimeRemaining":"0","NewInterfaceType":"Ethernet","NewActive":"1","NewHostName":"Android-Nik","NewMACAddress":"8C:B8:4A:98:0B:FE"}
2021-01-17 21:57:30.860  - debug: tr-064.0 (1552) forEachConfiguredDevice: i=1 Android-Yvonne active=1
2021-01-17 21:57:30.860  - debug: tr-064.0 (1552) forEachConfiguredDevice: {"NewIPAddress":"192.168.88.39","NewAddressSource":"DHCP","NewLeaseTimeRemaining":"0","NewInterfaceType":"Ethernet","NewActive":"1","NewHostName":"Android-Yvonne","NewMACAddress":"38:30:F9:0E:8F:19"}
in parseString callback
in parseString callback
2021-01-17 21:57:31.913  - debug: tr-064.0 (1552) setting 0 enable=true
2021-01-17 21:57:31.913  - debug: tr-064.0 (1552) setting 1 enable=true
2021-01-17 21:57:31.913  - debug: tr-064.0 (1552) setting 2 enable=true
2021-01-17 21:57:31.914  - debug: tr-064.0 (1552) setting 3 enable=true
2021-01-17 21:57:31.914  - debug: tr-064.0 (1552) setting 4 enable=true
2021-01-17 21:58:31.916  - debug: tr-064.0 (1552) in updateAll
2021-01-17 21:58:31.916  - debug: tr-064.0 (1552) updateDevices
2021-01-17 21:58:31.916  - debug: tr-064.0 (1552) forEachConfiguredDevice
2021-01-17 21:58:32.388  - debug: tr-064.0 (1552) forEachConfiguredDevice: i=0 Android-Nik active=1
2021-01-17 21:58:32.388  - debug: tr-064.0 (1552) forEachConfiguredDevice: {"NewIPAddress":"192.168.88.26","NewAddressSource":"DHCP","NewLeaseTimeRemaining":"0","NewInterfaceType":"Ethernet","NewActive":"1","NewHostName":"Android-Nik","NewMACAddress":"8C:B8:4A:98:0B:FE"}
2021-01-17 21:58:32.420  - debug: tr-064.0 (1552) forEachConfiguredDevice: i=1 Android-Yvonne active=1
2021-01-17 21:58:32.421  - debug: tr-064.0 (1552) forEachConfiguredDevice: {"NewIPAddress":"192.168.88.39","NewAddressSource":"DHCP","NewLeaseTimeRemaining":"0","NewInterfaceType":"Ethernet","NewActive":"1","NewHostName":"Android-Yvonne","NewMACAddress":"38:30:F9:0E:8F:19"}
ERROR: undefined
2021-01-17 21:58:32.581  - error: tr-064.0 (1552) uncaught exception: Cannot read property 's:Envelope' of undefined
2021-01-17 21:58:32.581  - error: tr-064.0 (1552) TypeError: Cannot read property 's:Envelope' of undefined
    at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:218:21
    at Parser.<anonymous> (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
    at Parser.emit (events.js:314:20)
    at Parser.EventEmitter.emit (domain.js:483:12)
    at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
    at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
    at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
    at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
    at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
    at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
TypeError: Cannot read property 's:Envelope' of undefined
    at C:\iobroker\Iobroker4\node_modules\tr-O64\lib\Service.js:218:21
    at Parser.<anonymous> (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:308:18)
    at Parser.emit (events.js:314:20)
    at Parser.EventEmitter.emit (domain.js:483:12)
    at SAXParser.onerror (C:\iobroker\Iobroker4\node_modules\xml2js\lib\parser.js:123:26)
    at emit (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:624:35)
    at error (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:653:5)
    at strictFail (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:677:7)
    at end (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:658:47)
    at SAXParser.write (C:\iobroker\Iobroker4\node_modules\xml2js\node_modules\sax\lib\sax.js:975:14)
2021-01-17 21:58:32.592  - info: tr-064.0 (1552) terminating
2021-01-17 21:58:32.593  - debug: tr-064.0 (1552) Plugin sentry destroyed
2021-01-17 21:58:32.594  - info: tr-064.0 (1552) Terminated (NO_ERROR): Without reason

@Apollon77
Copy link
Member

Ok, dann mal ein fix für dich. an die stelle wo du jetzt das console.log eingebaut hast shreibst du jetzt

if (!result) { result = {}; result['s:Envelope'] = {}; error = new Error('No response from Fritzbox');}

@nikmaier
Copy link
Author

Hallo Apollon,
vielen Dank, aber der Fehler ist hiermit wahrscheinlich nicht bereinigt sondern ich bekomme nur jetzt die Meldung "No response from Fritzbox" oder? :-)

@Apollon77
Copy link
Member

Naja ich wüsste nicht wie ich den Fehler bereinigen kann, ich würde exakt diesen Fix in der lib einbauen wenn Sie meine wäre. Am Ende ist es Deine Fritzbox die manchmal so ein Problem hat ... aber bisher bist scheinbar nur DU betroffen.

@nikmaier
Copy link
Author

Ok, passt, habs eingebaut.
Dann schließe ich das Thema und bedanke mich recht herzlich für deine Mühe.

@Apollon77
Copy link
Member

Ne wir lassens mal offen ... muss mal schauen was wir tun und ggf melden sich andere mal um zu sehen ob es "nicht vllt doch noch jemand mehr" ist :-)

@Apollon77 Apollon77 reopened this Jan 23, 2021
@Apollon77 Apollon77 added the enhancement New feature or request label Jan 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants