2012-01-28 3 views
3

Google Contacts (자신의 Data API를 통해)와 내부 시스템 간의 동기화를 시도하고 있습니다. Google 구조 주소로 주소 ID를 첨부하고 싶지만 길을 찾을 수없는 것 같습니다.Google에 임의의 ID 첨부 연락처 주소

사용자 정의 속성, 확장 요소 및 내가 생각할 수있는 모든 항목을 추가하려고했지만 아무 소용이 없었습니다.

내 가장 좋은 기회는 ExtensionFactory를 추가하는 것이 었습니다. Google로 향하는 것처럼 보였습니다 (주위를 스니핑하고 시스템으로 이동하는 것을 보았지만). 아마 그들은 Extension Factories/Extension Element를 주소에 대해서만 받아들이지 만 연락처에 대해서는 허용하지 않을 것입니다.

주소에 ID를 첨부 할 수 있습니까 (연락처에 첨부 할 수 있지만 하나의 연락처에 많은 주소가있을 수 있으므로 주소에 연결할 수 있음).

저는 C#을 사용하고 Google Data Contacts API C# 라이브러리를 다운로드했습니다.

필요한 경우 더 자세한 정보를 문의하십시오.

+0

죄송합니다. 질문을 읽지 마십시오. – John3136

답변

1

쉬운 방법은 없습니다. API는 임의의 데이터를 gd:structuredPostalAddress 필드에 연결할 수 없습니다.

가장 좋은 방법은 데이터를 연락처 (gd:extendedProperty)에 첨부하고 고유 한 식별자를 사용하여 특정 주소에 연결하는 것입니다. 이 고유 식별자는 주소 데이터의 해시 일 수 있습니다. 또는 때때로 누락 될 염려가 없다면 gd:rel 값과 목록에있는 주소의 위치를 ​​조합하여 사용할 수 있습니다.

+0

주소를 해싱하는 것은 오류가 발생하기 쉽습니다. 사용자가 Google 인터페이스에서 수정하면 문제가 발생합니다. Hashing rel + position은 잘 작동하지 않습니다. 주소가 세 개인 경우 사용자가 두 번째 주소를 삭제하면 세 번째 주소가 목록에서 두 번째 주소가됩니다. 내가 여기서 뭔가를 놓치고 있니? 어쨌든, 주소에 임의의 데이터를 첨부 할 수있는 방법이 없다는 것이 절대적으로 긍정적이라면, 이것은 대답으로 간주 될 수 있습니다. 단지 몇 가지 의견을 기다리고 그럴 수만 있다면 표시해 드리겠습니다. –

+0

웹 인터페이스 및/또는 다른 응용 프로그램에서 주소가 변경 될 때 ID를 보관하도록 명시 적으로 요청하지 않았습니다. 그래서 해싱을 제안했습니다. gd : rel과 position의 조합은 오류가 발생하기 쉽지 않지만 얻을 수있는 최선의 방법 일 것입니다. 확실히 혼자의 지위보다 낫습니다. –

+0

Btw, 주소와 함께 임의의 데이터를 왕복 할 수있는 방법이 없다고 합리적으로 확신합니다. 이 주장을 뒷받침 할 추가 자료를 제공 할 수는 없지만 eM 클라이언트 (Outlook과 유사한 응용 프로그램) 용 Google 주소록 동기화를 작성했습니다. 또한 Google 주소록 데이터 (ActiveSync 및 휴대용 주소록)에 대한 다른 인터페이스는 어쨌든 정보를 왕복 할 수 없습니다. –