Nextcloud-Kalenderverbindung unmöglich

Hallo @bertrandda,

Ich habe ein Problem beim Verbinden meines Nextcloud-Kalenders.
Ich erhalte folgenden Fehler, wenn ich versuche, meinen Kalender zu verbinden
image

Hier sind die Gladys-Logs

2025-04-16T19:48:56+0200 <error> index.js:43 (CalDAVHandler.config) Error: Bad status: 0
    at exports.XMLHttpRequest.request.onreadystatechange (/src/server/services/caldav/node_modules/dav-request/dav.js:3424:27)
    at exports.XMLHttpRequest.dispatchEvent (/src/server/services/caldav/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:591:25)
    at setState (/src/server/services/caldav/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:610:14)
    at exports.XMLHttpRequest.handleError (/src/server/services/caldav/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:532:5)
    at ClientRequest.errorHandler (/src/server/services/caldav/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:459:14)
    at ClientRequest.emit (node:events:518:28)
    at emitErrorEvent (node:_http_client:104:11)
    at TLSSocket.socketErrorListener (node:_http_client:518:5)
    at TLSSocket.emit (node:events:518:28)
    at emitErrorNT (node:internal/streams/destroy:170:8)
    at emitErrorCloseNT (node:internal/streams/destroy:129:3)
    at processTicksAndRejections (node:internal/process/task_queues:90:21)

Ich habe die URL mehrmals überprüft und ein Anwendungs-Passwort in Nextcloud erstellt.

Könntest du mir bei diesem Problem helfen?

Verwendest du die interne Adresse (und nicht einen erstellten Freigabelink)?

Danke für deine Hilfe, aber ja, ich verwende die interne Adresse.

Hallo, ohne die Domain zu nennen, könntest du mir die URL-Struktur zeigen, die du verwendest?
Normalerweise ist das so etwas wie https://DOMAINE/remote.php/dav

Normalerweise findest du die URL unten links in der App Kalender unter „Agenda-Einstellungen“. Ich habe den Eindruck, dass das Dialogfenster, von dem ihr beide sprecht, nur für einen bestimmten Kalender gilt.


Es sollte so ähnlich aussehen, du musst auf Haupt-CalDAV-Adresse kopieren klicken. Damit kannst du alle Kalender deiner Agenda auflisten, anschließend kannst du in Gladys die auswählen, die du synchronisieren möchtest.

Hier ist ein Screenshot meiner Konfiguration

Das scheint gut zu sein, funktioniert die Synchronisation korrekt mit deinem Telefon oder einem PC-Client?

Ich nutze den Kalender nur in Nextcloud in meinem Browser auf meinem PC.

@bertrandda Ich habe gerade den Test gemacht, mit derselben URL synchronisiert mein NextCloud-Kalender problemlos mit dem Kalender meines Telefons. Also kein Problem mit der URL, das funktioniert.

Aber immer noch keine Synchronisation mit Gladys

Und du hast auch keine weiteren Logs in Gladys oder in Nextcloud. Ich habe morgen Zeit, wir können das gerne zusammen versuchen, wenn du möchtest. Wärst du verfügbar?

Hallo, Entschuldigung, ich hatte keine Zeit, früher zu antworten.
Ich habe keine weiteren Logs als die, die ich in meinem ersten Beitrag gepostet habe.

Auf der Nextcloud-Seite habe ich diesen Fehler, den ich bisher nicht lösen konnte:
image

Wenn ich die CalDav-URL direkt in einen Browser eingebe, erhalte ich diese Rückmeldung
image
Kann man daraus schließen, dass es funktioniert?

Ich habe auch mein Telefon synchronisiert und kürzlich habe ich es in Home Assistant versucht und es funktioniert.

Ja, das muss wirklich ein Problem aufseiten von Gladys sein. Läuft Home Assistant auf demselben Rechner wie Gladys? Ich frage mich, ob die Anfrage überhaupt rausgeht oder ob dein Rechner überhaupt auf den Domainnamen zugreifen kann, denn der Status 0 sagt mir wirklich gar nichts :thinking:

Ich denke, ich habe das Problem verstanden.
Auf der Seite von Home Assistant gibt es eine Option zur Überprüfung des SSL-Zertifikats, die auf „false“ steht.
Wenn die Option auf „true“ steht, kann sich Home Assistant nicht verbinden.
image

Mein Nextcloud-Server läuft lokal ohne Domainnamen und ich verwende ein selbstsigniertes Zertifikat.
Wenn ich Nextcloud von außen benötige, nutze ich ein VPN, um auf alle meine Dienste zuzugreifen.

Ich habe SSL bei Nextcloud daher zum Test deaktiviert und jetzt kann sich Gladys mit dem Kalender verbinden.

@bertrandda, denkst du, es wäre möglich, diese Option auch in Gladys hinzuzufügen?

Ich bin ein paar Tage ohne meinen Laptop, ich mach dir das bei meiner Rückkehr, wenn es dir recht ist.

Kein Problem.

Das ist komplizierter als erwartet. Es scheint, dass es auf globaler Ebene von Node.js einfach ist, die Zertifikatsprüfung zu deaktivieren, aber nur bei den CalDAV-Anfragen habe ich es noch nicht geschafft. Ich halte dich auf dem Laufenden.

@bertrandda Ich habe gesehen, dass du ein NPM-Paket verwendest, das du geforkt hast dav-request, das das native Objekt XMLHttpRequest verwendet

Ich habe herausgefunden, dass es einen Fork dieses Anfragemoduls gibt:

Dieser Fork scheint recht weit verbreitet zu sein (4,7 Millionen Downloads pro Woche!), und unterstützt den Attribut « rejectUnauthorized », um meiner Meinung nach die SSL-Prüfung zu deaktivieren

Ich habe es nicht getestet, aber das könnte den Job erledigen!

Gut beobachtet, ich werde diese Lösung mal genauer unter die Lupe nehmen.

Hallo @bertrandda,
hast du Fortschritte beim Thema gemacht?