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):

../_images/drive_build1.png

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.

../_images/google_drive1.png

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.

../_images/google_drive2.png

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.

../_images/google_drive3.png

Selecciona Subir archivo, busca la ruta donde almacenaste el fichero xlsx y pulsa Abrir.

../_images/google_drive4.png

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).

../_images/google_drive5.png

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».

../_images/google_drive6.png

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.

../_images/google_drive7.png
../_images/google_drive8.png

A continuación, copia la URL de la nueva hoja vacía, es decir, la que te aparece en el navegador al visualizarla.

../_images/google_drive9.png

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:

../_images/google_drive10.png

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

../_images/google_drive11.png

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).

../_images/google_drive12.png

Una vez compartido aparecerá el siguiente icono al lado del nombre de fichero en la vista de lista de Google Drive:

../_images/google_drive13.png

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.

../_images/google_drive14.png

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.

../_images/google_drive15.png

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.

../_images/google_drive16.png

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).

../_images/google_drive17.png

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/

../_images/drive_build2.png

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.

../_images/google_drive18.png

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.

../_images/google_collect1.png

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.

../_images/google_collect2.png

A continuación, haz clic en Cuenta de Google y selecciona la que quieras utilizar con ODK Collect.

../_images/google_collect3.png ../_images/google_collect4.png

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.

../_images/google_collect5.png ../_images/google_collect6.png

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.

../_images/google_collect7.png

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.

../_images/google_drive19.png

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.