Cómo interactuar con archivos adjuntos

En esta página, se analizan los detalles de implementación para crear un archivo adjunto y trabajar con las entregas de los estudiantes. Ten en cuenta que es posible que debas proporcionar parámetros relacionados con los archivos adjuntos cuando realices estas solicitudes.

Crea un adjunto

Para crear un adjunto, envía una solicitud CREATE al extremo courses.*.addOnAttachments.create correspondiente. Tu solicitud debe incluir una instancia de AddOnAttachment en el cuerpo de la solicitud.

Los siguientes campos son obligatorios cuando se crea un adjunto:

  • title: Es el nombre de cadena del adjunto.
  • teacherViewUri: Es el URI de la Vista para profesores del adjunto.
  • studentViewUri: Es el URI de la vista de estudiante del archivo adjunto.
  • studentWorkReviewUri: Es el URI para que el profesor vea el trabajo del estudiante en el archivo adjunto. Este campo solo es obligatorio para los archivos adjuntos de tipo de actividad.

Puedes incluir algunos de los siguientes campos opcionales:

  • dueDate y dueTime si se especifica la fecha de vencimiento del adjunto.
  • maxPoints: La calificación máxima para el archivo adjunto. Debe ser un valor distinto de cero si quieres admitir la devolución de calificaciones. Solo se aplica a los archivos adjuntos de tipo de actividad.

Consulta la referencia del recurso AddOnAttachment para obtener más detalles sobre estos campos.

Detalles de entrega del estudiante

Un flujo de trabajo de envío típico sigue estos pasos:

  1. Un estudiante inicia el studentViewUri para completar una actividad.
  2. El complemento recupera un submissionId del método getAddOnContext mediante las credenciales de estudiante.
  3. El desarrollador del complemento almacena los elementos submissionId y attachmentId como identificadores únicos del trabajo del estudiante. En caso de que un profesor copie una tarea en Classroom, puedes usar la clave compuesta de estos dos parámetros para mostrar un nuevo archivo adjunto en la tarea copiada. Consulta nuestra página sobre el contenido copiado para obtener más detalles.
  4. Un profesor interesado en revisar el trabajo de los alumnos inicia studentWorkReviewUri. La solicitud incluye los siguientes parámetros de consulta: courseId, itemId, itemType, attachmentId y submissionId.
  5. El desarrollador del complemento usa estos cuatro ID para recuperar el trabajo del alumno. Usa el extremo courses.courseWork.addOnAttachments.studentSubmissions para recuperar o modificar información sobre las entregas de un estudiante.

Detecta el estado del envío

Envía una solicitud GET al extremo courses.courseWork.addOnAttachments.studentSubmissions para obtener detalles sobre un submissionId específico. Recibes un objeto AddOnAttachmentStudentSubmission, que contiene la calificación del envío (pointsEarned) y el estado actual (postSubmissionState). El estado del envío puede ser uno de los siguientes valores:

  • NEW, si el estudiante nunca accedió a la entrega
  • CREATED, si el estudiante creó una entrega, pero aún no la envió.
  • TURNED_IN, si el estudiante envió su trabajo al profesor
  • RETURNED, si el profesor le devolvió la entrega al estudiante
  • RECLAIMED_BY_STUDENT, si el estudiante “anuló la entrega” de su trabajo

Usa este extremo para detectar el estado del trabajo del estudiante en tu complemento. Luego, puedes ajustar las vistas o las opciones proporcionadas al estudiante según el estado que se muestre. Esto podría incluir funciones como las siguientes:

  • Se muestra el estado de entrega de las tareas del complemento. Esto puede ayudar a los estudiantes a evitar una posible confusión y garantizar que no fallen por error al entregar una tarea.
  • Se restringen los privilegios de edición de envíos. Si la tarea tiene el estado CREATED o RECLAIMED_BY_STUDENT, es posible que el estudiante pueda editar su entrega. Si la tarea tiene el estado TURNED_IN o RETURNED, es posible que el estudiante no tenga permiso para editar su entrega.

Calificaciones y varios archivos adjuntos

