klein0r / ioBroker.birthdays

ioBroker adapter which calculates the next birthdays of your friends and family
https://haus-automatisierung.com/
MIT License
6 stars 6 forks source link

invalid line (no token ";" or ":") #116

Open HenrikGeiger opened 1 year ago

HenrikGeiger commented 1 year ago

The problem

Beim Versuch die Geburtstage aus der Nextcloud in dem Adapter hinzuzufügen erscheint folgender Fehler:

ParserError: invalid line (no token ";" or ":") "This is the WebDAV interface. It can only be accessed by WebDAV clients such as the Nextcloud desktop sync client."

Ich habe als Adresse die ganz normale CardDav Url verwendet sowie Username und Passwort angegeben. Bis vor ca. 3 Monaten hat der Adapter mit dieser Url auch noch problemlos funktioniert (damals war auch eine andere Version des Adapters installiert, kann aber leider nicht mehr nachvollziehen welche, da der Fehler nicht sofort aufgefallen ist).

Version of nodejs

14.19.0

Version of ioBroker js-controller

4.0.15

Version of Adapter

2.1.0

Operating system running ioBroker

Linux

Checklist of files to include below

Additional information & file uploads

2022-10-30 19:37:42.424 - info: host.iobroker stopInstance system.adapter.birthdays.2 (force=false, process=false)

2022-10-30 19:37:42.424 - info: host.iobroker stopInstance canceled schedule system.adapter.birthdays.2 2022-10-30 19:37:45.447 - info: host.iobroker instance scheduled system.adapter.birthdays.2 0 0 2022-10-30 19:37:45.454 - info: host.iobroker instance system.adapter.birthdays.2 started with pid 431091 2022-10-30 19:37:45.738 - debug: birthdays.2 (431091) Redis Objects: Use Redis connection: 127.0.0.1:9001 2022-10-30 19:37:45.768 - debug: birthdays.2 (431091) Objects client ready ... initialize now 2022-10-30 19:37:45.768 - debug: birthdays.2 (431091) Objects create System PubSub Client 2022-10-30 19:37:45.769 - debug: birthdays.2 (431091) Objects create User PubSub Client 2022-10-30 19:37:45.788 - debug: birthdays.2 (431091) Objects client initialize lua scripts 2022-10-30 19:37:45.789 - debug: birthdays.2 (431091) Objects connected to redis: 127.0.0.1:9001 2022-10-30 19:37:45.790 - silly: birthdays.2 (431091) redis psubscribe cfg.o.system.user. 2022-10-30 19:37:45.799 - silly: birthdays.2 (431091) redis psubscribe cfg.o.enum.* 2022-10-30 19:37:45.801 - silly: birthdays.2 (431091) objectDB connected 2022-10-30 19:37:45.802 - debug: birthdays.2 (431091) Redis States: Use Redis connection: 127.0.0.1:9000 2022-10-30 19:37:45.808 - debug: birthdays.2 (431091) States create System PubSub Client 2022-10-30 19:37:45.808 - debug: birthdays.2 (431091) States create User PubSub Client 2022-10-30 19:37:45.838 - info: host.iobroker stopInstance system.adapter.birthdays.2 (force=false, process=true) 2022-10-30 19:37:45.838 - info: host.iobroker stopInstance canceled schedule system.adapter.birthdays.2 2022-10-30 19:37:45.840 - debug: birthdays.2 (431091) States connected to redis: 127.0.0.1:9000 2022-10-30 19:37:45.840 - silly: birthdays.2 (431091) statesDB connected 2022-10-30 19:37:46.136 - info: birthdays.2 (431091) starting. Version 2.1.0 in /opt/iobroker/node_modules/iobroker.birthdays, node: v14.19.0, js-controller: 4.0.15 2022-10-30 19:37:46.173 - silly: birthdays.2 (431091) States system redis pmessage system.adapter.birthdays.2.logLevel/system.adapter.birthdays.2.logLevel:{"val":"silly","ack":true,"ts":1667155066163,"q":0,"from":"system.adapter.birthdays.2","lc":1667155066163} 2022-10-30 19:37:46.195 - debug: birthdays.2 (431091) [settings] done 2022-10-30 19:37:46.195 - debug: birthdays.2 (431091) [ical] done - url not configured - skipped 2022-10-30 19:37:46.196 - debug: birthdays.2 (431091) [carddav] url: https://URL/remote.php/dav/addressbooks/users/username/kontakte/ 2022-10-30 19:37:46.797 - debug: birthdays.2 (431091) [carddav] http(s) request finished with status: 200 2022-10-30 19:37:46.798 - warn: birthdays.2 (431091) [carddav] ParserError: invalid line (no token ";" or ":") "This is the WebDAV interface. It can only be accessed by WebDAV clients such as the Nextcloud desktop sync client." 2022-10-30 19:37:46.798 - debug: birthdays.2 (431091) [carddav] done with error 2022-10-30 19:37:46.799 - debug: birthdays.2 (431091) [onReady] everything collected: [0,0,0] 2022-10-30 19:37:46.799 - error: birthdays.2 (431091) No birthdays found in any configured source - please check configuration and retry 2022-10-30 19:37:46.799 - debug: birthdays.2 (431091) [fillStates] birthdays: [] 2022-10-30 19:37:46.806 - debug: birthdays.2 (431091) [fillStates] birthdays significant: [] 2022-10-30 19:37:46.814 - debug: birthdays.2 (431091) [onReady] Everything done 2022-10-30 19:37:46.814 - debug: birthdays.2 (431091) [onReady] Finally shutting down 2022-10-30 19:37:46.814 - debug: birthdays.2 (431091) cleaned everything up... 2022-10-30 19:37:46.818 - info: birthdays.2 (431091) Terminated (NO_ERROR): Without reason

klein0r commented 1 year ago

Mh, klingt ja erstmal so, als ob das nicht an der Verbindung liegt, sondern am zurückgelieferten Ergebnis. Scheinbar ist da irgendwo ein Zeichen drin, was die Library da nicht erwartet.

Um hier weiter machen zu können, benötige ich die CardDAV-Datei.

HenrikGeiger commented 1 year ago

Der Content, der über die CardDav Schnittstelle zurückkommt:

VERSION:4.0
PRODID:-//Nextcloud Contacts v4.2.2
UID:42015050-1cde-41da-b4a4-233266f9c906
FN:Max Mustermann
ADR;TYPE=HOME:;;;;;;
EMAIL;TYPE=HOME:
TEL;TYPE=HOME,VOICE:
BDAY;VALUE=DATE:20050621
CATEGORIES:Kontakte
REV;VALUE=DATE-AND-OR-TIME:20221031T102647Z
END:VCARD

Habe das auch nochmal in einem Testsystem getestet, dort erhalte ich noch folgenden Fehler: [carddav] TypeError: Cannot read properties of undefined (reading 'length')

klein0r commented 1 year ago

Muss ich mir nochmal in Ruhe anschauen. Die ursprüngliche Meldung kommt von hier: https://github.com/kewisch/ical.js/blob/3ec17951aad61bd53818f934879cc0857ee7b42d/lib/ical/parse.js#L227