Google Apps脚本:当联系人更改时触发脚本?

时间:2016-04-18 14:08:55

标签: google-apps-script triggers google-contacts

我正在尝试让Google群组与我的Google通讯录保持同步。

我编写了一个Google Apps脚本,可以将我的通讯录中的电子邮件复制到Google网上论坛,但我需要一种方法来触发它。

编辑联系人时是否有事件?

这是我的同步代码:

function copyContactsToGroups() {
  var contacts = ContactsApp.getContacts();
 Logger.log("found " + contacts.length + " contacts");
 var groupEmail = '[my group email]';
 for(var i = 0; i < contacts.length; i++) {
   var contact = contacts[i];
 // Name
 if (contact.getFullName() == null || contact.getFullName().length == 0)
 {
  continue;
 }

 // Email
 emails = contact.getEmails();
 for( var j = 0; j < emails.length; j++) {
   var existing_member;
   try {
     existing_member = AdminDirectory.Members.get(groupEmail, emails[j].getAddress());
   }
   catch (e) {
     existing_member = null;
   }

   if (existing_member == null) {
     var key = {
       email: emails[j].getAddress(),
       role: 'MEMBER'
     };
     AdminDirectory.Members.insert(key, groupEmail);
     Logger.log("Added: " + emails[j].getAddress() + " for " + contact.getFullName());
   }
   else {
     Logger.log("Already present: " + emails[j].getAddress());
   }
  }
 }
}

1 个答案:

答案 0 :(得分:0)

不,联系人api没有联系人更改事件。您需要轮询更改。