No description
  • TypeScript 94.9%
  • JavaScript 5.1%
Find a file
2026-05-05 14:52:36 -04:00
.vscode Initial commit 2026-05-05 08:25:27 -04:00
app Separa operacion y configuracion protegida en Flora 2026-05-05 13:01:26 -04:00
assets/images Initial commit 2026-05-05 08:25:27 -04:00
builds Agrega APK release de Flora 2026-05-05 14:52:36 -04:00
components Separa operacion y configuracion protegida en Flora 2026-05-05 13:01:26 -04:00
constants Initial commit 2026-05-05 08:25:27 -04:00
docs Documenta arquitectura y operacion de Flora 2026-05-05 14:49:52 -04:00
hooks Initial commit 2026-05-05 08:25:27 -04:00
scripts Initial commit 2026-05-05 08:25:27 -04:00
src Define webhook por defecto para Flora 2026-05-05 13:03:14 -04:00
.env.example Prepara tracking GPS operativo para Flora 2026-05-05 09:19:34 -04:00
.gitignore Prepara tracking GPS operativo para Flora 2026-05-05 09:19:34 -04:00
app.json Documenta arquitectura y operacion de Flora 2026-05-05 14:49:52 -04:00
eas.json Prepara tracking GPS operativo para Flora 2026-05-05 09:19:34 -04:00
eslint.config.js Initial commit 2026-05-05 08:25:27 -04:00
package-lock.json Prepara tracking GPS operativo para Flora 2026-05-05 09:19:34 -04:00
package.json Documenta arquitectura y operacion de Flora 2026-05-05 14:49:52 -04:00
README.md Documenta arquitectura y operacion de Flora 2026-05-05 14:49:52 -04:00
tsconfig.json Initial commit 2026-05-05 08:25:27 -04:00

VerbenaTracker

Aplicacion movil Expo/React Native para tracking GPS Android de repartidores y operadores de Floreria La Verbena.

VerbenaTracker separa la operacion diaria del repartidor de la configuracion tecnica de la app. La pantalla principal esta orientada a iniciar/detener seguimiento, enviar ubicacion, registrar entregas y emergencias. La configuracion de webhook, token, intervalo, precision y contrasena queda protegida por clave.

Estado del Proyecto

  • Framework: Expo SDK 54.
  • Lenguaje: TypeScript.
  • Navegacion: Expo Router con carpeta app/.
  • Persistencia: AsyncStorage.
  • GPS: expo-location.
  • Background task: expo-task-manager.
  • HTTP: Axios.
  • Build Android: EAS con perfil preview.
  • Ruta de trabajo actual: C:\Codex\VerbenaTracker.

Documentacion

Pantallas

Operacion

Pantalla diaria para el repartidor:

  • Estado del tracking.
  • Operador y dispositivo.
  • ID de pedido actual editable.
  • Estado de permisos GPS.
  • Estado resumido de conexion.
  • Ultima ubicacion.
  • Ultimo envio exitoso.
  • Eventos pendientes.
  • Ultimo error.
  • Acciones: iniciar, detener, enviar ubicacion, entrega realizada y emergencia.

Configuracion

Pantalla protegida por contrasena:

  • Operador.
  • ID de dispositivo.
  • Webhook n8n.
  • API Key o token Bearer.
  • Intervalo de envio.
  • ID de pedido por defecto.
  • Modo desarrollo para permitir http://.
  • Precision GPS.
  • Distancia minima.
  • Auto-reinicio al reabrir.
  • Cambio de contrasena.

Valores por Defecto

  • Webhook: https://sistemas.florerialaverbena.cl/webhook/bbf950a9-bb13-4607-8eea-ab60a0c94639.
  • Intervalo de envio: 90 segundos.
  • Intervalo minimo: 30 segundos.
  • Precision: balanceada.
  • Cola offline maxima: 500 eventos.
  • Contrasena inicial: Verbena2026!.

La contrasena inicial debe cambiarse antes de usar la app en produccion.

Instalacion

npm install

Ejecucion

npx expo start

Para ejecutar con proyecto nativo Android:

npm run android

Validacion

npx tsc --noEmit
npm run lint
npx expo-doctor

En Expo SDK 54, npx expo doctor puede no estar soportado por el CLI local y puede indicar usar npx expo-doctor.

Build APK

eas build -p android --profile preview

Payload al Webhook

{
  "device_id": "string",
  "operator_name": "string",
  "order_id": "string|null",
  "lat": 0,
  "lon": 0,
  "accuracy": null,
  "altitude": null,
  "speed": null,
  "heading": null,
  "battery": null,
  "event": "location_update",
  "timestamp": "2026-05-05T12:00:00.000Z",
  "app": "VerbenaTracker",
  "source": "mobile_gps"
}

Eventos: tracking_started, location_update, manual_location, delivery_done, emergency, tracking_stopped.

Limitaciones Android

Android puede pausar o finalizar servicios background por ahorro de bateria, restricciones del fabricante, cierre forzado manual o permisos revocados. VerbenaTracker usa mecanismos permitidos por Expo/Android con servicio foreground y no implementa tecnicas agresivas.

Para pruebas reales, usar dispositivo Android fisico y permitir ubicacion en segundo plano.