I want to know if it is possible to support custom labels from a Google contact to Outlook. My current configuration does not bring a phone number across with a custom label and as I have sync both ways I end up loosing large amounts of my contact information in Google.
+1 here.
I am synchronizing with an iOS device using custom labels. Those labels get lost after I save the contact in Outlook. I am mainly blaming Outlook, but maybe there is a chance to implement a workaround to at least keep those labels for other clients.
Can we do anything to support the implementation of such a feature?
Ticket moved from /p/outlookcaldavsynchronizer/tickets/863/
Google custom labels not the same as iOS ones, or do you also sync via a gmail account to your iOS device?
Sorry, didn't know - I assumed they'd both use somewhat "standard" X-prefixed properties.
I don't have Google involved in my setup, I'm syncing iOS <--> NAS <--> Outlook.
Edit: NAS is Synology CardDAV Server, if that matters, and I can confirm that the iOS labels are still there after sync.
Snippet from the vcf export:
Last edit: Winston Wolf 2019-01-23
Yes, our vcard parsing library doesn't support custom labels. Would need some effort to implement it there first and parse those grouped items.
But for Google we use Google native Contacts API, would need a different approach and some research how custom labels are supported there.
I see. Should I create a new feature request for custom labels then?
Although I'm not sure what exactly I need. My primary focus would be to not lose information. I don't care that much whether custom labels are shown in Outlook (I don't know if that would even be possible) as long as they are still present in iOS and on the CardDAV Server.
I had a quick look at the sources but my main language is Java and I know too few about the general implementation of the synchronizer, so please bear with me if I'm confusing things.
I've seen two issues so far:
X.ABLabel properties are ignored in the cVardStandardReader; I think this could be easily fixable with the use of ReadInto_OtherProperties
While the item group is present in the original vCardProperty, it is discarded when they are read into concrete classes (vCardEmailAddress, vCardPhone, etc). So probably the correct mapping of X.ABLabels to their original other group members will break as there seems to be no relationship left after parsing.
I am thinking about adding the group to all concrete classes (or maybe even better: introduce a vCardBase parent class that could hold common properties) and re-adding the same group before writing the vCard again. But I'm not sure if that would already be enough (or if Outlook is interfering in any way, messing up the original groups or additional properties) and seeing the current Thought.vCard architecture this looks like a rather awful amount of work.
Another approach might be to read items group-wise (in contrast to what now seems to be one-line-at-a-time), which at first glance seems a bit cleaner but requires probably a lot more effort.
I didn't look at possible support in any of the other vCard libraries because I guess that replacing the current one wouldn't be an option anyway (although maybe not the worst idea at some later point as it doesn't look like it's still maintaned).
So... how much nonsense am I talking? :)
Last edit: Winston Wolf 2019-01-25
yes library is unmaintainend and would need a major rework to support grouping.
using another parser library which is better maintainend and supports this and also vcard 4 would be ideal but I am not aware of any for C# similar to ez-vcard forJava.
either way, lots of effort which would need to be sponsored otherwise no priority atm.