Integración con Google Drive¶
Presentación y objetivos¶
La aplicación ODK Collect ofrece varias opciones para el destino de los datos una vez se han recogido. La forma habitual es utilizar ODK Aggregate, ya sea alojado en Google App Engine, o en tu propio servidor. La opción que se presenta en esta unidad es más sencilla y consiste, en primer lugar, en conectar con Google Drive para permitir que ODK Collect tome formularios de tu cuenta de Drive, para finalmente enviar los datos recogidos en los formularios directamente a un documento de Hojas de cálculo de Google.
Conocimientos previos y recursos¶
Esta unidad requiere haber completado las unidades anteriores, es decir, conocer de forma básica qué es Open Data Kit, cómo funciona la aplicación ODK Collect y cómo se diseñan los formularios con Build. Asimismo es necesario tener una cuenta de Google y configurarla en un dispositivo Android 1.6 o superior.
Nota
Puedes crear gratuitamente una cuenta de Google en https://accounts.google.com/signup
La fuente original para la elaboración de estos contenidos es ODK Collect and Google Drive Integration to Store and Manage Your Data.
1. Subir un formulario a Google Drive¶
En la sección de ODK Build vimos cómo generar un formulario. Posteriormente debes exportarlo a formato Microsoft Excel (opción Export to XLSForm en el menú File):
Si utilizas la versión web de Build el fichero se alojará probablemente en la carpeta «Descargas». Si utilizas la opción offline podrás elegir con precisión dónde almacenarlo.
Recuerda
Otra forma de crear formularios es directamente desde Excel utilizando XLSForm. Lo veremos en próximas unidades.
Una vez tenemos el formulario en formato xlsx debemos subirlo a Google Drive con pequeños retoques para su detección y uso por las herramientas ODK. Accede a https://drive.google.com/ e introduce tu dirección de correo electrónico de GMail y contraseña.
En Google Drive haz clic en Nuevo y crea una carpeta denominada «odk» en la que irás introduciendo toda la información relacionada con tu proyecto.
Ahora vamos a añadir el fichero en formato xlsx. Accede a la carpeta que acabas de crear en Google Drive y haz clic otra vez en Nuevo.
Selecciona Subir archivo, busca la ruta donde almacenaste el fichero xlsx y pulsa Abrir.
Haz doble clic sobre el fichero y ábrelo usando la aplicación Hojas de Cálculo de Google. Una vez abierto, haz una copia del fichero renombrándolo (Crear una copia en el menú Archivo).
Asegúrate de que el nombre del fichero no contiene espacios y está formado sólo por caracteres alfanuméricos o guiones. Un ejemplo de nombre válido es «odk-form».
Añade una pestaña nueva a la hoja de cálculo y cámbiale el nombre (haciendo doble clic sobre el nombre, por ejemplo, «resultados»), pero no rellenes nada más. Recuerda que sólo se pueden utilizar caracteres alfanuméricos y guiones al cambiar el nombre de la pestaña. La pestaña «resultados» debe estar situada a la izquierda de todas las demás. Haz clic y arrástrala si es necesario.
A continuación, copia la URL de la nueva hoja vacía, es decir, la que te aparece en el navegador al visualizarla.
Ve a la pestaña settings y pégala bajo la celda submission_url. Si no tienes esa celda en tu formulario escribe submission_url a continuación de los otros que ya estén de forma que quede como se ve a continuación:
De esta forma definimos la ruta de destino para que los datos que envíen los/las usuarios/as del formulario vayan a la hoja de resultados. Como los cambios en Hojas de Cálculo de Google son automáticos, puedes cerrar el fichero conservando los cambios realizados.
Recomendación
Para almacenar este fichero y otros que iremos creando, crea una carpeta en Google Drive con un nombre fácilmente reconocible; por ejemplo, odk.
2. Conceder permisos para el acceso de otros/as usuarios/as¶
Para que otros/as usuarios/as puedan descargar y rellenar el formulario con ODK Collect, debes darles permiso para acceder a la hoja de cálculo de Google Drive. Puedes añadirles individualmente o conceder acceso a cualquiera mediante un enlace. A continuación te indicamos cómo hacerlo.
Cómo dar permisos individualmente¶
Para conceder accesos individuales, haz clic con el botón secundario del ratón sobre el fichero. Selecciona Compartir
Añade los correos electrónicos de los/las usuarios/as (por ejemplo, de quienes se encargarán de recoger datos sobre el terreno) y asegúrate de que tengan permiso de edición (lápiz a la derecha del cuadro de texto).
Una vez compartido aparecerá el siguiente icono al lado del nombre de fichero en la vista de lista de Google Drive:
Cómo dar permisos mediante un enlace¶
Puedes activar la función de compartir mediante enlace para que cualquiera que reciba el enlace pueda editar la hoja. Esto resulta útil cuando quieres que los/las usuarios/as envíen datos de forma anónima a tu proyecto de ODK (p. ej., en un proyecto de crowdsourcing). Para que cualquiera pueda enviar datos, haz clic en Compartir y, a continuación, en Obtener enlace para compartir.
Al obtener el enlace para compartir la opción por defecto es de lectura (puede ver el documento, pero no editarlo). Haz clic sobre Permisos para modificarlo.
Accede al desplegable con los tipos de permisos y hac clic sobre Cualquier usuario con el enlace puede editar. Para finalizar haz clic sobre Listo.
Recomendación
Si quieres controlar quién puede editar el formulario o las respuestas, puedes proteger la pestaña de respuestas y elegir quién tiene derechos de edición.
3. Transformar el fichero a formato xml¶
A continuación vamos a convertir el formulario a un archivo XML para que ODK Collect pueda mostrarlo en los dispositivos móviles. Para ello debemos convertir nuestra hoja de cálculo a formato xlsx.
Abre el fichero en Hojas de Cálculo de Google y en el menú Archivo selecciona Descargar como Microsoft Excel (.xlsx).
El fichero quedará alojado por defecto en la carpeta Descargas (para sistemas Windows).
Una vez tenemos el fichero xlsx, para convertirlo a xml utilizaremos el conversor de ODK a XLSForm online en la url http://opendatakit.org/xiframe/
Selecciona el archivo y haz clic en Submit. Aparecerá el botón para descargar el formulario en xml. Haz clic sobre el botón y el fichero se descargará.
Recuerda
También puedes convertir tu fichero xlsx en XML utilizando la herramienta XLSForm Offline, descargable en la url https://gum.co/xlsform-offline. Veremos el uso de esta herramienta en próximas unidades.
Finalmente, igual que hiciste con el fichero xlsx en el apartado 1. Subir un formulario a Google Drive, sube el archivo XML a tu cuenta de Google Drive. Seguidamente puedes compartirlo, tal como vimos en el apartado 2. Conceder permisos para el acceso de otros/as usuarios/as, con quienes vayan a recoger datos y necesiten descargar el formulario en su dispositivo Android. En este caso, el permiso facilitado puede ser sólo de lectura.
Atención
Algunas funciones de ODK no son compatibles con Hojas de Cálculo de Google. Ten en cuenta lo siguiente a la hora de diseñar tu formulario:
- Puedes agrupar preguntas, pero no se permiten repeticiones.
- Está permitido usar hasta 254 variables (o preguntas del formulario que se muestran en ODK Collect).
- Se admiten fotos, pero no audio ni vídeo. Las fotos se almacenarán en tu archivo de álbumes de Google Fotos de forma oculta y se vincularán desde Hojas de Cálculo de Google.
- Las demás funciones, incluida la ubicación GPS, son compatibles.
4. Configuración de ODK Collect¶
Abre la aplicación ODK Collect en tu dispositivo móvil y accede a la opción Cambiar la configuración accesible a través del menú (los tres puntos situados en la esquina superior derecha.
En Servidor-usuario, haz clic en Tipo para cambiar la ruta de destino de los envíos de datos desde ODK Collect. Selecciona el protocolo Google Drive, Google Sheets.
A continuación, haz clic en Cuenta de Google y selecciona la que quieras utilizar con ODK Collect.
En esta cuenta se almacenarán tus formularios en Google Drive, así como la hoja de cálculo con todos tus datos y los datos enviados por otros usuarios de ODK. Ya puedes volver al menú principal de tu aplicación Collect.
Atención
El dispositivo Android debe estar conectado a una cuenta de Google que pueda editar el formulario que has creado (se le hayan concedido permisos siguiendo los pasos indicados en 2. Conceder permisos para el acceso de otros/as usuarios/as.
Recuerda
Asegúrate de tener actualizada tu aplicación ODK Collect con la última versión disponible en la Play Store de Google.
5. Recoger datos con ODK Collect¶
Haz clic en Obtener Formulario en Blanco y selecciona Mi drive en caso de que el formulario esté en tu propia cuenta de Google Drive o Compartido conmigo en caso de que alguien más lo haya compartido contigo. ODK Collect buscará archivos XML y los mostrará debajo de la lista de carpetas.
Utiliza el buscador (lupa arriba a la derecha) para localizar el formulario, introduciendo su nombre en el cuadro de búsqueda. Haz clic en la casilla de verificación que aparece a la derecha y selecciona Descarga Seleccionada. Cuando se haya completado la descarga, se mostrará una ventana de confirmación.
Recomendación
Guarda todos tus archivos XML en una misma carpeta de Google Drive. De esta forma podrás encontrarlos más fácilmente.
Ya puedes cumplimentar y enviar el formulario tal como hemos visto en la sección de ODK Collect.
Atención
Cuando envíes datos por primera vez a tu nueva hoja de cálculo, el dispositivo solicitará permiso para enviarlos a Google Drive. Haz clic en Permitir para enviar los datos a la hoja.
Atención
Si detectas un error al enviar datos a Hojas de Cálculo de Google, prueba a eliminar otros formularios que ya no utilices. Para ello, accede al menú principal y selecciona Eliminar formulario guardado.
6. Consultar los datos¶
Ya puedes acceder a tu hoja de cálculo de Google. En la hoja resultados que creamos anteriormente podrás ver las instancias según vayan siendo enviadas desde los dispositivos.
Puedes descargar los datos en un archivo CSV o importarlos directamente desde Hojas de Cálculo de Google.
Las fotos incorporadas al formulario son enviadas a un álbum oculto del archivo de álbumes de Google Fotos asociado a la cuenta de Google del usuario. Solo quienes tengan el enlace podrán verlo. Las fotos se almacenan en un álbum con el nombre del formulario correspondiente.
Para visualizar los envíos de datos en un mapa, puedes utilizar Google My Maps. Los mapas que crees también se almacenarán en tu cuenta de Google Drive.
Resumen y próximo pasos¶
En esta unidad hemos explicado cómo utilizar Google Drive de un modo similar al servidor ODK Aggregate, de forma que podamos compartir nuestros formularios y recibir los resultados recopilados a través de los dispositivos móviles.
Una vez cerrado el ciclo de recolección de información con dispositivos móviles, hemos adquirido capacidades básicas para el diseño y difusión de formularios, así como para cumplimentarlos y hacer los resultados accesibles en un servidor propio o en Google Drive. Es el momento de profundizar en otros elementos más complejos y potentes de Open Data Kit, como pueden ser el diseño de formularios con XLSForm o el uso de otros tipos de servidor de datos.