Синхронизировать контакты Google по группам с ограниченным числом пользователей

Я пытаюсь создать код Python с открытым исходным кодом, размещенный в GAE, для синхронизации контактов по группам с ограниченным числом пользователей. В веб-интерфейсе пользователи смогут выбирать свою группу и с кем она будет синхронизироваться.

Я понимаю, что на рынке есть много приложений с одинаковыми функциональными возможностями, но моя организация обеспокоена тем, что они обеспечивают продажу контактов третьим сторонам. Мы некоммерческая организация, поэтому код может быть размещен на google-проекте или github для участия сообщества.

(извините за длинное вступление)

  • Как лучше всего начать? есть ли учебник с похожей функциональностью, который я могу расширить?
  • Каков наилучший способ сравнить два элемента типа "Контакт"? Чтобы увидеть, если они должны быть синхронизированы.
  • Есть ли последнее обновление элементов Contact вида? В случае, если я хочу реализовать последнее обновление побед?

Спасибо!

2 ответа

Я не знаю каких-либо руководств по синхронизации и сравнению контактов, но есть руководство по началу работы с API контактов Google по адресу https://developers.google.com/google-apps/contacts/v3/.

Контакты отправляются в виде блобов XML, поэтому вы можете сравнить два контакта, проанализировав их и просмотрев отдельные элементы внутри них. Я не думаю, что есть лучший способ сделать это, но есть библиотеки, чтобы справиться с этим для вас.

Последнее обновленное поле отправлено как часть контактов при получении их с помощью API. Это элемент XML с меткой <updated>,

how are you getting different user's contacts feeds?

i tried to save the tokens in the datastore when the
users grant the access, but when i get the token back
from datastore for 2 users at a time, after an hour
when the token expires, 
all tokens start working like the current users token
and i can only get current users contacts.

token = Get_Shared_User_Token(user_email)
contact_client = gdata.contacts.client.ContactsClient(source=USER_AGENT)
authorized_client = token.authorize(contact_client)

contacts_feed = authorized_client.GetContacts(q = query)

can you please tell how one can get any user's contacts?
Другие вопросы по тегам