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 — อีเมลของกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

getGroups()

เรียกข้อมูลกลุ่มย่อยโดยตรงของกลุ่ม แสดงข้อยกเว้นหากคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

นอกจากวิธีนี้ คุณยังใช้บริการขั้นสูงของ Admin SDK Directory เพื่อดึงข้อมูลสมาชิกกลุ่มในโดเมนได้อีกด้วย

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[] — กลุ่มย่อยโดยตรงทั้งหมดของกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

getRole(email)

ดึงข้อมูลบทบาทของผู้ใช้ในบริบทของกลุ่ม ผู้ใช้ที่เป็นสมาชิกโดยตรงของกลุ่มจะมีบทบาทเพียง 1 บทบาทภายในกลุ่มนั้น แสดงข้อยกเว้นหากผู้ใช้ไม่ได้เป็นสมาชิกของกลุ่ม หรือคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

ตัวอย่างนี้จะแสดงรายชื่อเจ้าของกลุ่ม

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 — บทบาทของผู้ใช้นั้นในกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

getRole(user)

ดึงข้อมูลบทบาทของผู้ใช้ในบริบทของกลุ่ม ผู้ใช้ที่เป็นสมาชิกโดยตรงของกลุ่มจะมีบทบาทเพียง 1 บทบาทภายในกลุ่มนั้น แสดงข้อยกเว้นหากผู้ใช้ไม่ได้เป็นสมาชิกของกลุ่ม หรือคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

ตัวอย่างนี้จะแสดงรายชื่อเจ้าของกลุ่ม

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 — บทบาทของผู้ใช้นั้นในกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

ดูเพิ่มเติม


getRoles(users)

ดึงข้อมูลบทบาทของผู้ใช้ในบริบทของกลุ่ม ผู้ใช้ที่เป็นสมาชิกโดยตรงของกลุ่มจะมีบทบาทเพียง 1 บทบาทภายในกลุ่มนั้น แสดงข้อยกเว้นหากผู้ใช้รายใดไม่ได้เป็นสมาชิกของกลุ่ม หรือคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

ตัวอย่างนี้จะแสดงรายชื่อเจ้าของกลุ่ม

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[] — บทบาทของผู้ใช้เหล่านั้นภายในกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • 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 Directory เพื่อดึงข้อมูลสมาชิกกลุ่มในโดเมนได้อีกด้วย

รีเทิร์น

User[] — สมาชิกโดยตรงทั้งหมดของกลุ่ม

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

hasGroup(group)

ทดสอบว่ากลุ่มหนึ่งเป็นสมาชิกโดยตรงของกลุ่มนี้หรือไม่ เมธอดจะไม่แสดงผล true หากกลุ่มที่ทดสอบอยู่ซ้อนกันมากกว่า 1 ระดับใต้กลุ่มนี้ แสดงข้อยกเว้นหากคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

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กลุ่มที่จะทดสอบการเป็นสมาชิก

รีเทิร์น

Booleantrue หากกลุ่มนั้นเป็นกลุ่มย่อยของกลุ่มนี้ หรือ false หากไม่ใช่

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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

hasGroup(email)

ทดสอบว่ากลุ่มหนึ่งเป็นสมาชิกโดยตรงของกลุ่มนี้หรือไม่ เมธอดจะไม่แสดงผล true หากกลุ่มที่ทดสอบอยู่ซ้อนกันมากกว่า 1 ระดับใต้กลุ่มนี้ แสดงข้อยกเว้นหากคุณไม่มีสิทธิ์ดูรายชื่อสมาชิกของกลุ่ม

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

พารามิเตอร์

ชื่อประเภทคำอธิบาย
emailStringอีเมลของกลุ่ม

รีเทิร์น

Booleantrue หากกลุ่มนั้นเป็นกลุ่มย่อยของกลุ่มนี้ หรือ false หากไม่ใช่

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • 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อีเมลของผู้ใช้

รีเทิร์น

Booleantrue หากผู้ใช้รายนั้นเป็นสมาชิกของกลุ่ม หรือ false หากไม่ใช่

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • 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ผู้ใช้ที่จะทดสอบการเป็นสมาชิก

รีเทิร์น

Booleantrue หากผู้ใช้รายนั้นเป็นสมาชิกของกลุ่ม หรือ false หากไม่ใช่

การให้สิทธิ์

สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

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