Eine Kursressource stellt eine Klasse dar, z. B. "M. Smith und seine Mathematik, Schülerliste und Metadaten.
Jeder Kurs wird durch eine eindeutige ID gekennzeichnet, die vom Server zugewiesen wird. Außerdem können Namen mit einem Kurs verknüpft und anstelle der eindeutigen ID verwendet werden. Jeder Name, auch Alias genannt, befindet sich in einem Namespace, mit dem festgelegt werden kann, wer ihn erstellen und aufrufen kann.
Es werden zwei Namespaces unterstützt:
- Domain: Der Domain-Namespace ist nützlich, um Aliasse zu erstellen, auf die alle Nutzer Zugriff haben, die aber nicht spezifisch für ein bestimmtes Programm sind. Alternative Einträge für einen Kurs wie MATH 127 und COMSCI 127 sollten beispielsweise im Domain-Namespace erstellt werden. Aliasse im Domain-Namespace dürfen nur von Domainadministratoren erstellt werden, sind jedoch für alle Nutzer in einer Domain sichtbar.
- Entwicklerprojekt:Der Namespace des Entwicklerprojekts ist nützlich für die Verwaltung von Aliassen, die für eine Anwendung spezifisch sind. Beispielsweise kann eine Anwendung, die alternative Kennungen für Kurse verwendet, Aliasse erstellen, um ihre ID den Classroom-Kursen zuzuordnen. Aliasse, die in diesem Namespace erstellt werden, sind an ein bestimmtes Google API Console-Projekt gebunden. Jeder Nutzer einer Anwendung kann Aliasse im Namespace für dieses Entwicklerprojekt erstellen und aufrufen.
Kurs erstellen
Mit der Methode courses.create()
können Sie einen Kurs hinzufügen, wie im folgenden Beispiel gezeigt:
.NET
Apps Script
Go
Java
PHP
$course = new Google_Service_Classroom_Course(array(
'name' => '10th Grade Biology',
'section' => 'Period 2',
'descriptionHeading' => 'Welcome to 10th Grade Biology',
'description' => 'We\'ll be learning about about the structure of living ' .
'creatures from a combination of textbooks, guest ' .
'lectures, and lab work. Expect to be excited!',
'room' => '301',
'ownerId' => 'me',
'courseState' => 'PROVISIONED'
));
$course = $service->courses->create($course);
printf("Course created: %s (%s)\n", $course->name, $course->id);
Python
Wenn Sie einen Kurs erstellen, können Sie optional Metadaten wie die Kursbeschreibung, die Uhrzeit oder den Ort hinzufügen.
Um einen Kurs erstellen zu können, muss der Nutzer, der die Anfrage stellt, die entsprechenden Berechtigungen im Nutzerprofil haben.
Kurse werden standardmäßig erstellt, wobei courseState
auf PROVISIONED
gesetzt ist. Sie kann jedoch auf ACTIVE
überschrieben werden. Wenn der Kurs mit dem Status PROVISIONED
erstellt wird, muss die Lehrkraft, die in der ownerId
angegeben ist, den Kurs in der Classroom-UI akzeptieren. Alternativ muss der Kurs über die API aktualisiert werden, um die courseState
in ACTIVE
zu ändern und den Schülern oder Studenten zur Verfügung zu stellen.
Kursdetails abrufen
Mit der Methode courses.get()
können Sie die Metadaten eines einzelnen Kurses abrufen, wie im folgenden Beispiel gezeigt:
.NET
Apps Script
Go
Java
PHP
$courseId = '123456';
try {
$course = $service->courses->get($courseId);
printf("Course '%s' found.\n", $course->name);
} catch (Google_Service_Exception $e) {
if ($e->getCode() == 404) {
printf("Course with ID '%s' not found.\n", $courseId);
} else {
throw $e;
}
}
Python
Verwende für eine Liste von Kursen die courses.list()
, wie im folgenden Beispiel gezeigt:
.NET
Apps Script
Java
PHP
$pageToken = NULL;
$courses = array();
do {
$params = array(
'pageSize' => 100,
'pageToken' => $pageToken
);
$response = $service->courses->listCourses($params);
$courses = array_merge($courses, $response->courses);
$pageToken = $response->nextPageToken;
} while (!empty($pageToken));
if (count($courses) == 0) {
print "No courses found.\n";
} else {
print "Courses:\n";
foreach ($courses as $course) {
printf("%s (%s)\n", $course->name, $course->id);
}
}
Python
Sie können auch nur die Kurse für einen bestimmten Nutzer auflisten. Weitere Informationen finden Sie unter Kurse für einen Nutzer abrufen.
Kursinformationen aktualisieren
Sie können einige Metadaten zu Kursen ändern, nachdem der Kurs erstellt wurde. Die folgenden Felder können nach der Erstellung des Kurses jederzeit aktualisiert werden:
name
section
descriptionHeading
description
room
courseState
ownerId
Wenn Sie alle Felder in einem Kurs aktualisieren möchten, verwenden Sie die Methode courses.update()
, wie im folgenden Beispiel gezeigt:
.NET
Apps Script
Java
PHP
$courseId = '123456';
$course = $service->courses->get($courseId);
$course->section = 'Period 3';
$course->room = '302';
$course = $service->courses->update($courseId, $course);
printf("Course '%s' updated.\n", $course->name);
Python
Mit der Methode courses.patch()
kannst du bestimmte Felder auch aktualisieren, wie im folgenden Beispiel gezeigt:
.NET
Apps Script
Java
PHP
$courseId = '123456';
$course = new Google_Service_Classroom_Course(array(
'section' => 'Period 3',
'room' => '302'
));
$params = array(
'updateMask' => 'section,room'
);
$course = $service->courses->patch($courseId, $course, $params);
printf("Course '%s' updated.\n", $course->name);