Deweloperzy mogą używać interfejsu API Google Classroom do interakcji z materiałami edukacyjnymi w Google Classroom. Aplikacja, która w taki sposób korzysta z interfejsu API, jest nazywana CourseWork
integracją.
Ta ścieżka integracji jest często używana do tworzenia i oceniania projektów z linkami do zasobów spoza Classroom. Zapewnia on deweloperom większy dostęp do zarządzania zajęciami niż przyciski Udostępnij w Classroom.
Jak to działa
Podstawową funkcją integracji z CourseWork
jest tworzenie i zarządzanie pracami domowymi, ogłoszeniami i materiałami kursu za pomocą interfejsu Classroom API.
Przykładem typowej ścieżki użytkownika, którą umożliwia integracja z CourseWork
, jest umożliwienie nauczycielom znajdowania, przypisywania i oceniania treści w Twojej witrynie lub aplikacji:
- Nauczyciel loguje się w Twojej witrynie.
- Nauczyciel znajduje lub tworzy treści, którymi chce się podzielić z klasą. Nauczyciel klika przycisk w Twojej witrynie, aby wysłać te treści do Google Classroom.
- Twoje zgłoszenie powoduje wysłanie prośby do
courses.courseWork.create
. W treści żądania znajduje się obiektCourseWork
, który zawiera:- Identyfikator kursu docelowego.
- Tytuł projektu.
- Opis tekstowy projektu.
link
Material
z adresem URL do treści wybranych przez nauczyciela.- Opcjonalnie maksymalna ocena możliwa do uzyskania w przypadku wybranych treści.
- W Classroom pojawi się nowy projekt z załączonym linkiem.
Link odnosi się do adresu URL podanego w żądaniu
create
. Przykład znajdziesz na rysunku 1. - W dzienniku ocen Classroom pojawi się też nowa kolumna dotycząca projektu, w tym maksymalna ocena, jeśli zostanie podana.
- Uczniowie otrzymują projekt i klikają
link Material
, aby otworzyć podany adres URL w nowej karcie i wyświetlić lub dokończyć treść witryny. Opcjonalnie udostępnij uczniowi opcje kontroli, aby mógł oddać projekt. - Opcjonalnie możesz wysłać prośbę do
courses.courseWork.studentSubmissions.modifyAttachments
o dodanie załączników do pracy przesłanej przez ucznia, takich jak plik z Dysku Google lublink Material
wskazujący na pracę ucznia w Twojej witrynie. - Opcjonalnie możesz wysłać prośbę do
courses.courseWork.studentSubmissions.patch
o ustawienie oceny ucznia za projekt.
Rysunek 1. Widok nauczyciela podczas edytowania projektu z link Material
utworzonego przez integrację CourseWork
.
Możesz też użyć funkcji courses.announcements.create
lub courses.courseWorkMaterials.create
, aby utworzyć ogłoszenie lub materiały do zajęć zamiast projektu. Szczegółowe opisy odpowiednich działań interfejsu Classroom API znajdziesz na stronach Tworzenie i zarządzanie pracami dydaktycznymi oraz Ustawianie i aktualizowanie ocen.
Uwagi
Zanim zdecydujesz, czy integracja z CourseWork
jest odpowiednia dla Twoich potrzeb związanych z produktem, weź pod uwagę te kwestie.
- Musisz autoryzować użytkownika i poprosić go o zgodę. Wysyłasz żądania do interfejsu API w imieniu użytkownika. Oznacza to na przykład, że nie możesz tworzyć zadań z żadnych zajęć w Google Classroom. Możesz tworzyć zadania tylko na zajęciach, które prowadzi upoważniony użytkownik.
- Musisz umożliwić użytkownikowi wybranie kursu, aby mógł otrzymać treści.
Rozważ użycie interfejsu
courses.list
, aby uzyskać listę kursów prowadzonych przez użytkownika, a następnie zezwolić użytkownikowi na wybranie co najmniej jednego kursu z tej listy. - Gdy użytkownik kliknie
link Material
w Classroom, link otworzy się w nowej karcie. Twój serwer nie otrzyma żadnych informacji z Classroom, gdy otworzysz adres URL. - Nauczyciel może modyfikować lub usuwać treści zajęć niezależnie od dewelopera. Oznacza to, że wiedza programisty na temat kursu może być nieaktualna. Jeśli chcesz otrzymywać informacje o zmianach w materiałach szkoleniowych, możesz skonfigurować powiadomienia push o zmianach w materiałach szkoleniowych.
- Nauczyciel może tworzyć zadania w interfejsie Classroom, wklejając linki do adresów URL w swojej witrynie. Zadania w ramach zajęć utworzone w ten sposób są własnością nauczyciela, więc nie będzie można wyświetlać, modyfikować ani ustawiać ocen przesłanych zadań za pomocą interfejsu Classroom API.