[turba] No UID field in vCards

Josh Leder josh at ha.cr
Tue Jul 2 06:57:49 UTC 2013


Hi all,

I've been having trouble syncing Turba's address books with Mac OSX
"Address Book" application. The console log indicates that the UID field is
missing. This issue was discussed in <
http://lists.horde.org/archives/turba/Week-of-Mon-20130610/006842.html> and
that got me started in the right direction, but now I'm noticing that none
of the vCards that come over CardDAV include a UID field.

For example, in my LDAP address book I created a new contact and then
fetched the vCard via curl:

$ curl -u username:password '
http://example.com/rpc/addressbooks/username/contacts%3alocalldap/cn%3dTest%20Testington%2cou%3dGlobal%20Directory%2cdc%3dexample%2cdc%3dcom.vcf
'

BEGIN:VCARD
VERSION:3.0
FN:Test Testington
EMAIL;TYPE=INTERNET:test at email.com
TEL;TYPE=HOME,VOICE:
TEL;TYPE=WORK,VOICE:
TEL;TYPE=CELL,VOICE:
LABEL;TYPE=HOME:
N:Testington;Test;;;
ADR;TYPE=HOME:;;;;;;
END:VCARD


I made sure that my backends.local.php includes a map for __uid => dn. This
is the complete config for this address book:

$cfgSources['localldap']['disabled'] = false;
$cfgSources['localldap']['title'] = 'Shared Contacts';
$cfgSources['localldap']['params']['server'] = 'localhost';
$cfgSources['localldap']['params']['root'] = 'ou=Global
Directory,dc=example,dc=com';
$cfgSources['localldap']['params']['bind_dn'] =
'cn=Manager,dc=example,dc=com';
$cfgSources['localldap']['params']['bind_password'] = '*****';
$cfgSources['localldap']['params']['sizelimit'] = 0;
$cfgSources['localldap']['params']['checkrequired'] = true;
$cfgSources['localldap']['params']['objectclass'][] = 'turbaContact';
$cfgSources['localldap']['params']['objectclass'][] = 'calEntry';
$cfgSources['localldap']['map']['__uid'] = 'dn';
$cfgSources['localldap']['map']['__type'] = 'turbaType';
$cfgSources['localldap']['map']['__members'] = 'turbaMembers';
$cfgSources['localldap']['map']['freebusyUrl'] = 'calFBURL';


This behaviour occurs in *all* of my address books shared via CardDAV,
though. They all have __uid mapped to some field and yet *none* of them
provide a UID field in the vCard. This makes the OSX Address Book app fail
to add them.

Is this a bug or am I missing something?

Thank you for your help!

Josh Leder


More information about the turba mailing list