如何设置 Google 群组审核和发帖权限

How to set Google Groups moderation and posting permissions

我有以下脚本为我工作....(脚本自动创建一个 google 组,其中包含电子表格中的数据,该电子表格会自动填充表单中的数据...)

function onFormSubmit() {
 var sheet = SpreadsheetApp.openById("17KZXpWHipISZSqgD9w255VrirzITrks0fLaBpXp7Ybk")
 var email = sheet.getRange("B"+sheet.getLastRow()).getValue()
 var name = sheet.getRange("C"+sheet.getLastRow()).getValue()
 var user = sheet.getRange("AH"+sheet.getLastRow()).getValue()
 try{
   AdminDirectory.Groups.insert(
     {
       "email": email,
       "name": name,
     }
   )
   AdminDirectory.Members.insert(
     {
       "email": user,
       "role": "OWNER",
     }
     , email)
   GmailApp.sendEmail("Manager@test.co.uk",email + "  Group creation | Success", " address has been created for " + name)
 } catch(e){}
}

谁能帮我完成它,因为我无法完成的剩余步骤是:

将组审核设置设置为:跳过审核队列并将 Post 条消息发送到组

将 Posting 权限设置为:public

function onFormSubmit() {
 var sheet = SpreadsheetApp.openById("17KZXpWHipISZSqgD9w255VrirzITrks0fLaBpXp7Ybk")
 var email = sheet.getRange("B"+sheet.getLastRow()).getValue()
 var name = sheet.getRange("C"+sheet.getLastRow()).getValue()
 var user = sheet.getRange("AH"+sheet.getLastRow()).getValue()
 try{
   AdminDirectory.Groups.insert(
     {
       "email": email,
       "name": name,
     }
   )
   AdminDirectory.Members.insert(
     {
       "email": user,
       "role": "OWNER",
     }
    )
   AdminDirectory.Groups.update(
     {
       "whoCanJoin": "CAN_REQUEST_TO_JOIN",
       "whoCanViewMembership": "ALL_IN_DOMAIN_CAN_VIEW",
       "whoCanViewGroup": "ALL_IN_DOMAIN_CAN_VIEW",
       "whoCanInvite": "ALL_MANAGERS_CAN_INVITE",
       "allowExternalMembers": "false",
       "whoCanPostMessage": "PUBLIC",
     }
    )
   AdminDirectory.Groups.moderation(
     {
      "Spammessages": "Skip_the_moderation_queue_and_post_to_the_group"
     }
     , email)
   GmailApp.sendEmail("r.hershey@onemotion.co.uk",email + "  Group creation | Success", " address has been created for " + name)
 } catch(e){}
}

我试过了,但要么我累了,要么我错过了一些愚蠢的东西......?

基于此 documentation, possible values for whoCanPostMessage 属性 是:

  • ALL_IN_DOMAIN_CAN_POST — 帐户中的任何人都可以 post 发消息。
  • ALL_MANAGERS_CAN_POST — 包括群组所有者在内的管理员可以 post 发消息。
  • ALL_MEMBERS_CAN_POST — 任何群组成员都可以 post 发消息。
  • ANYONE_CAN_POST — 您帐户以外的任何 Google Apps 用户都可以访问您的 Google 网上论坛服务和 post 消息.
    提示:当whoCanPostMessage设置为ANYONE_CAN_POST时,建议将messageModerationLevel属性设置为MODERATE_NON_MEMBERS以保护组免受可能的垃圾邮件。
  • NONE_CAN_POST — 该组已禁用并存档。没有人可以 post 向该组发送消息。
    • archiveOnly value="false" 时,将 whoCanPostMessage 属性 更新为 NONE_CAN_POST,导致错误。
    • 如果 archiveOnly"true" 还原为 "false",则 whoCanPostMessages 属性 设置为 ALL_MANAGERS_CAN_POST

此外,我没有看到任何关于 AdminDirectory.Groups.moderationSpammessages 的参考资料。您可能需要查看给定的文档并查看是否 messageModerationLevel and spamModerationLevel 有帮助。