Deweloperzy mogą używać interfejsu Google Classroom API do interakcji z materiałami do nauki w Google Classroom. Aplikacja, która korzysta z interfejsu API w ten sposób, jest nazywana integracją CourseWork.
Ta ścieżka integracji jest zwykle używana do tworzenia i oceniania projektów z linkami do zasobów poza Classroom. W porównaniu z przyciskami udostępniania w Classroom zapewnia deweloperom większy dostęp do zarządzania materiałami dydaktycznymi.
Jak to działa
Główną funkcją integracji CourseWork jest tworzenie projektów, ogłoszeń i materiałów do kursu oraz zarządzanie nimi za pomocą interfejsu Classroom API.
Przykładem typowej ścieżki użytkownika, którą umożliwia integracja CourseWork, jest możliwość odkrywania, przypisywania i oceniania treści przez nauczycieli w Twojej witrynie lub aplikacji:
- Nauczyciel loguje się w Twojej witrynie.
- Nauczyciel znajduje lub tworzy treści, które chce udostępnić swoim zajęciom. Nauczyciel klika przycisk w Twojej witrynie, aby wysłać te treści do Google Classroom.
- Twoja aplikacja wysyła żądanie do
courses.courseWork.create. Treść żądania zawiera obiektCourseWork, który zawiera:- Identyfikator kursu docelowego.
- Tytuł projektu.
- Tekstowy opis projektu.
linkMaterialz adresem URL do treści wybranych przez nauczyciela.- Opcjonalnie: maksymalna liczba punktów, jaką można uzyskać za wybrane treści.
- W Classroom pojawia się nowy projekt z załączonym linkiem.
Link odnosi się do adresu URL określonego w żądaniu
create. Przykład znajdziesz na Rysunku 1. - W dzienniku ocen w Classroom pojawia się też nowa kolumna projektu, w tym maksymalna liczba punktów, jeśli została podana.
- Uczniowie otrzymują projekt i klikają
link Material, aby otworzyć podany adres URL w nowej karcie i wyświetlić lub wykonać treści w Twojej witrynie. Opcjonalnie możesz udostępnić uczniom elementy sterujące, które pozwolą im oddać projekt. - Opcjonalnie możesz wysłać żądanie do
courses.courseWork.studentSubmissions.modifyAttachments, aby dodać załączniki do pracy przesłanej przez ucznia, np. plik na Dysku Google lublink Materialwskazujący pracę ucznia w Twojej witrynie. - Opcjonalnie możesz wysłać żądanie do
courses.courseWork.studentSubmissions.patch, aby ustawić ocenę ucznia za projekt.

Rysunek 1. Widok nauczyciela podczas edytowania projektu z link Material
utworzonym przez integrację CourseWork.
Zamiast projektu możesz też utworzyć ogłoszenie lub materiał do nauki, wywołując courses.announcements.create lub
courses.courseWorkMaterials.create. Szczegółowe opisy odpowiednich działań interfejsu Classroom API znajdziesz na stronach Tworzenie materiałów dydaktycznych i zarządzanie nimi oraz Ustawianie i aktualizowanie ocen.
Uwagi
Zanim zdecydujesz, czy integracja CourseWork jest odpowiednim rozwiązaniem dla Twojego produktu, 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ć materiałów dydaktycznych w żadnym kursie w Google Classroom. Możesz to robić tylko w kursach, które prowadzi autoryzowany użytkownik.
- Musisz umożliwić użytkownikowi wybranie kursu, do którego mają trafić treści.
Rozważ użycie
courses.list, aby uzyskać listę kursów prowadzonych przez użytkownika, a następnie umożliwić mu wybranie co najmniej 1 kursu z listy. - Gdy użytkownik kliknie
link Materialw Classroom, link otworzy się w nowej karcie. Gdy adres URL się otworzy, Twój serwer nie otrzyma żadnych informacji z Classroom. - Nauczyciel może modyfikować lub usuwać materiały dydaktyczne niezależnie od dewelopera. Oznacza to, że wiedza dewelopera na temat materiałów do nauki może stać się nieaktualna. Jeśli chcesz być na bieżąco z informacjami o zmianach w materiałach dydaktycznych, rozważ skonfigurowanie powiadomień push o tych zmianach.
- Nauczyciel może tworzyć materiały dydaktyczne w interfejsie Classroom, wklejając linki do adresów URL w Twojej witrynie. Materiały dydaktyczne utworzone w ten sposób są własnością nauczyciela, więc nie będziesz mieć możliwości wyświetlania, modyfikowania ani ustawiania ocen za przesłane prace za pomocą interfejsu Classroom API.