В этом руководстве представлен обзор основных компонентов API Google Classroom. API Google Classroom состоит из ресурсов и сервисов . Ресурсы представляют собой сущности в Google Classroom, такие как курсы или задания, а сервисы извлекают эти ресурсы и управляют ими. Некоторые из этих сущностей имеют дополнительные свойства, специфичные для API, помимо свойств, существующих в Classroom. Основные типы сущностей:
Сущность | Представительство в классе |
---|---|
Курсы | Класс, например, «4-й урок математики М. Смита». |
Псевдонимы | Альтернативный идентификатор для курса. |
Приглашения | Средство добавления пользователей в класс. |
Студенты | Ученик в классе. |
Учителя | Учитель в классе. |
Профили пользователей | Пользователь в более общем смысле, вне контекста ученика или учителя. |
Курсовая работа | Задание в классе. |
Студенческие работы | Студенты работают над определенным заданием, например над ответами или рабочими листами. |
Материалы для курсовых работ | Материалы для учащихся в классе. |
Объявления | Объявление для студентов в классе. |
AddOnAttachment | Контент или действие по заданию или материалу, которые обычно отображаются как встроенный iframe. |
Темы | Визуальная группировка заданий и материалов в классе. |
Регистрации | Инструкция по отправке уведомлений в ваше приложение об изменениях данных, например в расписании занятий. |
Большинство ресурсов имеют сервисные методы для стандартных операций, таких как чтение, обновление и удаление экземпляров ресурса. Некоторые ресурсы также имеют пользовательские методы для других операций, например, для изменения списка студентов, которым назначено конкретное задание.
Подробную информацию о ресурсах и методах API см. в справочнике Classroom API .
Обзор взаимосвязей ресурсов
- Курс — это основополагающий объект данных в Google Classroom.
- Псевдонимы используются в качестве альтернативных идентификаторов
Courses
. - Приглашения используются для того, чтобы пригласить пользователей стать преподавателями или студентами
Course
, но пользователи также могут добавляться напрямую администраторами домена Google Workspace for Education. - Преподаватели создают элементы потока и делятся ими со студентами своих курсов. Возможные типы элементов потока: Coursework ( курсовая работа), CourseWorkMaterials (материалы курса) и Announcements (объявления) .
CourseWork
курсовая работа) иCourseWorkMaterials
можно визуально организовать в темы (topics ) и содержать вложения AddOnAttachments (дополнения) . Студенты отправляют задания StudentSubmissions для своихCourseWork
. - Разработчики могут создавать регистрации , чтобы получать уведомления об изменении некоторых из этих данных.
Google Classroom доступен для доменов , подписавшихся на Google Workspace for Education. Домен в контексте Classroom обычно представляет собой школьный округ. Вы можете создать тестовый домен Google Workspace for Education для целей разработки, который предоставит вам контроль над рабочим экземпляром Classroom, не влияя на реальных пользователей.
Курсы и псевдонимы
Courses
представляют собой класс, например, «Математика 4-го класса М. Смита», а также назначенных ему преподавателей, список студентов и метаданные. Каждый курс идентифицируется уникальным идентификатором, назначаемым сервером. Ресурс Course
содержит все метаданные о курсе, такие как название, описание, местоположение и время. Управление списками курсов осуществляется с помощью ресурсов «Студент» , «Преподаватель» и «Приглашение» и их методов.
Aliases
— это альтернативные идентификаторы курса, которые могут быть связаны с курсом и использоваться вместо уникального идентификатора. Каждый псевдоним существует в пространстве имён, которое ограничивает круг лиц, которые могут его создавать и просматривать. Поддерживаются два пространства имён:
- Домен: Пространство доменных имён полезно для создания псевдонимов, к которым нужен доступ всем пользователям, но которые не привязаны к какой-либо одной программе. Например, альтернативные названия курсов, такие как MATH 127 и COMSCI 127, следует создавать в пространстве доменных имён. Псевдонимы в пространстве доменных имён могут создавать только администраторы домена, но они видны всем пользователям домена.
- Проект разработчика: Пространство имён проекта разработчика полезно для управления псевдонимами, специфичными для приложения. Например, приложение, использующее альтернативные идентификаторы для курсов, может создавать псевдонимы для сопоставления своего идентификатора с курсами Classroom. Псевдонимы, созданные в этом пространстве имён, привязаны к определённой консоли Google API . Любой пользователь приложения может создавать и просматривать псевдонимы в пространстве имён проекта разработчика этого приложения.
Дополнительную информацию об управлении метаданными и псевдонимами курсов см. в разделе Управление курсами .
Списки участников курса и пользователи
Students
и Teachers
— это особые соответствия между профилем пользователя и курсом, отражающие роль пользователя в курсе. Обозначения студента и преподавателя не являются глобальными: пользователь может быть назначен преподавателем для одного курса и студентом для другого. Обозначение «студент» или «преподаватель» представляет собой набор прав доступа для конкретного пользователя в конкретном курсе. На курсе может быть несколько преподавателей или ни одного студента. Преподавателей и студентов можно добавлять в курс или удалять из него в любое время.
- Студенты
Ресурс
Student
представляет пользователя, зачисленного в качестве студента на определенный курс.Студентам разрешено просматривать подробную информацию о курсе и преподавателях этого курса.
- Учителя
Ресурс
Teacher
представляет пользователя, который преподает определенный курс.Преподавателям разрешено просматривать и изменять сведения о курсе, просматривать список преподавателей и студентов, а также управлять дополнительными преподавателями и студентами.
Invitations
и связанные с ними методы обеспечивают удобный способ добавления студентов и преподавателей на курсы. Создание приглашений позволяет пользователям самостоятельно решать, присоединяться к курсу или нет, вместо того, чтобы добавлять их напрямую через ресурсы для преподавателей и студентов.
UserProfiles
представляют собой сопоставление с профилем домена пользователя, определяемым по уникальному идентификатору или адресу электронной почты, возвращаемому API каталога . Текущий пользователь также может ссылаться на свой идентификатор, используя сокращённое имя "me"
.
Служба UserProfiles
также может использоваться для управления и приглашения Guardians
, которые обеспечивают связь между учащимся и опекуном. Опекуны в Classroom имеют доступ к некоторой информации об учащемся, например, к его заданиям.
Дополнительную информацию об управлении списками см. в разделе Управление преподавателями и студентами .
Элементы потока
Элементы потока — это фрагменты опубликованного контента, доступные участникам курса. Разработчики и преподаватели могут создавать три типа элементов потока: Announcement
, CourseWork
и CourseWorkMaterial
.
Преподаватели создают Announcements
в верхней части страницы «Поток» в интерфейсе «Класс». CourseWork
и CourseWorkMaterials
создаются преподавателями с помощью кнопки « Создать » на вкладке «Класс». Разработчики могут создавать все типы элементов потока программно через API «Класс».
Для потоковых элементов справедливо следующее:
- Все элементы потока могут содержать дополнительные материалы, такие как файлы Google Диска, видео YouTube, формы Google, гиперссылки URL и вложения надстроек Classroom.
- Все элементы потока могут быть назначены подгруппе студентов курса.
-
CourseWork
может быть оцененной или неоцененной. Преподаватели могут изменить статус оценкиCourseWork
работы в любое время. - Элемент потока может иметь более одного вложения.
- Элемент потока может содержать вложения разных типов. Например, одно задание
CourseWork
может одновременно содержать файлы Google Диска, видео YouTube и дополнения Classroom. - Элемент потока может иметь дополнительные вложения от более чем одного разработчика.
- Разработчики могут получать и изменять сведения о любом ресурсе элемента потока, к которому прикреплено одно из их дополнительных вложений.
- Разработчики могут сдать, отозвать или вернуть студенческую работу по заданию
CourseWork
, которая включает одно из их дополнительных вложений. - Разработчики могут выставлять окончательные оценки только за отдельные работы учащихся в созданных ими заданиях.
Скопированные элементы потока
Преподаватели могут копировать элемент потока, копируя курс, повторно используя задание или публикуя элемент потока в нескольких курсах. Все новые копии будут иметь уникальные идентификаторы, что может быть важным фактором при разработке надстройки для Класса. Ознакомьтесь с нашим руководством по копированию контента, чтобы понять, как надстройка справляется с такими ситуациями.
Курсовые работы и студенческие работы
Элемент CourseWork
представляет собой задание для группы студентов в рамках курса. Это единственный тип элемента потока, который может принимать задания от студентов. Ресурс CourseWork
содержит такие сведения, как описание, срок сдачи, максимальная оценка и метаданные, например, время создания.
Каждый ресурс CourseWork
описывает один из следующих типов задач:
- Задание, которое студенты выполняют, отправляя рабочие листы или другие приложения.
- Вопрос с кратким ответом или вопрос с несколькими вариантами ответов.
Студенческая работа для элемента CourseWork
представлена в виде объекта StudentSubmission
. Он состоит из ответа и дополнительных метаданных, таких как состояние и выставленная оценка.
Содержимое StudentSubmission
зависит от типа соответствующего элемента CourseWork
и может включать в себя:
- Рабочие листы и вложения, отправленные для задания, включая их название, миниатюру и URL-адрес, а также идентификаторы, которые можно использовать с соответствующими API, такими как Drive или YouTube.
- Ответ на вопрос с кратким ответом или вопрос с несколькими вариантами ответов.
Дополнительную информацию об управлении курсовыми работами и студенческими работами см. в разделе Управление курсовыми работами .
Материалы и объявления по курсу
Подобно CourseWork
, CourseWorkMaterials
представляет собой контент, назначенный группе студентов в рамках курса. Каждый ресурс имеет такие сведения, как название и описание, а также дополнительные материалы. Однако, в отличие от CourseWork
, CourseWorkMaterials
не требует от студентов предоставления каких-либо артефактов. Соответственно, срок сдачи отсутствует, и для CourseWorkMaterials
не существует функции StudentSubmissions
. Преподаватели могут использовать CourseWorkMaterials
для публикации рекомендуемой литературы, учебной программы или правил обучения.
Announcements
также представляют собой контент, доступный группе учащихся, но не имеют такой детализации, как название, и не могут быть организованы по Topics
например, CourseWork
или CourseWorkMaterials
. Преподаватели могут использовать их для напоминаний или уведомлений для класса.
Темы
Topics
используются для визуальной организации CourseWork
и CourseWorkMaterials
в рамках курса. Они могут использоваться для группировки заданий, например, по категориям «обязательные» и «обязательные» или «модуль 1» и «модуль 2».
Дополнения к классу
Дополнение — это пользовательский интерфейс и бэкэнд, предоставляемые разработчиком, обычно отображаемые в iframe. Дополнения отображаются как вложения в элементе потока. Элементом потока может быть любой Announcements
, CourseWork
или CourseWorkMaterials
. Вложения дополнений представлены в виде AddOnAttachment
.
Дополнительные вложения могут представлять собой активность или контент .
- Приложения к заданиям требуют от учащегося заполнить и сдать отдельную работу. Примерами могут служить тесты, рисунки или игры. За задание можно дополнительно оценить.
- Прикрепленные материалы не требуют участия студента. Студенту не нужно сдавать вложение, и оно не оценивается. Примерами могут служить фотографии, статьи и видео.
Более подробную информацию см. в руководствах по разработке дополнений .
Регистрации
Приложения могут подписываться на уведомления об изменении определённых данных в Google Classroom. Например, об обновлении расписания курса. Registrations
представляет собой инструкцию на отправку этих уведомлений вашему приложению.
Более подробную информацию см. в руководстве по push-уведомлениям .