Una forma en que los profesores pueden agregar contenido de terceros a Classroom es de la siguiente manera: pegar un vínculo como Vínculo adjunto en la página de creación de tareas. Para compilar sobre lo que los profesores ya conocen, ahora puedes configurar tu complemento para y permitir que los profesores actualicen un archivo adjunto de vínculo a un archivo adjunto de complemento.
Descripción general
Si configuras tu complemento con esta función, se solicitará a los profesores que actualizar un vínculo a un archivo adjunto de complemento cuando pega un vínculo en el archivo adjunto página de creación de tareas. Solo se solicita a los profesores que lo hagan si ya tienen tener el complemento instalado.
Una vez que el profesor acepta actualizar el vínculo a un archivo adjunto del complemento, el vínculo La actualización de iframe se inicia con los siguientes parámetros de consulta:
courseId
itemId
itemType
addOnToken
urlToUpgrade
login_hint
(solo si el usuario ya autorizó tu app)
Los primeros cuatro parámetros de consulta reflejan los parámetros de consulta lanzados en la
iframe de descubrimiento de archivos adjuntos. El parámetro de consulta urlToUpgrade
es nuevo y puede
lo ayudará a evaluar cómo debe crearse el archivo adjunto del complemento. Luego, puedes usar
los otros parámetros de consulta para verificar si el usuario accedió y llamar al
método CreateAddOnAttachment
de courseWork
, courseWorkMaterials
o
announcements
según el valor itemType
. Dentro del iframe, puedes
mostrar una pantalla de carga para indicarle al profesor que el archivo adjunto del complemento
se está creando.
Una vez que se crea el archivo adjunto del complemento, se cierra el iframe y la el profesor puede ver el archivo adjunto de la tarea como lo haría normalmente.
Detalles técnicos de la implementación
En esta sección, se destacan algunos detalles técnicos importantes de la función.
Leer el parámetro de consulta urlToUpgrade
El parámetro de consulta urlToUpgrade
tiene codificación de URI cuando se pasa en el vínculo.
Actualizar iframe. Debes decodificar la URL para obtener su forma original. Si
Si usas JavaScript, por ejemplo, puedes usar decodeURIComponent()
para hacerlo.
Cerrar el iframe de actualización de vínculos
Para garantizar una experiencia del usuario óptima con esta función, envía un postMessage
una vez
se creó correctamente el archivo adjunto del complemento. Esto cierra el iframe. Consulta
la página de detalles de la implementación del iframe para obtener más información.
Detalles de configuración
Para integrar esta función en tu complemento:
URL del iframe de actualización de vínculos: Esta es la URL que se abre en el iframe cuando un profesor acepta la actualización.
Patrones de URL que Classroom debe detectar y tratar de actualización: Los patrones de URL pueden consistir en un host y varias rutas. prefijos.
- Puedes proporcionar varios patrones de URL.
- Si no proporcionas ningún prefijo de ruta de acceso, todas las URLs que coincidan con el host se pueden actualizar.
- Solo se pueden actualizar las URLs con un esquema
https
. - Los patrones de URL no deben incluir
localhost
. - Los prefijos de ruta de acceso no deben contener parámetros de consulta ni fragmentos de URL.
- Los prefijos de ruta de acceso pueden admitir comodines en este momento, pero los hosts no pueden hacer lo siguiente:
-
example.com
es un host válido,/foo
y/bar/*/baz
son prefijos de ruta de acceso válidos. -
example.*.host.com
no es un un host válido.
-
- Un comodín entre componentes de prefijo de ruta solo coincide con una única
y no coincide con varios componentes separados por barras.
Considera un patrón de URL con el host
example.com
y el prefijo de ruta de acceso/bar/*/baz
-
https://example.com/bar/123/baz
es una coincidencia válida para la URL . -
https://example.com/bar/123/baz/456/789
es una coincidencia válida para el Patrón de URL. -
https://example.com/bar/123/456/baz
no es una coincidencia válida para el Patrón de URL porque el comodín en el prefijo de ruta de acceso no coincide/123/456/
-
Proceso de desarrollo
Envía la URL de iframe de actualización de vínculos y los patrones de URL para tu prueba o producción envía un correo electrónico a classroom-link-upgrade-external@google.com.
Puedes proporcionar parámetros de configuración para cualquier proyecto de Google Cloud que represente una complemento de Classroom. Te recomendamos que primero proporciones configuraciones de un complemento con visibilidad privada para que puedas desarrollar y hacer pruebas en un dominio de demostración sin afectar a los usuarios activos.
Recibirás una respuesta a tu correo electrónico cuando se hayan completado los parámetros de configuración.
habilitado. Ten en cuenta que los patrones de URL que usan localhost
no son compatibles
.
Dale formato al correo electrónico para que incluya la siguiente información:
Google Cloud Project number: GCP_PROJECT_NUMBER
Link Upgrade iframe URL: LINK_UPGRADE_IFRAME_URL
URL Patterns:
- Host:HOST_1
- Path prefixes:
- PATH_PREFIX_1
- PATH_PREFIX_2
- Host:HOST_2
- Path prefixes:
- PATH_PREFIX_3
- PATH_PREFIX_4
// add more hosts and path prefixes as needed
Reemplaza lo siguiente:
- GCP_PROJECT_NUMBER: Es la cantidad del proyecto de Google Cloud. con la que está asociado el complemento.
- LINK_UPGRADE_IFRAME_URL: Es la URL que se debe abrir en el iframe de actualización del vínculo.
- HOST_1: Es un host que Classroom debe detectar. Solo los
Se admite el esquema
https
. - PATH_PREFIX_1 y PATH_PREFIX_2: Ruta de acceso
prefijos asociados con
HOST_1
que Classroom debe detectar e intentar para actualizarlas. - HOST_2: Es un host que Classroom debe detectar. Solo los
Se admite el esquema
https
. - PATH_PREFIX_3 y PATH_PREFIX_4: Ruta de acceso
prefijos asociados con
HOST_2
que Classroom debe detectar e intentar para actualizarlas.
Experiencia del usuario recomendada
A continuación, se incluyen sugerencias que debes tener en cuenta cuando implementes esta función.
Evita el trabajo adicional de los profesores
Te recomendamos que utilices el iframe para facilitar el acceso en los siguientes casos: o mostrar un indicador de carga. Para obtener la mejor experiencia del usuario, el al profesor no se le debería pedir información adicional una vez aceptó actualizar el vínculo pegado a un archivo adjunto del complemento. Sin embargo, si este es que no es posible para tu complemento, puedes usar el iframe de actualización de vínculos para recopilar la información adicional que necesitas. El iframe también se puede utilizar para informar al al profesor si no es posible actualizar el vínculo o si se produjo un error.
Incluye mensajes de error de acceso fácil de usar
Si los profesores pegan y actualizan un vínculo al que no tienen acceso, muestra un fácil de usar en el iframe para que los profesores estén al tanto del problema. El iframe también se puede usar para proporcionarle al profesor la información permisos para acceder al contenido.