Solo se puede usar un archivo adjunto de complemento para configurar la calificación de una sola tarea. Si un profesor crea más de un archivo adjunto de tipo de actividad que proporciona un valor maxPoints, solo el primer archivo adjunto de ese tipo puede establecer la calificación de la tarea. Deja el valor de maxPoints sin establecer o establécelo en cero para inhabilitar la devolución de calificaciones de un adjunto.

Cómo configurar la calificación de una entrega

Para modificar la entrega de un estudiante, envía una solicitud PATCH al extremo courses.courseWork.addOnAttachments.studentSubmissions. El cuerpo de la solicitud debe incluir una instancia de AddOnAttachmentStudentSubmission con los valores modificados. Configura el campo pointsEarned para modificar la calificación de una entrega. El valor que se pasa en pointsEarned se convierte en una calificación en borrador visible para el profesor en la IU de Classroom. Los profesores pueden modificar la calificación preliminar antes de devolverles la tarea a los estudiantes. Consulta Descripción general de las calificaciones en la IU de Classroom para obtener detalles sobre cómo se presentan las calificaciones a los profesores.

Ten en cuenta que puedes configurar la calificación con pointsEarned solo si se cumplen las siguientes condiciones:

  • El adjunto debe tener un valor de maxPoints positivo.
  • El complemento tiene que haber sido el creador original del archivo adjunto.

Además, ten en cuenta que puedes modificar el valor maxPoints de un AddOnAttachment ya creado si emites una solicitud PATCH al extremo addOnAttachments.

Cuándo establecer una calificación

Puedes elegir cuándo se devuelve una calificación a Google Classroom. La distinción fundamental es si eliges almacenar las credenciales de los profesores, ya que solo este puede modificar una calificación.

Existen dos momentos de complementos en los que puedes pasar una calificación a Google Classroom: cuando el estudiante completa su trabajo o cuando el profesor abre el trabajo del estudiante en el iframe de Revisión del trabajo de los estudiantes.

Si deseas establecer calificaciones cuando el estudiante completa el trabajo, debes almacenar las credenciales sin conexión de un profesor y, luego, recuperarlas y usarlas para modificar la calificación cuando el estudiante complete el trabajo. Este método proporciona algunos beneficios potenciales:

  • Proporciona actualizaciones de calificaciones sin interrupciones. No es necesario que los profesores realicen ninguna acción especial para que las calificaciones se propaguen en la IU de Classroom.
  • Proporcionan información en tiempo real sobre el progreso de una clase en una tarea. Cuando configuras las calificaciones a medida que los estudiantes completan los archivos adjuntos, los profesores pueden tener una idea de la comprensión de sus estudiantes sin abrir cada entrega.

Ten en cuenta que este enfoque también permite un enfoque asíncrono para calificar la sincronización. Puedes consultar el extremo AddOnAttachmentStudentSubmission de forma periódica para detectar cuándo un estudiante envió su trabajo. Una vez que se envíe, configura la calificación con las credenciales almacenadas.

Si no quieres cargar las credenciales de un profesor durante la sesión de un alumno, puedes usar las credenciales del profesor activo cuando este cargue el envío del alumno en el iframe Revisión del trabajo de los alumnos. Sin embargo, es posible que esto no brinde una experiencia del usuario especialmente fluida, ya que las calificaciones de la IU de Classroom no se actualizan en tiempo real y los profesores deben abrir el iframe de cada entrega de Revisión del trabajo de los alumnos.

Detecta cambios en las calificaciones de las tareas

Los profesores pueden editar la configuración de las calificaciones en Classroom luego de crear una tarea. Estas ediciones pueden incluir lo siguiente:

  • Cambiarás la puntuación asignada.
  • Cambiar el valor maxPoints de una tarea
  • Cambiar si se debe calificar la tarea o no.

Para ver la configuración de calificación actual de una tarea, te recomendamos que envíes una solicitud GET al extremo courses.courseWork. La respuesta incluye el valor maxPoints actual. Una tarea sin calificar tiene un valor de maxPoints nulo o cero.

Si aprobaste una calificación a Classroom, usa el extremo courses.courseWork.addOnAttachments.studentSubmissions para recuperar o modificar la calificación de un archivo adjunto de complemento. El valor de la calificación se establece en el campo pointsEarned. Considera verificar y, de ser necesario, actualizar este valor si tu producto permite que los profesores editen la puntuación de un estudiante para una actividad en particular.