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());
  }
}

메서드

메서드반환 유형간략한 설명
getEmail()String이 그룹의 이메일 주소를 가져옵니다.
getGroups()Group[]그룹의 직접 하위 그룹을 가져옵니다.
getRole(email)Role그룹 컨텍스트에서 사용자의 역할을 가져옵니다.
getRole(user)Role그룹 컨텍스트에서 사용자의 역할을 가져옵니다.
getRoles(users)Role[]그룹 컨텍스트에서 사용자의 역할을 가져옵니다.
getUsers()User[]알려진 상응하는 Google 계정이 있는 그룹의 직접 구성원을 가져옵니다.
hasGroup(group)Boolean그룹이 이 그룹의 직접 구성원인지 테스트합니다.
hasGroup(email)Boolean그룹이 이 그룹의 직접 구성원인지 테스트합니다.
hasUser(email)Boolean사용자가 그룹의 직접적인 구성원인지 테스트합니다.
hasUser(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());
  }
}

매개변수

이름유형설명
emailString사용자의 이메일 주소입니다.

리턴

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());
  }
}

매개변수

이름유형설명
userUser역할을 검색할 사용자입니다.

리턴

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());
  }
}

매개변수

이름유형설명
usersUser[]역할이 요청된 사용자입니다.

리턴

Role[]: 그룹 내 사용자의 역할입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

getUsers()

알려진 상응하는 Google 계정이 있는 그룹의 직접 구성원 및 차단된 구성원을 가져옵니다. 그룹의 구성원 목록 또는 구성원 이메일을 볼 권한이 없는 경우 예외가 발생합니다.

참고: 다른 그룹 A의 구성원인 그룹 B의 구성원인 경우 그룹 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');
}

매개변수

이름유형설명
groupGroup멤버십을 테스트할 그룹입니다.

리턴

Boolean: 해당 그룹이 이 그룹의 하위 그룹인 경우 true, 그렇지 않으면 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');
}

매개변수

이름유형설명
emailString그룹의 이메일 주소입니다.

리턴

Boolean: 해당 그룹이 이 그룹의 하위 그룹인 경우 true, 그렇지 않으면 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');
}

매개변수

이름유형설명
emailString사용자의 이메일 주소입니다.

리턴

Boolean: 사용자가 그룹의 구성원인 경우 true이고, 그렇지 않은 경우에는 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');
}

매개변수

이름유형설명
userUser멤버십을 테스트할 사용자입니다.

리턴

Boolean: 사용자가 그룹의 구성원인 경우 true이고, 그렇지 않은 경우에는 false입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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