【问题标题】:Creating a Google shared contact using the API - contact is created but not in the shared Directory使用 API 创建 Google 共享联系人 - 联系人已创建但不在共享目录中
【发布时间】:2013-06-10 03:13:21
【问题描述】:

我目前正在使用shared_contacts_profiles.py 脚本将联系人从外部系统加载到我们的 Google 共享域联系人中。我想让这个过程更加自动化,所以我尝试使用基本的 python 脚本创建一个共享联系人(只有全名和电子邮件地址)。联系人已创建,但它被添加到管理员的联系人而不是目录中。

我的代码是

#!/usr/bin/python
import atom
import gdata.data
import gdata.contacts.client
import gdata.contacts.data

def main():

  admin_email = 'admin@mydomain.com'
  admin_password = 'P4ssw0rd'
  domain_index = admin_email.find('@')
  domain = admin_email[domain_index+1:]

  contacts_client = gdata.contacts.client.ContactsClient(domain=domain)
  contacts_client.client_login(email=admin_email,
                               password=admin_password,
                               source='shared_contacts_profiles',
                               account_type='HOSTED')

  new_contact = gdata.contacts.data.ContactEntry()
  new_contact.name = gdata.data.Name(
     full_name=gdata.data.FullName(text='John Doe'))
  new_contact.email.append(gdata.data.Email(address='john.doe@example.com',
     primary='true',rel=gdata.data.WORK_REL))
  contact_entry = contacts_client.CreateContact(new_contact)

  print "Contact's ID: %s" % contact_entry.id.text

if __name__ == '__main__':
  main()

我一定错过了一些相当简单的东西,但就是看不到它是什么。

编辑 * 我认为 shared_contacts_profiles.py 在向 Google 发送批次时会设置域联系人列表。我不打算使用批次,因为只有几个联系人要添加。我还怀疑我应该使用 gdata.contacts.service.ContactsService 而不是 gdata.contacts.client.ContactsClient

谢谢

戴夫

【问题讨论】:

    标签: python google-api google-shared-contacts


    【解决方案1】:

    最后我使用了如上所示的原始代码并添加了一些内容。我需要获取共享域联系人列表的提要 uri,然后在 CreateContact 中提供该 uri。

    feed_url = contacts_client.GetFeedUri(contact_list=domain, projection='full')
    
    contact_entry = contacts_client.CreateContact(new_contact,insert_uri=feed_url)
    

    谢谢

    戴夫

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-07
      • 1970-01-01
      • 1970-01-01
      • 2016-11-30
      • 1970-01-01
      • 2015-09-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多