Hi Cornelius,
Hallo,
ich habe die aktuelle eGroupware Community Edition Version 16.1.20160810 aus
dem Debian-Repository im Einsatz.
Dabei sind mir zwei Probleme beim eSync aufgefallen:
Das erste Problem betrifft den Einstellungsdialog vom eSync-Modul im
Webinterface. Beim Aufruf versucht das von eGroupware eingesetzte Z-Push
dessen Version durch einen Aufruf von “hash git && cd $path >/dev/null 2>&1
&& git describe --always” in der Datei
"activesync/vendor/z-push/z-push/src/version.php" zu ermitteln/abzugleichen
(unabhängig davon, dass die Version von der eGW-Config ohnehin überschrieben
wird).
Da es sich bei mir um ein Produktivsystem handelt, sind natürlich keine
Entwicklungswerkzeuge installiert, was zur folgenden Fehlermeldung im Apache
Error-Log führt:
“sh: 1: hash: git: not found”
Ist bekannt, muss ich mal schauen wie ich das löse. Hat definitiv keine
negativen Auswirkungen außerhalb des error-logs.
An sich ist das nichts Dramatisches, nur halt sicherheitstechnisch
bedenklich und etwas unschön im Error-Log.
Das Hauptproblem betrifft das eigentliche Synchronisieren des Adressbuchs.
Da die meisten Clients (in meinen Tests iOS und Outlook 2013/2016) mehrere
einzelne Adressbücher nicht unterstützen, habe ich die Zusammenführung aller
Adressbücher in eines aktiviert.
Sobald diese Einstellung aktiviert ist (unabhängig ob dann tatsächliche
mehrere oder nur eins synchronisiert wird), kommt es im Falle von Outlook zu
einer Endlos-Schleife: Beim initialen Sync wird das Adressbuch “Alle”
(aufgrund der Zusammenführung) übertragen, bei anschließenden Überprüfen auf
Änderungen werden allerdings die Einzeladressbücher mit diesem verglichen,
was dann zu einem Vergleich “Persönlich” != “Alle” führt, der natürlich
fehlschlägt und darauf ein neuer Sync initiiert wird.
Die entsprechenden Logs vom Z-Push Debug-Log sehen so aus:
Erstsynchronisation:
[ INFO] [user1] addressbook_zpush::get_addressbooks: Final return
ret=[‘alle’]
[DEBUG] [user1] addressbook_zpush::StatFolder(‘100000000006’) returning
Array([id] => 100000000006[mod] => alle[parent] => 0)
[DEBUG] [user1] HierarchyCache: AddFolder() serverid: 100000000006
displayname: alle
…
Nach dem Sync geht es anschließendend weiter:
[DEBUG] [user1] cmd=‘Ping’ devType='WindowsOutlook’
devId=‘ff8ef56826a845889b03e74884a78c6f’ getUser='user1’
from=‘192.168.99.31’ version=‘EGroupware-16.1.20160810’ method=‘POST’
[ INFO] [user1] addressbook_zpush::get_addressbooks: Final return
ret=[Array([6] => persönlich[-1] => Gruppe Default[0] => Benutzerkonten)]
[ INFO] [user1] ExportChangesDiff->InitializeExporter(): Found ‘3’ changes
for ‘hierarchy’
[DEBUG] [user1] addressbook_zpush::StatFolder(‘100000000006’) returning
Array([id] => 100000000006[mod] => alle[parent] => 0)
[DEBUG] [user1] SyncObject->equals() false on field ‘displayname’:
‘persönlich’ != ‘alle’
[DEBUG] [user1] HierarchyCache: AddFolder() serverid: 100000000006
displayname: persönlich
…
[DEBUG] [user1] cmd=‘FolderSync’ devType='WindowsOutlook’
devId=‘ff8ef56826a845889b03e74884a78c6f’ getUser='user1’
from=‘192.168.99.31’ version=‘EGroupware-16.1.20160810’ method=‘POST’
…
[DEBUG] [user1] cmd=‘Sync’ devType='WindowsOutlook’
devId=‘ff8ef56826a845889b03e74884a78c6f’ getUser='user1’
from=‘192.168.99.31’ version=‘EGroupware-16.1.20160810’ method=‘POST’
…
[DEBUG] [user1] cmd=‘Ping’ devType='WindowsOutlook’
devId=‘ff8ef56826a845889b03e74884a78c6f’ getUser='user1’
from=‘192.168.99.31’ version=‘EGroupware-16.1.20160810’ method=‘POST’
…
Dann geht es wieder von oben mit dem Ping los, was sich sekündlich
wiederholt?!
Hat jemand ein ähnliches Verhalten beobachtet oder evtl. eine Lösung??
Eventuell habe ich ja auch nur etwas falsch konfiguriert?!
Klingt nach dem in Z-Push 2.3.1 beschriebenen Problem:
http://z-push.org/z-push-2-3-1-released/
Die 2.3.1 Änderungen muss ich, bis auf die PostgreSQL Sachen die von mir
stammen, noch in die EGroupware mergen.
Sie werden dann Teil des nächsten Maintenance Releases sein, für das ich
noch keinen festen Termin habe.
Vielen Dank schon mal und viele Grüße,
Cornelius
–
Ralf Becker
EGroupware GmbH [www.egroupware.org]
Handelsregister HRB Kaiserslautern 3587
Geschäftsführer Birgit und Ralf Becker
Leibnizstr. 17, 67663 Kaiserslautern, Germany
Telefon +49 631 31657-0