Удалить контакты только в «Системная группа: Мои контакты» в Контактах Google - PullRequest
0 голосов
/ 10 марта 2020

Приведенный ниже код удаляет все контакты в контактах Goggle, чей идентификатор не совпадает с идентификатором в Google Sheets. Но проблема в том, что он удаляет все несоответствующие контакты. Однако я хотел бы удалить контакты только из Системной группы: Мои контакты.

Код:

function deleteSingleContacts() {
  Utilities.sleep(3000);
  var contactIds = ContactsApp.getContacts().map(function(contact) {
    return contact.getId(); // Get current contact ids
  });
  var sh3 = SpreadsheetApp.getActive().getSheetByName("MacRadio's Customers"); // Please change accordingly
  var currentIds = sh3.getRange("R5:R").getValues().map(function(value) {
    return value[0];
  }).filter(function(val) {
    return val != "";
  })
  for (var i = 0; i < contactIds.length; i++) {
    if (currentIds.indexOf(contactIds[i]) == -1) {
      var contact = ContactsApp.getContactById(contactIds[i]);
      ContactsApp.deleteContact(contact);
    }
  }
}

1 Ответ

0 голосов
/ 11 марта 2020

Заменить ContactsApp.getContacts() на ContactsApp.getContactsByGroup(group) на var group = ContactsApp.getContactGroup('My Contacts');.

...