[horde] How to prevent syncml from from combining multiple email addresses into one...

Mehmet Giritli mgiritli at giritli.eu
Thu Sep 26 16:38:49 UTC 2013


On Thu, 2013-09-26 at 17:13 +0200, Jan Schneider wrote:
> Zitat von Mehmet Giritli <mgiritli at giritli.eu>:
> 
> > On Thu, 2013-08-29 at 10:29 +0200, Jan Schneider wrote:
> >> Zitat von Mehmet Giritli <mgiritli at giritli.eu>:
> >>
> >> > On Thu, 2013-08-15 at 15:48 +0200, Jan Schneider wrote:
> >> >> Zitat von Mehmet Giritli <mgiritli at giritli.eu>:
> >> >>
> >> >> > On Tue, 2013-08-13 at 11:06 +0200, Jan Schneider wrote:
> >> >> >> Zitat von Mehmet Giritli <mgiritli at giritli.eu>:
> >> >> >>
> >> >> >> > Hi,
> >> >> >> >
> >> >> >> > I use syncml official client to sync contacts between horde  
> >> with ldap
> >> >> >> > backend and my android phone. My many contacts naturally  
> >> have multiple
> >> >> >> > email addresses. When I completely reload the device from  
> >> server, I can
> >> >> >> > see multiple emails syncing up correctly. But When I sync
> >> >> something from
> >> >> >> > the device to server, contacts with multiple emails get their emails
> >> >> >> > combined (comma seperated) into one email field on the ldap server.
> >> >> >> >
> >> >> >> > For the second time I had to go through my contacts and spend
> >> >> an hour to
> >> >> >> > correct the corruption. Is there a way to prevent this from  
> >> happening
> >> >> >> > and still sync new contacts from device to the server?
> >> >> >> >
> >> >> >> > Regards.
> >> >> >>
> >> >> >> What is an "official syncml client"?
> >> >> >
> >> >> > Synthesis syncml client.
> >> >> >
> >> >> > http://www.synthesis.ch/
> >> >> >
> >> >> >
> >> >> >> Anyway, without more information
> >> >> >> about your address book mappings there isn't much we can tell.
> >> >> >
> >> >> > This is the addressbook that is selected for sync. Removed  
> >> some data for
> >> >> > privacy.
> >> >> >
> >> >> > $cfgSources['gollum.mehmet.sync'] = array(
> >> >> >     'disabled' => false,
> >> >> >      'title' => _("GOLLUM (Mehmet Sync)"),
> >> >> >      'type' => 'ldap',
> >> >> >      'params' => array(
> >> >> >          'server' => '',
> >> >> >          'port' => 389,
> >> >> >          'tls' => true,
> >> >> >         'version' => 3,
> >> >> >          'root' => '',
> >> >> >          'bind_dn' => '',
> >> >> >          'bind_password' => '',
> >> >> >          'dn' => array('uid'),
> >> >> >          'objectclass' => array('top',
> >> >> >                                 'person',
> >> >> >                                 'organizationalPerson',
> >> >> >                                 'inetOrgPerson',
> >> >> >                                 'evolutionPerson'),
> >> >> >          'scope' => 'sub',
> >> >> >          'charset' => 'utf-8',
> >> >> > 'filter' => '&(objectClass=person)(!(cn=admin))',
> >> >> >
> >> >> >      ),
> >> >> >      'map' => array(
> >> >> >          '__key' => 'dn',
> >> >> >          '__uid' => 'uid',
> >> >> >          'name' => 'cn',
> >> >> >         'firstname' => 'givenName',
> >> >> >         'lastname' => 'sn',
> >> >> >         'middlenames' => 'initials',
> >> >> >          'emails' => 'mail',
> >> >>
> >> >> Having a single field for all addresses is exactly what you  
> >> configured here.
> >> >>
> >> >
> >> > Sorry for the late reply. If I put 'email' instead, then I get only one
> >> > email address synchronized to the device. But yea, the problem I
> >> > mentioned can be avoided this way, I know.
> >> >
> >> > So, is there a way syncing multiple multiple email addresses over syncml
> >> > without the original problem I mentioned happening?
> >>
> >> Yes, if you use the more specialized homeEmail and workEmail Turba  
> >> attributes.
> >
> >
> > So, I was up for solving this problem finally but I noticed that it is
> > not that easy actually. The problem in the case of a ldap source is that
> > multiple emails are stored with essentially the same attributes, which
> > is called 'mail'. So In the turba backends configuration file, how can I
> > separate this mail attribute and assign it to an horde attribute for
> > each email address in it?
> >
> >> --
> >> Jan Schneider
> >> The Horde Project
> >> http://www.horde.org/
> >>
> 
> With the 'emails' attribute.

Thanks for your email Jan but that takes me back to square one, doesn't
it? What I had initially was:

'emails' => 'mail'

in my backends file for ldap. This showed multiple emails and synced
them correctly to other devices only partially:

When I completely reload the device from  server, I can see multiple
emails syncing up correctly. But When I sync something from the device
to server, contacts with multiple emails get their emails combined
(comma seperated) into one email field on the ldap server.

So I changed to:

'email' => 'mail'

But now I can only see one email address per contact in the device after
sync. Your advice was to use homeEmail and workEmail attributes in the
backends file, one for each email address, but I don't know how to do
that with ldap since all email addresses are combined under 'mail' ldap
attribute.

I hope it is clear now and sorry for the late reply which caused you to
forget the problem...
 
> Jan Schneider
> The Horde Project
> http://www.horde.org/
> 




More information about the horde mailing list