# Copia este archivo a .env y configura tus ajustes # ============================================ # Configuración del Servidor # ============================================ # Puerto en el que escuchará el servidor # Por defecto: 6942 PORT=6942 # Token de autenticación para proteger la API # Si está vacío, la autenticación estará deshabilitada # Los clientes deben enviar este valor en el header "Authorization" PASSWORD=clave_ultra_segura # Ruta base de la API (sin barra final) # Todas las rutas de la API comenzarán con este prefijo # Ejemplo: /smn/v1/weather/location/10821 BASE_PATH=/smn # ============================================ # Configuración de la API del SMN # ============================================ # URL base de la API del Servicio Meteorológico Nacional # Esta es la URL upstream a la que se reenviarán las peticiones # Se declara por un motivo de mantener el proyecto en un sistema orientado a objetos, pero no debe cambiarse BASE_API=https://ws1.smn.gob.ar # URL del sitio web del SMN para extraer el token de autenticación # Se usa con Selenium para obtener el token JWT automáticamente # Se declara por un motivo de mantener el proyecto en un sistema orientado a objetos, pero no debe cambiarse SMN_URL=https://www.smn.gob.ar/ # ============================================ # Configuración de Caché # ============================================ # Directorio donde se almacenarán los archivos de caché # Se creará automáticamente si no existe CACHE_DIR=cache # Tiempo de vida del caché en minutos # Las respuestas cacheadas se considerarán válidas durante este tiempo # Después de este período, se realizará una nueva petición al SMN CACHE_TTL_MINUTES=60 # ============================================ # Configuración del Token # ============================================ # Archivo donde se guardará el token JWT del SMN # Este token se renueva automáticamente cuando expira SMN_TOKEN_FILE=token # ============================================ # Configuración de Logging # ============================================ # Ruta al archivo de logs (opcional) # Si está vacío, los logs solo se mostrarán en la consola # Ejemplo: LOG_FILE=logs/opensmn.log LOG_FILE= # ============================================ # Configuración de Selenium # ============================================ # Ejecutar Selenium en modo headless (sin interfaz gráfica) # Valores: true o false # Recomendado: true para servidores sin entorno gráfico, realmente solo se utilizaria false en desarollo SELENIUM_HEADLESS=true # Segundos de espera para que la página del SMN cargue completamente # Aumenta este valor si tenes una conexión lenta SELENIUM_WAIT_SECONDS=8 # ============================================ # Configuración de Uvicorn (Servidor ASGI) # ============================================ # Cantidad de workers para el servidor # Se recomienda mantener en 1 para evitar problemas de sincronización, por ahora no esta preparado para escalar verticalmente WORKERS=1 # Dirección IP en la que escuchará el servidor # 0.0.0.0 = escucha en todas las interfaces de red # 127.0.0.1 = solo escucha en localhost (conexiones locales) HOST=0.0.0.0