2014-09-28 6 views
2

Я довольно смущен, но, как новый пользователь Google Apps, я могу сделать что-то неправильно.Группы Google getUsers() не возвращает всех членов

  • Я создал домен "mydomain.tld" и группу "mygroup" google в этом домене.

  • Эта группа содержит адреса электронной почты, которые не все @ gmail.com или @ domain.tld. Все они были добавлены напрямую (это список студентов для школы)

  • Я создал таблицу и добавил скрипт на лист, чтобы получить все члены группы.

  • Все хорошо, если я использую устаревшую функцию: GroupsManager.getGroup("[email protected]").getAllMembers();

  • я получаю только небольшую часть членов группы, когда я использую новый API: GroupsApp.getGroupByEmail("[email protected]").getUsers();

Насколько я может видеть, что я получаю все адреса электронной почты gmail.com, а также некоторые электронные письма из других доменов.

Большое спасибо заранее, чтобы сообщить мне, что я не так, и как я могу получить все адреса электронной почты группы с текущим API.

ответ

0

Наиболее вероятный ответ заключается в том, что адреса, которые не возвращаются, не являются реальными пользователями, а являются пользователями «Группы» или «Не-Google».

Я понимаю, что в устаревшем методе «getAllMembers()» будет буквально перечислить электронные письма всех членов группы, однако «getUsers()» просто возвращает фактические учетные записи Google, а не просто список всего адреса электронной почты. В результате любые вложенные группы не будут возвращать адрес электронной почты второй группы (так как это не настоящий пользователь), и он также не будет возвращать адреса любой учетной записи, отличной от Google, которые указаны в группе (поскольку Google не видеть их как «Реальные пользователи»).

Простой способ тестирования = Проверьте, не возвращаются ли результаты, которые являются недействительными, - это групповые адреса электронной почты и/или учетные записи, отличные от Gmail, такие как адреса Hotmail.

Если это так, и вы хотите откликнуться на Google, вы можете прокрутить вниз до самого нижнего края groups page и нажать «Сообщить о проблеме» в разделе «Подключиться». Это откроет диалоговое окно, которое позволит вам вернуться в Google.

+0

Спасибо. Я проверил, что getUsers возвращают в основном gmail-адреса, но также hotmail и другие. Возможно, это связано с тем, что они связаны так или иначе с учетной записью Google. – Olive

+0

@Olive это возможно.Вы можете зарегистрироваться для использования сервисов Google (кроме Gmail) с адресом электронной почты, отличным от Google. Если вы перейдете на страницу https://accounts.google.com/SignUpWithoutGmail, которую попросили ввести не-адрес Google, который вы уже используете, чтобы создать учетную запись Google, чтобы эти пользователи hotmail могли входить в Youtube с помощью своей учетной записи hotmail , – HDCerberus

+0

Спасибо за информацию. Теперь я должен выяснить, какая команда доступна, чтобы получить список всех адресов группы, то есть тот, который заменяет «GroupManager.getGroup (« [email protected] »). GetAllMembers();' – Olive

1

Я нашел способ, чтобы получить полный список адресов группы с помощью:

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

Это требует, чтобы разрешить администратора API в меню Google Advanced Services редактора сценариев и активации SDK администратора в консоли Google dev.

Он хорошо работает, если пользователь является супер администратором домена, но мне еще не удалось разрешить пользователям, не являющимся супер-администраторами, использовать эту функцию.

Любой намек о том, где искать, будет оценен по достоинству.

+0

Я уверен, что этот API доступен только для людей с правами администратора в домене. Это для вас проблема? То, что я делаю (лично), сбрасывает все списки членов группы в электронной таблице, и я передаю этот список всем пользователям домена ... Этот лист автоматически обновляется каждый день (каждую ночь, чтобы быть более точным ;-). –

+0

То, что я пытался сделать, - дать возможность человеку в школе синхронизировать группы из электронной таблицы, содержащей все данные студентов, по одному листу на класс, используя сценарий для этой цели. Это раздражает, чтобы предоставить пользователю все права администратора только для этого. Я пробовал это без успеха ... все еще исследуя ... Я знаю, что эта синхронизация может выполняться автоматически из учетной записи администратора, но автоматизировать ее не подходит, потому что всегда есть опечатки в адресах, которые необходимо устранить, прежде чем синхронизировать группы. Именно по этой причине мне потребуется эта задача, которую должен выполнить секретариат – Olive

Смежные вопросы