zanonmark / Google-4-TbSync

This provider add-on adds Google synchronization capabilities to TbSync. Only contacts and contact groups are currently managed, using Google's People API.
Mozilla Public License 2.0
51 stars 7 forks source link

Cannot sync categories aka labels #4

Closed xtrailrunner closed 3 years ago

xtrailrunner commented 3 years ago

I would like to sync my Google address book including labels with my TB address book. I have installed the newest version of Google-4-TbSync and TbSync 2.21. I can sync my contacts but no labels or categories are created locally. The software seems to be in a very early stage. Do I need category manager plug-in too or it is better to remove it from the installation? What is your recommendation? Regards Juergen

zanonmark commented 3 years ago

Hi,

the software is indeed in an early stage, but the label synchronization should be working - they are imported as "mailing lists" in Thunderbird. What is not working at the moment is the Thunderbird-to-Google synchronization for the group memberships, i.e.: if you add a contact to a group in Thunderbird, this change is not replicated to Google.

Please check the latest version. I just included a "read-only mode" (Google-to-Thunderbird only synchronization), which I strongly suggest to use.

If the issue persists, feel free to comment here.

The Category Manager add-on is irrelevant to me.

Thanks, MZ

xtrailrunner commented 3 years ago

Sorry to say that, but labels were not synced. What I have done:

Regards Juergen

zanonmark commented 3 years ago

Thanks for Your additional information. All You did is indeed correct.

Could You please check the "include system contact groups" flag too? This enables synchronization with the "Family", "Friends", "Coworkers", "Starred" etc. Google default contact groups (which are deprecated by Google and are read-only on server side).

But, even if You leave it disabled, it should still synchronize all the other contact groups (if You have any, of course).

Could You please do this test for me and report here?

Thanks, MZ

xtrailrunner commented 3 years ago

Where should I set the flag? On the desktop there is no option in Google Contacts. On the phone I can see the four system groups but they are all empty. I'm still confused about the terms "groups" and "labels". In Google contacts I have defined several labels. Regards Juergen

zanonmark commented 3 years ago

"Labels" on Google Contacts = "Contact groups" in Google People API terminology = "Mailing list contacts" on Thunderbird (!) I decided to stick to the Google People API terminology.

When You create (or edit) a Google account in TbSync, You have 4 fields:

The 3rd one is for synchronizing the Google groups too: "My Contacts", "Friends", "Coworkers", etc.. I set this as an external option because system groups are deprecated (they will be removed by Google in a while) and can't be updated back to Google (i.e. they are read-only on Google side); so hopepfully they will be soon gone.

Anyway, if You already set Your specific groups (labels), You should at least be synchronizing these ones. So, it sounds like a bug.

First question: could You please tell me the names of those contact groups (labels)?

Thanks, MZ

zanonmark commented 3 years ago

option

xtrailrunner commented 3 years ago

Thanks. Now I see where the problem is. I have used my existing TbSync Account ( CalDAV, CardDAV server) and checked the Address Book for Synchronization. This is obviously not working as expected. What is you recommendation:

zanonmark commented 3 years ago

Thanks for updating back.

To clarify:

Google has currently 3 ways to make contact synchronizations:

1) Through the CardDAV protocol. This should be the preferred choice, because it's a standard protocol and there are many interfaces (for example, the CalDAV and CardDAV provider You were using). But the support by Google is broken, because it doesn't support synchronizing contact groups aka labels. So, this is a no-go unless Google fixes it (which is: never, as the ticket has been open for years).

2) Through the Google Contacts API. This is what gContactSync was doing. But: a) the user interface part of gContactSync is now broken, and will probably not be updated; b) even if it was, the Google Contacts API itself is deprecated and will stop working on June 15th 2021.

And this leads us to the last method,

3) Through the Google People API. This is exactly what my Google-4-TbSync add-on is doing. Synchronization works well except for updating back contact group modifications (i.e.: if You add / delete an item in a mailing-list in Thunderbird, this will not be reported back to Google). I can't fix it at the moment because the current version of TbSync doesn't offer me the tools to do so, but this will be overcome after the TbSync rewrite to the new WebExtension standard (in a few weeks?). So You'd better stick to the read-only mode: do Your modifications on Google and then let Google-4-TbSync synchronize them from Google to Thunderbird.

Hope it helps.

I consider the bug closed then.

Thanks, MZ

xtrailrunner commented 3 years ago

Hi, thank you for clarification. After reading some information about the different APIs and the available Add-Ons for Thunderbird now the situation become much clearer to me. At the moment I will stick with cardBook. When the both-way sync based on the People API works I would switch to this add-on. Thank you! Regards Juergen

zanonmark commented 3 years ago

The contact synchronization already works 2-way, and so does the contact group one. I.e.: You can create / edit / delete contacts or contact groups locally, and these changes will be replicated on Google (provided You didn't flag the "Read-only mode", obviously).

What doesn't work right now is that modifying a local contact group (= mailing-list) content cannot be replicated on Google. I.e.: adding / removing a contact from a local contact group won't be replicated on Google. But that happens on CardBook too, because mailing-lists simply aren't created, due to the Google bug in the CardDAV support.

So, to summarize:

Hope it helps.

Thanks, MZ