2012-01-28 1 views
3

Я пытаюсь выполнить синхронизацию между Google Contacts (через их API данных) и нашей внутренней системой. Я хочу, чтобы иметь возможность прикреплять наш идентификатор адреса к Google Structured Address, но я не могу найти способ.Прикрепление произвольного идентификатора к контактному адресу Google

Я попытался добавить его как пользовательское свойство, Extension Element и все, что я мог придумать, но безрезультатно.

Мой лучший выстрел состоял в том, чтобы добавить ExtensionFactory, он, кажется, отправляется в Google (я обнюхивал и видел, как это происходит в их системе), но так и не вернулось. Возможно, они не согласны с Extension Factories/Extension Element на адреса, но только на контакты?

Так что - возможно ли прикрепить идентификатор к адресу (я знаю, что могу подключиться к контакту, но я хочу, чтобы иметь возможность прикрепляться к адресу, так как один контакт может иметь много адресов).

Я использую C# и загружал библиотеку API C# API для контактов Google Data.

Пожалуйста, запросите дополнительную информацию, если она вам понадобится.

+0

извините - неправильный вопрос. – John3136

ответ

1

Нет простого способа сделать это. API не позволяет прикреплять произвольные данные к полю gd:structuredPostalAddress.

Лучше всего прикрепить данные к контакту (как gd:extendedProperty) и связать его с конкретным адресом, используя уникальный идентификатор. Этот уникальный идентификатор может быть хэшем адресных данных. Или, если вам не нужны случайные промахи, это может быть комбинация значения gd:rel и позиции адреса в списке.

+0

Хеширование адреса с ошибкой. Если пользователь отредактирует его в интерфейсе Google - у нас проблемы. Хеширование rel + position также не будет работать, если у нас есть 3 адреса, а пользователь удаляет второй, третий станет вторым в списке. Я что-то упустил? В любом случае, если вы абсолютно уверены, что нет никакого способа прикреплять произвольные данные к адресу, это также может считаться ответом, я просто подожду еще несколько мнений и пометьте это, если это произойдет ... –

+0

Вы явно не запрашивали идентификатор, который должен храниться при изменении адреса в веб-интерфейсе и/или другом приложении. Вот почему я предложил хеширование. Комбинация gd: rel и позиция не подвержена ошибкам, но, вероятно, это лучшее, что вы можете получить. Это, безусловно, лучше, чем позиция в одиночку. –

+0

Btw, я уверен, что нет возможности округлять произвольные данные вместе с адресом. Я не могу предоставить никаких дополнительных источников для поддержки этой претензии, но я написал синхронизацию контактов Google для eM Client (приложение, подобное Outlook). Кроме того, другие интерфейсы данных Google Contacts (ActiveSync и Portable Contacts) не смогут в любой момент обойти эту информацию. –

 Смежные вопросы

  • Нет связанных вопросов^_^