12 / 12
Apr 4

Hallo!

Mein Kalender in Thunderbird ist über CalDav mit EGW synchronisiert.

Problem:

Verschiebe ich einen Termin via Thunderbird, so wird plötzlich ein zusätzlicher Teilnehmer ergänzt (mit uid=0) und das Versenden einer Mail an diese “Person” schlägt natürlich fehl.

Öffnet man den Termin in Thunderbird nach dem Verschieben sieht das so aus:

TB

In EGW sieht das so aus:

Auswirkungen:

Dieser “Teilnehmer” ist per se kein Problem, es ist nur nervig, dass dann immer SMTP-Errors in EGW als Notifications rechts unten aufploppen, und zwar für jede Terminänderung.

Das Problem existiert schon einige Monate, kam aber aus dem Nichts.

Info:
Speichert man dann einen Termin in EGW einfach einmal, so wird das bereinigt und alles ist wieder ok.
Der “Benutzerkonten” Eintrag ist dann weg.

Log:

Im CalDav Log ist diese Zeile wohl die spannende: X-EGROUPWARE-UID=0:urn:uuid:

Hier der ganze CalDav Log für das Verschieben eines Termins am selben Tag:

caldav.txt1 (7,2 KB)

Ist das Problem bekannt?
Ist das ein Config-Fehler bei uns?

Vielen Dank für eure Hilfe

Markus


Thunderbird Version: 128.7.1esr (keine Addons)
EGW EPL: egroupware-docker (23.1.20250113)

  • created

    Feb 28
  • last reply

    12d
  • 11

    replies

  • 148

    views

  • 3

    users

  • 1

    like

  • 11

    links

Hi Markus.

Schnell mal getestet: passiert bei mir nicht.


Sind weitere Clients angebunden?

Stefan

Hi Stefan,

Ja Handy. Dort via DavX und Etar als Kalender. Dort passiert das Verhalten nicht.

Meine Vermutung wäre ja Bug in TB, aber ich seh im Log nichts, was darauf hindeutet, dass TB einen neuen Attendee setzen würde.

Ich habe auch gerade mal versucht das zu reproduzieren, und kann es leider auch nicht reproduzieren :frowning:

Die einzige Idee die ich noch habe, die EMail die Thunderbird für Deinen Benutzer kennt passt nicht zu Deinem EGroupware Benutzer, oder ist mehr wie einem Benutzer zugeordnet.

Ralf

Danke euch für die Mühen!

Wie gesagt, das ging immer problemlos, bis zu einem Tag X (den ich leider nicht mehr benennen kann).
Beim Telefon keine Probleme.

Die einzige Idee die ich noch habe, die EMail die Thunderbird für Deinen Benutzer kennt passt nicht zu Deinem EGroupware Benutzer, oder ist mehr wie einem Benutzer zugeordnet.

kalenderconfig

Benutzermäßig ist es so, dass der Useraccount (email Adresse; auth über dovecot) nicht der Mailadresse entspricht, die nach außen verwendet wird. (Kürzel vs Langversion)
Das war bisher kein Problem und geht auch so auf dem Handy und beim Kollegen.

Da ich in den Logs auch nicht sehe, dass TB hier irgendwie überhaupt einen Username oder Teilnehmer-Daten überträgt, sollte das aber auch tatsächlich keine Rolle spielen, oder?

Danke, Markus

Ich denke das das Problem daher kommt, falls der Benutzer in der EGroupware mk@domain.at mit einer anderen Email als markus.k@domain.at eingetragen hat.

Das der Benutzername, in Deinem Fall eine EMail Adresse, nicht der EMail entspricht ist soweit ok, nur die EMail sollte in TB und EGroupware identisch sein.

Ralf

Ich hab das jetzt mit Kollegen nochmal überprüft, ist dort genau das gleiche Problem.

Als E-Mail haben wir überall die Lang-Version hinterlegt. Die Kurzversion dient wirklich zur dem Login. (am mailserver ist die Lang-Version ein Alias auf die Kurz-Version)

Ich verstehe nur nicht, warum das jetzt passiert, wo das doch früher einwandfrei ging. Wir haben die Config unsererseits da nicht verändert. Somit bleibt für mich als Schlussfolgerung entweder Thunderbird oder EGW übrig. Da im CalDav-Logging keine Spur von den Teilnehmern ist, wäre meine Vermutung jetzt EGW.
Ich werde mal git blame bemühen, was sich im Code-bereich da so getan hat. Vielleicht finde ich ja was.

Bin ich generell mit der Spur hier richtig?

class.calendar_ical.inc.php

Danke Ralf. Keiner der beiden commits scheint hier eine Rolle zu spielen. Ich hab auch unsere Domain jetzt mal testweise als Party-Crasher aktiviert. Ändert aber nichts.

Wenn ich hier ein inspect auf den unteren Löschen-Button mache, steht hier id="calendar-edit_participants_delete[0]"
Die Anzeige täuscht also etwas. Hier wird kein echter User angezeigt in der zweiten Zeile, sondern irgendwelche Werte, die für uid=0 sichtlich er-/gefunden werden.

Die Frage also: Wie kommt es zustande, dass ein Teilnehmer mit uid=0 in die DB kommt?

Ich versuche mich in den nächsten Tagen durch den Code zu lesen, villeicht habt ihr eine schnellere Idee.

Danke, Markus

29 days later

Ich habe nun das ausschlaggebende Kriterium gefunden für das Problem.
Es ist die Kalender URL.

Thunderbird verwendet:
https://egw.example.com/egroupware/groupdav.php/calendar
DavX verwendet:
https://egw.example.com/egroupware/groupdav.php/mk%40example.com/calendar

Stellt man die URL im Thunderbird Kalender auch um, sodass der Username inkludiert ist, funktioniert alles ohne Probleme.

Vielleicht hilft diese Info weiter, den Bug im Code zu finden.
Ich lasse daher das Thema hier noch offen.