Skip to content

Instantly share code, notes, and snippets.

@mariano-aguero
Created August 18, 2016 17:06
Show Gist options
  • Save mariano-aguero/e195bef5048277ada96a3e99cf7d630d to your computer and use it in GitHub Desktop.
Save mariano-aguero/e195bef5048277ada96a3e99cf7d630d to your computer and use it in GitHub Desktop.
Multeo - Offline
Problema:
- Como usuario, quiero que la aplicacion multeo me permita utilizarla sin conexion a internet para que su utilizacion sea mas fluida en lugares sin acceso a wifi
- Como usuario, quiero que la aplicacion multeo ciudadano me permita utilizarla sin conexion a internet para que su utilizacion sea mas fluida en lugares sin acceso a wifi
Soluciones:
- Modo offline Multeo:
- Refactorizar codigo existente, y quitar el "modo offlline" actual, y que quede de modo funcional online para aplicar la nueva solucion offline.
- Autenticacion con conexion a internet.
- Deberia existir un boton de modo offline/online? PREGUNTA: el dev team sugirio que SI exista y que este en el slide menu como un toggle.
- Elegir una de las librerias
- Entidades existentes a mapear a modo offline:
-- Jornada de trabajo (Pueden existir varias jornadas).
-- Tickets de tipo transit, con imagenes y sin imagenes.
-- Tickets de tipo accident.
-- Infringements asociados a los tickets.
-- Organizacion.
-- Usuario.
- Opciones de sincronizacion:
-- Automatica: cuando inicia la aplicacion y tenga sesion iniciada.
-- Automatica: cuando cierra la jornada.
-- Automatico: cuando cambia de modo.
-- Automatica: cada 1 hora, verificando primero que exista internet, en background.
-- Manual: con una opcion en el menu, en la cual te lleve a una seccion en la cual te muestre la sincronizacion de los objetos con respecto a la base de datos.
- Opcion manual: existira una opcion en el slide menu actual, que te llevara a una seccion en la cual te brindara informacion sobre las entidades a sincronizar, y un boton para enviar los datos a la api. La api los procesara con un job y notificara a la aplicacion mobile sobre su procesamiento.
- GETTERS: si esta en modo online (por el boton de la opcion offline) los obtiene de la API, sino de la DB interna offline
-- Listado de actas
-- Perfil de acta
-- Listado de jornadas
-- Perfil de jornada
-- Jornada Actual
Opciones de libreria:
- NEDB: https://github.com/louischatriot/nedb
- JS Data: https://github.com/js-data/js-data
- LOKIJS: https://github.com/techfort/LokiJS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment