Bu kılavuzda, Google Classroom API için notlandırmayla ilgili kod örnekleri verilmiştir. Classroom'daki notlandırma kavramlarıyla ilgili bilgi edinmek için Notlar kılavuzunu okuyun.
Öğrenci gönderimleri için not belirleme
StudentSubmission
kaynağında notları saklamak için iki alan bulunur: Öğrencilere bildirilen not olan assignedGrade
ve yalnızca öğretmenler tarafından görülebilen geçici not olan draftGrade
. Bu alanlar courses.courseWork.studentSubmissions.patch
kullanılarak güncellenir.
Python
studentSubmission = {
'assignedGrade': 99,
'draftGrade': 80
}
service.courses().courseWork().studentSubmissions().patch(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
updateMask='assignedGrade,draftGrade',
body=studentSubmission).execute()
Java
Classroom kullanıcı arayüzüyle çalışırken öğretmenler, ilk kez geçici bir not kaydedene kadar bir not atayamaz. Böylece verilen not öğrenciye geri verilebilir. Uygulamanız, bir öğrencinin ödevine iki şekilde not verebilir:
Yalnızca
draftGrade
değerini atayın. Bu özellik, örneğin, öğretmenin notları kesinleştirmeden önce manuel olarak incelemesine olanak tanır. Öğrenciler geçici notları göremez.Bir ödeve tam not vermek için hem
draftGrade
hem deassignedGrade
'ü atayın.
Atanan notları okuma
courses.courseWork.studentSubmissions.list
yönteminin yanıt nesnesini inceleyerek belirli bir sınıf çalışması öğesine ilişkin tüm notları listeleyebilirsiniz:
Python
response = coursework.studentSubmissions().list(
courseId=course_id,
courseWorkId=coursework_id,
pageSize=10 # optionally include `pageSize` to restrict the number of student submissions included in the response.
).execute()
submissions.extend(response.get('studentSubmissions', []))
if not submissions:
print('No student submissions found.')
print('Student Submissions:')
for submission in submissions:
print(f"Submitted at:"
f"{(submission.get('userId'), submission.get('assignedGrade'))}")
Java
Kursun genel notlarını belirleme
Classroom API, geliştiricilerin genel kurs notlarını okumalarına veya yazmalarına izin vermez. Ancak bu notları programlı bir şekilde hesaplayabilirsiniz. Notlandırmayı ayarlama yardım merkezi makalesinde bu hesaplama hakkında ipuçları verilmektedir. Course
kaynağı, hesaplamaları yapmanıza yardımcı olabilecek gradebookSettings
alanını içerir.
Genel notu hesaplamak istiyorsanız geç, mazeretli ve eksik olan dersleri yönetirken dikkat etmeniz gereken ipuçlarını okuyun.
Öğrenci yanıt durumunu yönetme
Öğrenci yanıtları gönderilmeyebilir, teslim edilebilir veya geri verilebilir. StudentSubmission
öğesindeki durum alanı, mevcut durumu gösterir. Durumu değiştirmek için aşağıdaki yöntemlerden birini çağırın:
courses.courseWork.studentSubmissions.turnIn
: YalnızcaStudentSubmission
sahibi olan öğrenci teslim edebilir.courses.courseWork.studentSubmissions.reclaim
: YalnızcaStudentSubmission
sahibi olan öğrenci, öğe için yeniden hak talebinde bulunabilir. Gönderim yalnızca daha önce teslim edilmişse geri alınabilir.courses.courseWork.studentSubmissions.return
: Yalnızca kurstaki öğretmenlerStudentSubmission
döndürebilir. Gönderim yalnızca öğrenci tarafından teslim edilmişse iade edilebilir.
Bu yöntemlerin tümü boş bir body
parametresi kabul eder. Örneğin:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Not eklentisi ekleri
Classroom eklentisi geliştiriciyseniz eklenti ekleri için ayrı ayrı notlar belirleyebilir ve notu, öğretmenler öğrenci çalışmalarını incelerken görebilecekleri şekilde yapılandırabilirsiniz. Daha fazla bilgi için Etkinlik türü ekler ve Not geri verme adımlarına bakın.