Class Group

Группа

Объект группы, члены которой и их роли в группе могут быть запрошены.

Вот пример, показывающий участников группы. Перед запуском замените адрес электронной почты группы на адрес электронной почты группы в вашем домене.

function listGroupMembers() {
  const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
  console.log(`${group.getEmail()}:`);
  const users = group.getUsers();
  for (let i = 0; i < users.length; i++) {
    const user = users[i];
    console.log(user.getEmail());
  }
}

Методы

Метод Тип возвращаемого значения Краткое описание
get Email() String Получает адреса электронной почты этой группы.
get Groups() Group[] Извлекает дочерние группы, непосредственно связанные с данной группой.
get Role(email) Role Получает роль пользователя в контексте группы.
get Role(user) Role Получает роль пользователя в контексте группы.
get Roles(users) Role[] Получает роли пользователей в контексте группы.
get Users() User[] Выводит список непосредственных и заблокированных участников группы, имеющих известный соответствующий аккаунт Google.
has Group(group) Boolean Проверяет, является ли группа прямым членом данной группы.
has Group(email) Boolean Проверяет, является ли группа прямым членом данной группы.
has User(email) Boolean Проверяет, является ли пользователь непосредственным членом группы.
has User(user) Boolean Проверяет, является ли пользователь непосредственным членом группы.

Подробная документация

getEmail()

Получает адреса электронной почты этой группы.

В этом примере отображается список адресов электронной почты всех групп, к которым принадлежит пользователь.

function listMyGroupEmails() {
  const groups = GroupsApp.getGroups();
  for (let i = 0; i < groups.length; i++) {
    console.log(groups[i].getEmail());
  }
}

Возвращаться

String — Адрес электронной почты группы.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

getGroups()

Получает список дочерних групп группы. Генерирует исключение, если у вас нет разрешения на просмотр списка участников группы.

В дополнение к этому методу, вы можете использовать расширенную службу каталога Admin SDK для получения списка членов групп в домене.

function listGroupMembers() {
  const GROUP_EMAIL = 'example@googlegroups.com';
  const group = GroupsApp.getGroupByEmail(GROUP_EMAIL);
  const childGroups = group.getGroups();
  console.log(`Group ${GROUP_EMAIL} has ${childGroups.length} groups:`);
  for (let i = 0; i < childGroups.length; i++) {
    const childGroup = childGroups[i];
    console.log(childGroup.getEmail());
  }
}

Возвращаться

Group[] — Все непосредственные дочерние группы данной группы.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

getRole(email)

Получает роль пользователя в контексте группы. Пользователь, являющийся непосредственным членом группы, имеет ровно одну роль в этой группе. Генерирует исключение, если пользователь не является членом группы или если у вас нет разрешения на просмотр списка членов группы.

В этом примере перечислены владельцы группы:

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const users = group.getUsers();
console.log('These are the group owners:');
for (let i = 0; i < users.length; i++) {
  const user = users[i];
  if (group.getRole(user.getEmail()) === GroupsApp.Role.OWNER) {
    console.log(user.getEmail());
  }
}

Параметры

Имя Тип Описание
email String Адрес электронной почты пользователя.

Возвращаться

Role — роль пользователя в группе.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

getRole(user)

Получает роль пользователя в контексте группы. Пользователь, являющийся непосредственным членом группы, имеет ровно одну роль в этой группе. Генерирует исключение, если пользователь не является членом группы или если у вас нет разрешения на просмотр списка членов группы.

В этом примере перечислены владельцы группы:

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const users = group.getUsers();
console.log('These are the group owners:');
for (let i = 0; i < users.length; i++) {
  const user = users[i];
  if (group.getRole(user) === GroupsApp.Role.OWNER) {
    console.log(user.getEmail());
  }
}

Параметры

Имя Тип Описание
user User Пользователь, чью роль необходимо получить.

Возвращаться

Role — роль пользователя в группе.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

См. также


getRoles(users)

Получает роли пользователей в контексте группы. Пользователь, являющийся непосредственным членом группы, имеет ровно одну роль в этой группе. Генерирует исключение, если какой-либо пользователь не является членом группы или если у вас нет разрешения на просмотр списка членов группы.

