We have moved to a new Sailfish OS Forum. Please start new discussions there.
0

CardDav: Merging does not merge

asked 2015-06-14 10:17:51 +0300

WhyNotHugo gravatar image

After getting CardDav working with my phone, I've synced all my contacts too ways.

Since I had a bunch of duplicates, I started merging these (via the "Link" option). My phone now has de-duplicated contacts, but it didn't actually merge them, it just does this at a UI level. As a result, all the duplicated contacts were still getting pushed. Any other device that syncs with the same CardDav endpoint, will see these unmerged.

Any hints on how to actually merge contacts on the phone, and not just have it show them as a single one?


How to reproduce:

  • Create two contacts with the same name.
  • Link them.
  • Sync contacts with some service.
  • Access that service via other means. The two original contacts are listed, instead of having been merged.
edit retag flag offensive close delete

1 Answer

Sort by » oldest newest most voted
2

answered 2015-06-16 17:32:56 +0300

Yo gravatar image

updated 2015-06-16 17:37:30 +0300

Linking is not merging. The phone does it correctly.

The purpose of linking is to combine the details of a person from different sources, e.g. a CalDAV server, Exchange and google.

Normally you shouldn't have the same person multiple times in ONE address book, so merging is not a common use case (IMO). I guess you have to manually copy the contact's details from one vcard to another.

Maybe there is an option to export the address book to .vcf (on the server side). Then you can merge them (quick googling presented e.g. this Windows program) and then delete everything on the server and import the corrected file.

Alsways have backups! ;)

Edit: It seems to be possible to export from the phone as well but I would rather recommend doing it on the server side because CardDAV does e.g. currently not upload avatars.

edit flag offensive delete publish link more

Comments

Linking is not merging. The phone does it correctly.

Depends how you define "correctly". To me, the correct output is not having duplicate contacts on a same collection.

The purpose of linking is to combine the details of a person from different sources, e.g. a CalDAV server, Exchange and google.

I only have CalDAV and local contacts. These local contacts were manually copied from other devices with CalDAV access, since Jolla did not previously support it.

I understand how contacts from different sources don't get merged, but if they're from the same source (or merely local contacts), they should get merged.

Normally you shouldn't have the same person multiple times in ONE address book, so merging is not a common use case (IMO).

Due to what I just explain, I do indeed have duplicate contacts. I'm guessing most users of CalDAV faced the same situation.

Maybe there is an option to export the address book to .vcf (on the server side). Then you can merge them (quick googling presented e.g. this Windows program) and then delete everything on the server and import the corrected file.

Sure, but the phone should really do this properly in the first place.

Windows applications cannot be run on the phone, so that's of no use. I had a quick look at trying to run that via wine, but the comlpexity was too high, and their website is too broken.

Alsways have backups! ;)

This is competely irrelevant.

WhyNotHugo ( 2015-06-16 18:40:41 +0300 )edit

Alsways have backups! ;)

This is competely irrelevant.

(Is this a rant?) I proposed to delete all contacts from the server and reimport. Before doing that, you should always have a backup so it's not irrelevant.

I only have CalDAV and local contacts. These local contacts were manually copied from other devices with CalDAV access.

This means they come from different sources. A) Local B) CardDAV.

To me, the correct output is not having duplicate contacts on a same collection.

That's deduplicating/merging. Please think about the meaning of the word "link" for a moment.

Sure, but the phone should really do this properly in the first place.

It does the supposed feature. If you want deduplication/merging of contacts this is another feature and you can of course request it.

Yo ( 2015-06-16 18:57:28 +0300 )edit

This means they come from different sources. A) Local B) CardDAV.

Once I configured my device to sync all contacts with CardDAV, they're not two different sources; they're two different locations that mirror each other.
Duplicated contacts exist in both locations.

It does the supposed feature. If you want deduplication/merging of contacts this is another feature and you can of course request it.

Again, "supposed to" as defined by whom? The impossibility of de-duplicating information is a pain, and it blindly uploads to CardDAV contacts that already existed, worsening the situation.

WhyNotHugo ( 2015-06-16 20:26:56 +0300 )edit
Login/Signup to Answer

Question tools

Follow
2 followers

Stats

Asked: 2015-06-14 10:17:51 +0300

Seen: 495 times

Last updated: Jun 16 '15