В Google Classroom роли ученика и преподавателя определяют роль пользователя в курсе. Пользователь может быть назначен преподавателем в одном курсе и учеником в другом. Обозначение «ученик» или «преподаватель» обозначает набор разрешений для конкретного пользователя в конкретном курсе.
- Студенты
Ресурс
Studentпредставляет собой пользователя, зачисленного в качестве студента.в рамках конкретного курса. Студентам разрешается просматривать подробную информацию о курсе и преподавателях этого курса.
- Учителя
Ресурс
Teacherпредставляет собой пользователя, который ведет конкретный курс. Преподавателям разрешено просматривать и изменять сведения о курсе, просматривать преподавателей и студентов, а также управлять дополнительными преподавателями и студентами. У каждого курса есть основной преподаватель, или владелец курса, который является преподавателем и может управлять такими настройками, как передача прав собственности на курс.
Студенты и преподаватели идентифицируются по уникальному идентификатору или адресу электронной почты пользователя, возвращаемому API каталога . Текущий пользователь также может использовать свой собственный идентификатор, используя сокращение "me" .
Прямое управление правами доступа с помощью Classroom API
Администраторы, студенты и преподаватели имеют разные права доступа при непосредственном добавлении или удалении пользователей из курсов с помощью Classroom API.
Администраторы
Администраторам домена разрешается обходить процедуру приглашения и напрямую добавлять студентов и преподавателей в курс при соблюдении следующих условий:
- Добавляемый пользователь входит в домен администратора.
- Основной преподаватель курса, или владелец курса, входит в сферу ответственности администратора.
Для пользователей или курсов, находящихся вне компетенции администратора, приложения должны получить согласие пользователя, отправив приглашение с помощью метода invitations.create .
Студенты
Студенты могут записаться на курс, вызвав students.create и указав enrollmentCode курса. enrollmentCode — это уникальный идентификатор курса, который указывается в ресурсе Course . В веб-приложении Classroom enrollmentCode доступен на вкладке «Поток» и на странице с подробными сведениями о курсе.
Учителя
Преподаватели не могут напрямую добавлять пользователей в курс и должны использовать метод invitations.create для приглашения студентов и других преподавателей в курс.
В таблице ниже указано, каким пользователям разрешено отправлять запросы на create и delete ресурсов Teacher и Student .
| Администратор | Учитель | Студент | |
|---|---|---|---|
CreateTeacher | ✔️ | ✖️ | ✖️ |
DeleteTeacher | ✔️ | ✔️ | ✖️ |
CreateStudent | ✔️ | ✖️ | ✔️ 1 |
DeleteStudent | ✔️ | ✔️ | ✔️ 2 |
1. Студент может записаться на курс только самостоятельно.
2. Студент может удалить себя из курса только самостоятельно.
Управление учителями
Администраторы домена могут напрямую добавлять преподавателей в курсы в рамках своего домена с помощью teachers.create , как показано в следующем примере:
.СЕТЬ
Java
PHP
Python
Сопреподаватели могут удалять других преподавателей из курса с помощью метода teachers.delete . Это удаляет из курса только указанного преподавателя и не влияет на его назначение в другие курсы или на его профиль пользователя.
Управление владельцами курсов
Администраторы домена могут передавать права собственности на курсы между преподавателями. Важную информацию см. в разделе « Обновление владельца курса» .
Управление студентами
Администраторы домена могут напрямую добавлять студентов в свой домен с помощью метода students.create . Если студент добавляет себя на курс самостоятельно, требуется enrollmentCode .
.СЕТЬ
Java
PHP
Python
Удаление студента из курса с помощью метода students.delete удаляет его только из указанного курса и не влияет на его зачисление в другие курсы или на его профиль пользователя.
Получить список курсов пользователя.
Чтобы получить список курсов для студента или преподавателя, вызовите courses.list и укажите studentId или teacherId соответствующего пользователя.
Нельзя одновременно задать studentId и teacherId в одном запросе courses.list() . Чтобы получить список курсов, на которые записаны конкретный преподаватель и конкретный студент, выполните отдельные запросы courses.list() для каждого пользователя. Затем найдите пересечение двух наборов результатов.
Получить профиль пользователя
Чтобы получить профиль пользователя, включая идентификатор и имя, вызовите метод userProfiles.get , указав идентификатор пользователя, адрес электронной почты или "me" для запрашивающего пользователя. Для получения поля emailAddress необходимо включить область видимости classroom.profile.emails .
Возвращаемый id соответствует ресурсу Directory API Users, содержащему соответствующий studentId или teacherId .