Sistema de monitoreo en tiempo real de aeronaves privadas que envía notificaciones automáticas a Telegram cuando los aviones despegan, aterrizan o están en vuelo.
- 🛫 Notificaciones automáticas de despegue
- 🛬 Notificaciones automáticas de aterrizaje
- 📊 Información detallada de vuelo (altitud, velocidad, rumbo)
- 🧭 Estimación de destino basado en rumbo
- 📍 Aeropuerto más cercano con ETA aproximado
- 🔄 Persistencia de estado entre reinicios
- 📜 Historial de vuelos
- 🚨 Detección de códigos de emergencia (7700, 7600, 7500)
- Python 3.7 o superior
- Una cuenta de Telegram
- Un bot de Telegram
- Códigos ICAO24 y matrículas de las aeronaves a monitorear
- Clonar el repositorio:
git clone https://github.com/tu-usuario/trackvuelosprivados.git
cd trackvuelosprivados- Instalar dependencias:
pip install -r requirements.txt- Crear archivo de configuración:
cp .env.example .env- Configurar variables de entorno en
.env:
TELEGRAM_TOKEN=tu_token_del_bot
TELEGRAM_CHAT_ID=tu_chat_id- Habla con @BotFather en Telegram
- Envía
/newboty sigue las instrucciones - Copia el token que te proporciona
- Pégalo en
.envcomoTELEGRAM_TOKEN
- Habla con @userinfobot en Telegram
- Te enviará tu ID de chat
- Pégalo en
.envcomoTELEGRAM_CHAT_ID
Para grupos:
- Agrega tu bot al grupo
- Envía un mensaje en el grupo
- Visita:
https://api.telegram.org/bot<TU_TOKEN>/getUpdates - Busca el campo
"chat":{"id": - Usa ese ID (será negativo para grupos)
Edita el archivo monitor_vuelos.py en la línea 13-19, modificando el diccionario PLANES:
PLANES = {
"e0659a": "LV-FVZ", # ICAO24: Matrícula
"e030cf": "LV-CCO",
"e06546": "LV-FUF",
# Agrega más aeronaves aquí
}- FlightRadar24: Busca la matrícula y mira la URL:
flightradar24.com/<MATRICULA> - OpenSky Network: https://opensky-network.org/
- ADS-B Exchange: https://www.adsbexchange.com/
El código ICAO24 es un identificador hexadecimal único de 6 caracteres.
Ejemplo de Argentina:
- Rango:
e00000ae3ffff - Formato:
e0659a(siempre en minúsculas en el código)
python monitor_vuelos.pyEl script verificará vuelos cada 5 minutos (300 segundos).
Presiona Ctrl+C para detener el monitoreo.
- Crea cuenta en Railway.app
- Conecta tu repositorio de GitHub
- Agrega las variables de entorno:
TELEGRAM_TOKENTELEGRAM_CHAT_IDENABLE_MONITOR=true
- Railway detectará automáticamente
Procfiley ejecutará el monitor
plane_state.json: Estado actual de los aviones monitoreadosflight_history.json: Historial de los últimos 100 eventosmonitor.log: Logs de ejecución (en Railway)
- SAEZ: Ezeiza
- SABE: Aeroparque
- SACO: Córdoba
- SAZS: San Carlos de Bariloche
- SAZM: Mendoza
- SASA: Salta
- SARF: Rosario
- SAAV: Ushuaia
Para agregar más aeropuertos, edita el diccionario ARGENTINA_AIRPORTS en monitor_vuelos.py (línea 26-35).
trackvuelosprivados/
├── monitor_vuelos.py # Script principal
├── requirements.txt # Dependencias Python
├── Procfile # Configuración Railway
├── .env # Variables de entorno (no incluido)
├── .env.example # Plantilla de variables
├── README.md # Este archivo
├── plane_state.json # Estado persistente
└── flight_history.json # Historial de vuelos
✈️ LV-FVZ despegó
ICAO24: e0659a
📊 Altitud: 3500 m
🚀 Velocidad: 450.0 km/h
🧭 Rumbo: 180° (S)
⬆️ Subiendo +800 ft/min
📍 Aeropuerto más cercano: Ezeiza (SAEZ)
📏 Distancia: 25.5 km
⏱️ ETA aproximado: 3 min
🎯 Dirección estimada: Hacia Mendoza (650.0 km)
🔗 Ver en vivo: https://www.flightradar24.com/LV-FVZ
📡 Fuente: OpenSky
🕐 2025-10-31 14:30:00 -03
El sistema detecta automáticamente códigos de emergencia:
- 🆘 7700: Emergencia general
- 📻 7600: Falla de radio
- 🚨 7500: Secuestro
- Fork el proyecto
- Crea tu rama:
git checkout -b feature/nueva-funcionalidad - Commit tus cambios:
git commit -m 'Agregar nueva funcionalidad' - Push a la rama:
git push origin feature/nueva-funcionalidad - Abre un Pull Request
Este proyecto es de código abierto y está disponible bajo la Licencia MIT.
Este proyecto utiliza la API pública de OpenSky Network. Respeta sus términos de uso y limitaciones de tasa de solicitudes.
Si tienes problemas o preguntas, abre un issue en GitHub.