La forma de acceder al Dashboard y al PCB es con un mail de usuario + contraseña, y encontramos 3 actores: alumnos, padres y terapeutas (sólo estos dos últimos tienen acceso al Dashboard)
Registro de usuario en la app
- La primera vez que arranca la app aparece una ventana de identificación, donde hay que insertar el mail y el pass del alumno, padre o terapeuta.
- A continuación el tablet hace una solicitud al servicio web para comprobar si es correcta la identificación. Si lo es devolverá un token, que será almacenado internamente, y con el cual se producirán el resto de llamadas REST. (Arturo, hay que modificar la implementación actual del WS, porque se envía el nº de serie + android id + firmware id)
- En el siguiente paso se solicitan los pares estudiante-supervisor, enviado al WS el token recibido de la identificación correcta. El WS devuelve los pares de ese token. (Arturo, hay que modificar la implementación actual, que tiene como llamada los pares de un id de dispositivo. Ya no trabajaremos más con el ID del dispositivo).
- Si la app recibe más de 1 estudiante (identificación de un terapeuta, por ejemplo), mostrará una ventana de login con las imágenes de los alumnos, para que el terapeuta seleccione con cuál quiere interactuar. En caso contrario, el más habitual, no se pasará por ventana de login y se cargará directamente la configuración y vocabulario de ese estudiante.
- En las siguientes entradas de la app se hará la misma consulta al WS con el token, y se procesará tal como se describe en 4.
- Desde la ventana de PictogramActivity habrá una combinación de pulsaciones que hará que se cargue de nuevo la primera ventana de identificación, para poder entrar con otro usuario (en este caso, Fernando ¿se borran los datos internos y se cargan los nuevos?)
Modelo de datos en el servidor (Fernando, revisa esto)
Registro de la tablet: Consulta en las tablas external_device, official_device Identificación de usuario: Inserción tabla action la acción "login", con los valores id_sup, id_stu, timestamp, gps_lat, gps_lon correspondientes.
Modelo de datos local (Fernando, revisa esto)
Registro de la tablet: Insertar la pareja <ANDROID_ID, serial> en el archivo de configuración Identificación de usuario:
- Insertar la pareja <id_sup, id_stu> en el archivo de configuración
- Inserción tabla action la acción "login", con los valores id_sup, id_stu, timestamp, gps_lat, gps_lon correspondientes.