Google Group メンバーリスト参照

Google Group のメンバー(メールアドレス)リストを取得します。定期的にグループメンバー(MLメンバー)を確認することにより、ML管理が行いやすくなります。また、不要なメンバーへのメール送信や、本来のメンバーへの情報共有の漏れなどを防ぐことに繋がります。

    A. OAuth2通信許可設定名 (←[OAuth 2.0 設定])単一行記述必須
    B. Groupアドレスが格納されている文字列型データを選択してください(存在しない場合、エラー)データ項目選択文字列型(単一行)必須
    C. メールアドレス一覧が格納される文字列型データを選択してください (更新)データ項目選択文字列型(複数行)必須
    X. 通信ログが格納される文字列型データを選択してください (更新)データ項目選択文字列型(複数行)
    -設定変数名設定ラベル
    Aconf_OAuth2OAuth2通信許可設定名 (←[OAuth 2.0 設定])
    Bconf_DataIdBGroupアドレスが格納されている文字列型データを選択してください(存在しない場合、エラー)
    Cconf_DataIdCメールアドレス一覧が格納される文字列型データを選択してください (更新)
    Xconf_DataIdX通信ログが格納される文字列型データを選択してください (更新)
    // Google Group members retrieve via Admin SDK Directory API (ver. 20170710)
    // (c) 2017, Questetra, Inc. (the MIT License)
    
    //// == 工程コンフィグの参照 / Config Retrieving ==
    var oauth2  = configs.get( "conf_OAuth2" ) + "";
    var dataIdB = configs.get( "conf_DataIdB" ); // (returns key)
    var dataIdC = configs.get( "conf_DataIdC" ); // (returns key)
    var dataIdX = configs.get( "conf_DataIdX" ); // (returns key)
    
    //// == ワークフローデータの参照 / Data Retrieving ==
    var targetGroup = data.get( dataIdB ) + "";
    
    //// == 演算 / Calculating ==
    var membersEmail = "";
    var accessLog = "";
    var token = httpClient.getOAuth2Token( oauth2 );
    
    var uri = "https://www.googleapis.com/admin/directory/v1/groups/" + targetGroup + "/members/";
    var response = httpClient.begin()
      .bearer( token )
      .get( uri );
    var groupMembersObj = JSON.parse( response.getResponseAsString() );
    for( var i = 0; i < groupMembersObj.members.length; i++ ){
      membersEmail += groupMembersObj.members[i].email + "\n";
    }
    accessLog += "---GET request--- " + response.getStatusCode() + "\n";
    accessLog += response.getResponseAsString() + "\n";
    
    //// == ワークフローデータへの代入 / Data Updating ==
    retVal.put( dataIdC, membersEmail );
    if( dataIdX !== "" ){
      retVal.put( dataIdX, accessLog );
    }
    

    • B’: Bで選択したデータ項目に格納されているGoogle Group のアドレス
    • B’ の Google Group のメンバーリストを取得し C で選択したデータ項目に格納されます
    • 通信ログが X で選択したデータ項目に格納されます
    • 事前に Google Developers Console にて「Admin SDK」を有効にし、「クライアントID」と「クライアントシークレット」を取得します
    • G Suite のドメイン管理画面にて、「クライアントID」とその通信スコープについて許諾します