[turba] Problems with GAL and ActiveSync
Sebastian Arcus
s.arcus at open-t.co.uk
Thu Mar 29 17:09:56 UTC 2018
On 28/03/18 18:18, Sebastian Arcus wrote:
> I am running Horde 5.2.17, with Dovecot, Exim and Postgresql. I have
> enabled ActiveSync and it is technically working, but I have several
> issues with it:
>
> 1. Although in the Turba global configuration I select "None" for
> $conf[gal][addressbook], when I go back into it it reads "contacts" - no
> matter how many times I do it.
>
> 2. Although I make sure an individual user account has his/her own
> address book, and then make sure that is the default address book in
> Turba settings, when I connect an iPhone ( iPhone 6, iOS 11.3) in
> Exchange mode to it, on the iPhone, under Contacts -> Groups (which
> seems to be Apple speak for address books), I only see:
>
> "All <username> "
>
> and under it
>
> "<username> Global Address List"
>
> First of all, there should be no Global Address List - as I have
> presumably disabled it - then, what seems to be happening is that Horde
> doesn't expose the account's default address book, which is user's own
> address book, but only the Global Address Book, over ActiveSync.
>
> The only way to get the sync working seems to be to enable multiple
> address book support in the sync settings, in Turba, for the individual
> user account. And even then, the user's address book still doesn't get
> sent to the device as the default address book.
OK - I have sort of discovered the problem. I have two Horde servers.
One was working correctly, the other wasn't. The one which is not
working correctly does the following:
1. New contacts created on the server are synced to the device.
2. New contacts on the device are not synced to the server.
3. Amendments to server contacts previously synced on the device, done
on the device, are synced back to the server.
The server which wasn't working correctly had auto share creation
disabled. Both servers have ActiveSync support for multiple address
books disabled.It seems that there are two fundamental differences
between shares created automatically and those created manually. Looking
at the turba_sharesng table, in the attribute_params column:
1. If the auto share creation is disabled, the created shares look
something like this:
a:2:{s:6:"source";s:8:"localsql";s:4:"name";s:23:"MOT1v6aHfUmi8k66VG99TU_";}
If I set the share as default for the account, it actually adds a
's:7:"default";b:0' to the above- for some bizarre reason - so it
disables the default. It also gets that cryptic name, regardless of what
I name it in the interface.
2. With the auto share creation enabled, the record looks something like
this:
a:3:{s:6:"source";s:8:"localsql";s:7:"default";b:1;s:4:"name";s:25:"jsmith at mycompany.co.uk";}
So the share is set as the default, and it also gets a meaningful name.
It seems to me that something is broken when auto share creation is
disabled, and address book shares get created with the wrong attributes.
Incidentally, changing "b:0" to "b:1" manually doesn't fix ActiveSync.
But deleting the manually created address book, enabling auto share
creation, and allowing it to be automatically recreated does fix things.
More information about the turba
mailing list