I have my own CardDAV-Server (Synology Contacts), a Samsung S8 (with DAVx5) and EMClient. I tried the following:
- i exported all contacts from EMClient and Synology as vCard-files
- i compared every contact (i reduced the number of contacts)
- i corrected all error (home-> HOME, work->WORK)
- i deleted all extra attributes (like TYPE=x-…, …)
- i deleted all contacts from every device
- i imported all contacts from a single vCard-file … then synced all devices
Result: all was ok
Then i edited one contact in EMClient. Result: all was ok, the changes synced in all devices
Then i edited in Synology Contacts. Result: all was ok
But now i edited one contact in my Samsung S8. Result: in Synology Contacts the data is ok (i exported the vCard), but the attribute TYPE of some addresses were written in lowercase like this: ADR;TYPE=home and an additional line with LABEL;TYPE=home:<address> was added. In EMClient i got two addresses. One with ADR;TYPE=home and the same Address with ADR;TYPE=TYPE.
So i gues DAVx5 is changing the attribute of TYPE in lowercase, adds an additonal line (LABEL;…) and EMClient adds a new ADR-line to the vCard, because it cannot read the line with TYPE=home and the additional line LABEL (which could be ignored)?
After every snc i get more and more addresses like described above. So who is doing wrong? DAVx5 (the additional LABEL is allowed, but lowercase for TYPE=home or TYPE=work is that ok?) or EMCient?