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[] গ্রুপের সেইসব সরাসরি সদস্য এবং নিষিদ্ধ সদস্যদের খুঁজে বের করে যাদের একটি পরিচিত সংশ্লিষ্ট গুগল অ্যাকাউন্ট রয়েছে।
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()

গ্রুপটির সরাসরি অধীনস্থ গ্রুপগুলো খুঁজে বের করে। গ্রুপটির সদস্য তালিকা দেখার অনুমতি না থাকলে একটি ব্যতিক্রমী ত্রুটি (exception) দেখায়।

এই পদ্ধতির পাশাপাশি, আপনি একটি ডোমেইনের গ্রুপ সদস্যদের পুনরুদ্ধার করতে অ্যাডমিন এসডিকে ডিরেক্টরি অ্যাডভান্সড সার্ভিসটি ব্যবহার করতে পারেন।

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)

গ্রুপের প্রেক্ষাপটে একজন ব্যবহারকারীর ভূমিকা খুঁজে বের করে। কোনো গ্রুপের সরাসরি সদস্যের সেই গ্রুপের মধ্যে ঠিক একটিই ভূমিকা থাকে। যদি ব্যবহারকারী গ্রুপটির সদস্য না হন অথবা গ্রুপটির সদস্য তালিকা দেখার অনুমতি আপনার না থাকে, তবে একটি ব্যতিক্রমী ত্রুটি (exception) দেখানো হয়।

এই উদাহরণে একটি গ্রুপের মালিকদের তালিকা দেওয়া হয়েছে:

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)

গ্রুপের প্রেক্ষাপটে একজন ব্যবহারকারীর ভূমিকা খুঁজে বের করে। কোনো গ্রুপের সরাসরি সদস্যের সেই গ্রুপের মধ্যে ঠিক একটিই ভূমিকা থাকে। যদি ব্যবহারকারী গ্রুপটির সদস্য না হন অথবা গ্রুপটির সদস্য তালিকা দেখার অনুমতি আপনার না থাকে, তবে একটি ব্যতিক্রমী ত্রুটি (exception) দেখানো হয়।

এই উদাহরণে একটি গ্রুপের মালিকদের তালিকা দেওয়া হয়েছে:

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)

গ্রুপের প্রেক্ষাপটে ব্যবহারকারীদের ভূমিকা পুনরুদ্ধার করে। কোনো গ্রুপের সরাসরি সদস্যের সেই গ্রুপের মধ্যে ঠিক একটিই ভূমিকা থাকে। যদি কোনো ব্যবহারকারী গ্রুপের সদস্য না হন অথবা গ্রুপের সদস্য তালিকা দেখার অনুমতি আপনার না থাকে, তবে একটি ব্যতিক্রমী ত্রুটি (exception) দেখানো হয়।

এই উদাহরণে একটি গ্রুপের মালিকদের তালিকা দেওয়া হয়েছে:

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

গ্রুপের সেইসব সরাসরি সদস্য এবং নিষিদ্ধ সদস্যদের খুঁজে বের করে যাদের একটি পরিচিত গুগল অ্যাকাউন্ট আছে। যদি আপনার গ্রুপের সদস্য তালিকা বা সদস্যদের ইমেল দেখার অনুমতি না থাকে, তবে একটি ব্যতিক্রমী ত্রুটি (exception) দেখায়।

দ্রষ্টব্য: আপনি যদি গ্রুপ 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());
  }
}
এই পদ্ধতির পাশাপাশি, আপনি একটি ডোমেইনের গ্রুপ সদস্যদের পুনরুদ্ধার করতে অ্যাডমিন এসডিকে ডিরেক্টরি অ্যাডভান্সড সার্ভিসটি ব্যবহার করতে পারেন।

ফেরত

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 যে দলের সদস্যপদ পরীক্ষা করা হবে।

ফেরত

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

প্যারামিটার

নাম প্রকার বর্ণনা
email String একটি গ্রুপের ইমেইল ঠিকানা।

ফেরত

Boolean — যদি সেই গ্রুপটি এই গ্রুপের একটি চাইল্ড গ্রুপ হয় তবে true ; অন্যথায় false

অনুমোদন

যে স্ক্রিপ্টগুলো এই পদ্ধতি ব্যবহার করে, সেগুলোর জন্য নিম্নলিখিত এক বা একাধিক স্কোপের মাধ্যমে অনুমোদনের প্রয়োজন হয়:

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

hasUser(email)

ব্যবহারকারী গ্রুপটির সরাসরি সদস্য কিনা তা পরীক্ষা করে। গ্রুপটির সদস্য তালিকা দেখার অনুমতি না থাকলে একটি ব্যতিক্রমী ত্রুটি (exception) দেখানো হয়।

বর্তমান ব্যবহারকারী কোনো গ্রুপের সদস্য কি না, তা যাচাই করার একটি উদাহরণ এখানে দেওয়া হলো:

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

প্যারামিটার

নাম প্রকার বর্ণনা
email String একজন ব্যবহারকারীর ইমেইল ঠিকানা।

ফেরত

Boolean — যদি ব্যবহারকারী গ্রুপটির সদস্য হন তবে true ; অন্যথায় false

অনুমোদন

যে স্ক্রিপ্টগুলো এই পদ্ধতি ব্যবহার করে, সেগুলোর জন্য নিম্নলিখিত এক বা একাধিক স্কোপের মাধ্যমে অনুমোদনের প্রয়োজন হয়:

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

hasUser(user)

ব্যবহারকারী গ্রুপটির সরাসরি সদস্য কিনা তা পরীক্ষা করে। গ্রুপটির সদস্য তালিকা দেখার অনুমতি না থাকলে একটি ব্যতিক্রমী ত্রুটি (exception) দেখানো হয়।

বর্তমান ব্যবহারকারী কোনো গ্রুপের সদস্য কি না, তা যাচাই করার একটি উদাহরণ এখানে দেওয়া হলো:

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

প্যারামিটার

নাম প্রকার বর্ণনা
user User যে ব্যবহারকারীর সদস্যপদ পরীক্ষা করা হবে।

ফেরত

Boolean — যদি ব্যবহারকারী গ্রুপটির সদস্য হন তবে true ; অন্যথায় false

অনুমোদন

যে স্ক্রিপ্টগুলো এই পদ্ধতি ব্যবহার করে, সেগুলোর জন্য নিম্নলিখিত এক বা একাধিক স্কোপের মাধ্যমে অনুমোদনের প্রয়োজন হয়:

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