2012年7月31日火曜日

Google Apps Scriptで連絡先を編集する

Google Apps Scriptで連絡先(Contacts)を編集する方法をメモしておきます。
  • 連絡先を作る
var contact = ContactsApp.createContact("名前", "苗字", "target@youraddress.com");

これだけだと、インスタンスが生成されるだけで、実際に連絡先が
登録されるわけではないので注意です。
実際に登録するには、ContactsApp.addContacts()を呼び出さないといけません。

  • 連絡先のグループを作る
var contactgroup = ContactsApp.createContactGroup("Sample Group");

連絡先のグループを新規に作成します。

  • 連絡先のグループを取得する
var contactgroup = ContactsApp.getContactGroup("Sample Group");

連絡先のグループを名前から検索して取得します。

  • システム標準のグループを取得する
var myContacts = ContactsApp.getContactGroup("System Group: My Contacts");

グループ名に"System Group: "をつけるようです。

ちなみに、
getContactGroup()は、引数の名前のグループが存在しない時はnullを返してくるようです。
getContactGroupById()を使えば、ContactGroupのIDを指定してグループを取得できます。
  • グループを取得する
var contactgroups = ContactsApp.getContactGroups();
for(var i in contactgroups) {
  Logger.log(contactgroups[i].getGroupName());
}

getContactsGroups()を呼び出すと、登録されているグループが取得されます。
戻り値は配列です。標準のグループも取得されるので、システム標準かどうかは
ログに出力すれば、判断できると思います。

  • 連絡先をメールアドレスから検索して取得する。

var contact = ContactsApp.findByEmailAddress('target@youraddress.com');
var contact = ContactsApp.getContact('target@youraddress.com);

注意点としては、リテラル文字列を指定する時は''(シングルクオート)を使わないと
正しく動作しないようです。
  • 連絡先、グループを削除する

連絡先を削除するには、ContactsApp.deleteContact(contact)
グループを削除するにはContactsApp.deleteContactGroup(group)を
呼び出せば削除可能です。