## Backend Changes - Add new API endpoints: combustible, pois, mantenimiento, video, configuracion - Fix vehiculos endpoint to return paginated response with items array - Add /vehiculos/all endpoint for non-paginated list - Add /geocercas/all endpoint - Add /alertas/configuracion GET/PUT endpoints - Add /viajes/activos and /viajes/iniciar endpoints - Add /reportes/stats, /reportes/templates, /reportes/preview endpoints - Add /conductores/all and /conductores/disponibles endpoints - Update router.py to include all new modules ## Frontend Changes - Fix authentication token handling (snake_case vs camelCase) - Update vehiculosApi.listAll to use /vehiculos/all - Fix FuelGauge component usage in Combustible page - Fix chart component exports (named + default exports) - Update API client for proper token refresh ## Infrastructure - Rename services from ADAN to ATLAS - Configure Cloudflare tunnel for atlas.consultoria-as.com - Update systemd service files - Configure PostgreSQL with TimescaleDB - Configure Redis, Mosquitto, Traccar, MediaMTX ## Documentation - Update installation guides - Update API reference - Rename all ADAN references to ATLAS Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
201 lines
6.5 KiB
XML
201 lines
6.5 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
|
|
<!--
|
|
============================================
|
|
Traccar Server - Configuracion para Sistema de ATLAS
|
|
============================================
|
|
Documentacion: https://www.traccar.org/configuration-file/
|
|
|
|
Esta configuracion:
|
|
- Usa PostgreSQL como base de datos
|
|
- Forward de posiciones a API del sistema
|
|
- Deshabilita interfaz web (usamos nuestra propia UI)
|
|
- Solo habilita protocolos GPS comunes
|
|
============================================
|
|
-->
|
|
|
|
<!DOCTYPE properties SYSTEM 'http://java.sun.com/dtd/properties.dtd'>
|
|
|
|
<properties>
|
|
|
|
<!-- ========================================
|
|
Configuracion General
|
|
======================================== -->
|
|
|
|
<!-- Modo de operacion -->
|
|
<entry key='config.default'>./conf/default.xml</entry>
|
|
|
|
<!-- Logging -->
|
|
<entry key='logger.enable'>true</entry>
|
|
<entry key='logger.level'>info</entry>
|
|
<entry key='logger.file'>/opt/traccar/logs/tracker-server.log</entry>
|
|
<entry key='logger.rotate'>true</entry>
|
|
|
|
<!-- ========================================
|
|
Base de Datos PostgreSQL
|
|
======================================== -->
|
|
|
|
<entry key='database.driver'>org.postgresql.Driver</entry>
|
|
<entry key='database.url'>jdbc:postgresql://localhost:5432/traccar</entry>
|
|
<entry key='database.user'>atlas</entry>
|
|
<entry key='database.password'>POSTGRES_PASSWORD</entry>
|
|
|
|
<!-- Pool de conexiones -->
|
|
<entry key='database.checkConnection'>true</entry>
|
|
<entry key='database.maxPoolSize'>10</entry>
|
|
|
|
<!-- ========================================
|
|
Interfaz Web (DESHABILITADA)
|
|
======================================== -->
|
|
|
|
<!-- No usamos la web UI de Traccar, usamos nuestra propia -->
|
|
<entry key='web.enable'>false</entry>
|
|
<!-- Si necesitas habilitarla temporalmente para debug: -->
|
|
<!-- <entry key='web.enable'>true</entry> -->
|
|
<!-- <entry key='web.port'>8082</entry> -->
|
|
|
|
<!-- ========================================
|
|
Forward de Posiciones a API
|
|
======================================== -->
|
|
|
|
<!-- Enviar cada posicion a nuestro backend -->
|
|
<entry key='forward.enable'>true</entry>
|
|
<entry key='forward.url'>http://localhost:8000/api/v1/traccar/position</entry>
|
|
<entry key='forward.json'>true</entry>
|
|
|
|
<!-- Headers adicionales (si se necesita auth) -->
|
|
<!-- <entry key='forward.header.Authorization'>Bearer TOKEN</entry> -->
|
|
|
|
<!-- Reintentos en caso de fallo -->
|
|
<entry key='forward.retryEnable'>true</entry>
|
|
<entry key='forward.retryDelay'>60</entry>
|
|
<entry key='forward.retryCount'>3</entry>
|
|
|
|
<!-- ========================================
|
|
Protocolos GPS Habilitados
|
|
======================================== -->
|
|
|
|
<!-- Puerto principal - Protocolo Osmand (Android/iOS apps) -->
|
|
<entry key='osmand.port'>5055</entry>
|
|
|
|
<!-- GT06 - Dispositivos chinos comunes -->
|
|
<entry key='gt06.port'>5023</entry>
|
|
|
|
<!-- H02 - Coban y similares -->
|
|
<entry key='h02.port'>5013</entry>
|
|
|
|
<!-- TK103 - Muy comun -->
|
|
<entry key='tk103.port'>5002</entry>
|
|
|
|
<!-- GPS103 -->
|
|
<entry key='gps103.port'>5001</entry>
|
|
|
|
<!-- Teltonika - Profesionales -->
|
|
<entry key='teltonika.port'>5027</entry>
|
|
|
|
<!-- Queclink -->
|
|
<entry key='queclink.port'>5050</entry>
|
|
|
|
<!-- Meitrack -->
|
|
<entry key='meitrack.port'>5020</entry>
|
|
|
|
<!-- Ruptela -->
|
|
<entry key='ruptela.port'>5046</entry>
|
|
|
|
<!-- Suntech -->
|
|
<entry key='suntech.port'>5011</entry>
|
|
|
|
<!-- Watch (smartwatches GPS) -->
|
|
<entry key='watch.port'>5093</entry>
|
|
|
|
<!-- T55 -->
|
|
<entry key='t55.port'>5005</entry>
|
|
|
|
<!-- Xexun -->
|
|
<entry key='xexun.port'>5006</entry>
|
|
|
|
<!-- TotemAT -->
|
|
<entry key='totem.port'>5007</entry>
|
|
|
|
<!-- Enfora -->
|
|
<entry key='enfora.port'>5008</entry>
|
|
|
|
<!-- Meiligao -->
|
|
<entry key='meiligao.port'>5009</entry>
|
|
|
|
<!-- Protocolo Traccar (app oficial) -->
|
|
<entry key='traccar.port'>5190</entry>
|
|
|
|
<!-- ========================================
|
|
Procesamiento de Eventos
|
|
======================================== -->
|
|
|
|
<!-- Eventos a procesar -->
|
|
<entry key='event.enable'>true</entry>
|
|
<entry key='event.ignoreDuplicateAlerts'>true</entry>
|
|
|
|
<!-- Geocodificacion (obtener direcciones) -->
|
|
<entry key='geocoder.enable'>true</entry>
|
|
<entry key='geocoder.type'>nominatim</entry>
|
|
<entry key='geocoder.url'>https://nominatim.openstreetmap.org/reverse</entry>
|
|
<entry key='geocoder.key'></entry>
|
|
<entry key='geocoder.processInvalidPositions'>false</entry>
|
|
<entry key='geocoder.reuseDistance'>50</entry>
|
|
|
|
<!-- Alternativamente usar Google (requiere API key) -->
|
|
<!-- <entry key='geocoder.type'>google</entry> -->
|
|
<!-- <entry key='geocoder.key'>TU_API_KEY</entry> -->
|
|
|
|
<!-- ========================================
|
|
Filtros de Posicion
|
|
======================================== -->
|
|
|
|
<!-- Filtrar posiciones invalidas -->
|
|
<entry key='filter.enable'>true</entry>
|
|
<entry key='filter.invalid'>true</entry>
|
|
<entry key='filter.zero'>true</entry>
|
|
<entry key='filter.duplicate'>true</entry>
|
|
|
|
<!-- Filtrar por velocidad maxima (km/h) -->
|
|
<entry key='filter.maxSpeed'>500</entry>
|
|
|
|
<!-- Distancia minima entre posiciones (metros) -->
|
|
<entry key='filter.distance'>10</entry>
|
|
|
|
<!-- ========================================
|
|
Notificaciones
|
|
======================================== -->
|
|
|
|
<!-- Las notificaciones las maneja nuestro backend -->
|
|
<entry key='notificator.enable'>false</entry>
|
|
|
|
<!-- ========================================
|
|
API REST de Traccar (DESHABILITADA)
|
|
======================================== -->
|
|
|
|
<!-- No exponemos API de Traccar, usamos nuestra propia -->
|
|
<entry key='api.enable'>false</entry>
|
|
|
|
<!-- ========================================
|
|
Seguridad
|
|
======================================== -->
|
|
|
|
<!-- Registro de nuevos dispositivos -->
|
|
<entry key='database.registerUnknown'>true</entry>
|
|
|
|
<!-- Dispositivos deben existir antes de enviar datos -->
|
|
<!-- <entry key='database.registerUnknown'>false</entry> -->
|
|
|
|
<!-- ========================================
|
|
Rendimiento
|
|
======================================== -->
|
|
|
|
<!-- Threads para procesamiento -->
|
|
<entry key='processing.computedAttributes.enabled'>true</entry>
|
|
<entry key='processing.computedAttributes.threads'>4</entry>
|
|
|
|
<!-- Cache -->
|
|
<entry key='database.positionsHistoryDays'>30</entry>
|
|
|
|
</properties>
|