Este guia apresenta exemplos de código relacionados à avaliação para a API Google Classroom. Leia o guia de notas para se familiarizar com os conceitos de avaliação na Sala de Aula.
Definir notas para trabalhos enviados pelos estudantes
O recurso StudentSubmission
tem dois campos para armazenar notas:
assignedGrade
, que é a nota informada aos estudantes, e draftGrade
,
que é uma nota provisória visível apenas para professores. Esses campos são atualizados
usando courses.courseWork.studentSubmissions.patch
.
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
Ao trabalhar com a interface do Google Sala de Aula, os professores não podem atribuir uma nota até salvar uma nota temporária. A nota atribuída pode ser devolvida a um estudante. Seu aplicativo pode avaliar a atividade de um estudante de duas maneiras:
Atribua apenas o
draftGrade
. Isso é útil, por exemplo, para permitir que o professor revise manualmente as notas antes de finalizá-las. Os estudantes não podem ver as notas de rascunho.Atribua
draftGrade
eassignedGrade
para avaliar uma atividade.
Ler as notas atribuídas
É possível listar todas as notas de um item de curso específico explorando o
objeto de resposta do método courses.courseWork.studentSubmissions.list
:
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
Determinar as notas gerais do curso
A API Classroom não permite que os desenvolvedores leiam ou gravem a
nota geral do curso, mas é possível calcular isso de maneira programática. O
artigo da Central de Ajuda sobre como configurar a avaliação tem dicas sobre esse cálculo. O recurso
Course
inclui o campo gradebookSettings
, que pode ajudar você
a realizar os cálculos.
Se você quiser calcular a nota geral, leia algumas dicas para saber como lidar com trabalhos atrasados, dispensados e ausentes.
Gerenciar o estado da resposta dos estudantes
É possível que o envio, a entrega ou a devolução de uma resposta do estudante seja cancelada. O campo de estado
em StudentSubmission
indica o estado atual. Para mudar o estado, chame
um destes métodos:
courses.courseWork.studentSubmissions.turnIn
: apenas o estudante que é proprietário de umStudentSubmission
pode entregá-lo.courses.courseWork.studentSubmissions.reclaim
: apenas o estudante que é proprietário de umaStudentSubmission
pode fazer a recuperação. O envio só pode ser recuperado se já tiver sido entregue.courses.courseWork.studentSubmissions.return
: somente os professores do curso podem retornar umStudentSubmission
. O trabalho enviado só poderá ser devolvido se já tiver sido entregue pelo aluno.
Todos esses métodos aceitam um parâmetro body
vazio, por exemplo:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
Dar notas em anexos de complementos
Se você é um desenvolvedor de complementos do Google Sala de Aula, pode definir notas para anexos de complementos individuais e configurar a nota para ficar visível para os professores quando eles revisarem o trabalho dos estudantes. Consulte os tutoriais Anexos de tipo de atividade e Passagem de notas para mais informações.