2

私はかなり混乱していますが、新しい Google Apps ユーザーとして間違ったことをするかもしれません。

  • 「mydomain.tld」ドメインと、このドメインに「mygroup」Google グループを作成しました。

  • このグループには、@gmail.com または @domain.tld 以外の電子メール アドレスが含まれています。すべて直接追加されています(学校の生徒リストです)

  • スプレッドシートを作成し、シートにスクリプトを追加して、グループのすべてのメンバーを取得しました。

  • 非推奨の関数を使用すれば、すべて問題ありません。GroupsManager.getGroup("mygroup@mydomain.tld").getAllMembers();

  • 新しい API を使用すると、グループ メンバーのごく一部しか取得できません。 GroupsApp.getGroupByEmail("mygroup@mydomain.tld").getUsers();

私が見る限り、すべての gmail.com メール アドレスに加えて、他のドメインからのメールもいくつか取得しています。

私が間違っている点と、現在の API を使用してグループのすべてのメール アドレスを取得する方法を事前にお知らせいただき、ありがとうございます。

4

2 に答える 2

1

以下を使用して、グループのアドレスの完全なリストを取得する方法を見つけました。

lMembers = AdminDirectory.Members.list(my_group_email).members

これには、スクリプト エディターの Google Advanced Services メニューで管理 API を承認し、Google 開発コンソールで Admin SDK をアクティブ化する必要があります。

ユーザーがドメインのスーパー管理者である場合はうまく機能しますが、スーパー管理者以外のユーザーにこの機能の使用を許可することはまだできていません。

どこを探すべきかについてのヒントをいただければ幸いです。

于 2014-10-01T14:50:09.953 に答える
0

ここで最も可能性の高い答えは、返されないアドレスは実際のユーザーではなく、代わりに「グループ」または Google 以外のユーザーであるということです。

古い廃止されたメソッドでは、「getAllMembers()」はグループのすべてのメンバーの電子メールを文字通りリストしますが、「getUsers()」はすべての電子メール アドレスのリストではなく、実際の G​​oogle アカウントを返すようです。 . その結果、ネストされたグループは 2 番目のグループのメール アドレスを返さず (これは実際のユーザーではないため)、グループにリストされている Google 以外のアカウントのアドレスも返しません (Google は返さないため)。それらを「実際のユーザー」と見なします)。

簡単なテスト方法 = 返されない結果がグループ メール アドレスか、Hotmail アドレスなどの Gmail 以外のアカウントかを確認します。

これが事実であり、これについて Google にフィードバックしたい場合は、グループ ページの一番下までスクロールして、 [接続] の下の [問題を報告] をクリックしてください。これにより、Google にフィードバックできるダイアログ ボックスが開きます。

于 2014-09-29T20:55:28.567 に答える