В этом примере перечислены владельцы группы:

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const users = group.getUsers();
const roles = group.getRoles(users);
console.log('These are the group owners:');
for (let i = 0; i < users.length; i++) {
  if (roles[i] === GroupsApp.Role.OWNER) {
    console.log(users[i].getEmail());
  }
}

Параметры

Имя Тип Описание
users User[] Пользователи, чьи роли запрашиваются.

Возвращаться

Role[] — Роли пользователей в группе.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

getUsers()

Получает список прямых и заблокированных участников группы, имеющих известный соответствующий аккаунт Google. Генерирует исключение, если у вас нет разрешения на просмотр списка участников группы или их электронных адресов.

Примечание: если вы являетесь членом группы B, которая, в свою очередь, является членом другой группы A, то вы косвенно подписаны на группу A. Хотя вы получаете копии сообщений, отправленных в эту группу, вы фактически не подписаны на родительскую группу A.

Вот пример, показывающий участников группы. Перед запуском замените адрес электронной почты группы на адрес электронной почты группы в вашем домене.

function listGroupMembers() {
  const GROUP_EMAIL = 'example@googlegroups.com';
  const group = GroupsApp.getGroupByEmail(GROUP_EMAIL);
  const users = group.getUsers();
  console.log(`Group ${GROUP_EMAIL} has ${users.length} members:`);
  for (let i = 0; i < users.length; i++) {
    const user = users[i];
    console.log(user.getEmail());
  }
}
В дополнение к этому методу, вы можете использовать расширенную службу каталога Admin SDK для получения списка членов групп в домене.

Возвращаться

User[] — Все непосредственные члены группы.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

hasGroup(group)

Проверяет, является ли группа прямым членом данной группы. Метод не возвращает true если проверяемая группа вложена более чем на один уровень ниже данной группы. Генерирует исключение, если у вас нет разрешения на просмотр списка членов группы.

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const childGroup = GroupsApp.getGroupByEmail('childgroup@googlegroups.com');
if (group.hasGroup(childGroup)) {
  console.log('childgroup@googlegroups.com is a child group');
}

Параметры

Имя Тип Описание
group Group Группа, чей состав необходимо проверить.

Возвращаться

Booleantrue если эта группа является дочерней группой данной группы; false в противном случае.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

hasGroup(email)

Проверяет, является ли группа прямым членом данной группы. Метод не возвращает true если проверяемая группа вложена более чем на один уровень ниже данной группы. Генерирует исключение, если у вас нет разрешения на просмотр списка членов группы.

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
if (group.hasGroup('childgroup@googlegroups.com')) {
  console.log('childgroup@googlegroups.com is a child group');
}

Параметры

Имя Тип Описание
email String Адрес электронной почты группы.

Возвращаться

Booleantrue если эта группа является дочерней группой данной группы; false в противном случае.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

hasUser(email)

Проверяет, является ли пользователь прямым членом группы. Генерирует исключение, если у вас нет разрешения на просмотр списка членов группы.

Вот пример проверки того, является ли текущий пользователь членом группы:

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const currentUser = Session.getActiveUser();
if (group.hasUser(currentUser.getEmail())) {
  console.log('You are a member');
}

Параметры

Имя Тип Описание
email String Адрес электронной почты пользователя.

Возвращаться

Booleantrue если пользователь является членом группы; false в противном случае.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups

hasUser(user)

Проверяет, является ли пользователь прямым членом группы. Генерирует исключение, если у вас нет разрешения на просмотр списка членов группы.

Вот пример проверки того, является ли текущий пользователь членом группы:

const group = GroupsApp.getGroupByEmail('example@googlegroups.com');
const currentUser = Session.getActiveUser();
if (group.hasUser(currentUser)) {
  console.log('You are a member');
}

Параметры

Имя Тип Описание
user User Пользователь, чье членство необходимо проверить.

Возвращаться

Booleantrue если пользователь является членом группы; false в противном случае.

Авторизация

Для скриптов, использующих этот метод, требуется авторизация в одной или нескольких из следующих областей действия :

  • https://www.googleapis.com/auth/groups