Fix: AISStream Auto-Start via @app.on_event(startup)
Router-Level on_event funktioniert nicht in FastAPI, muss auf app-Level registriert werden. AISStream verbindet sich jetzt beim Server-Start automatisch und sammelt kontinuierlich Schiffspositionen (13.000+ global).
Dieser Commit ist enthalten in:
@@ -347,6 +347,15 @@ app.include_router(network_analysis_router)
|
|||||||
app.include_router(tutorial_router)
|
app.include_router(tutorial_router)
|
||||||
app.include_router(geoint_router, prefix="/api/geoint")
|
app.include_router(geoint_router, prefix="/api/geoint")
|
||||||
|
|
||||||
|
@app.on_event("startup")
|
||||||
|
@app.on_event("startup")
|
||||||
|
async def _start_aisstream_on_startup():
|
||||||
|
import asyncio
|
||||||
|
from routers.geoint import _start_aisstream
|
||||||
|
await asyncio.sleep(3)
|
||||||
|
_start_aisstream()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@app.websocket("/api/ws")
|
@app.websocket("/api/ws")
|
||||||
async def websocket_endpoint(websocket: WebSocket):
|
async def websocket_endpoint(websocket: WebSocket):
|
||||||
|
|||||||
@@ -298,10 +298,3 @@ async def get_gdelt(
|
|||||||
_set_cache(cache_key, data)
|
_set_cache(cache_key, data)
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
# Auto-Start: AISStream bei erstem Request starten
|
|
||||||
@router.on_event("startup")
|
|
||||||
async def _auto_start_aisstream():
|
|
||||||
import asyncio
|
|
||||||
await asyncio.sleep(2)
|
|
||||||
_start_aisstream()
|
|
||||||
|
|||||||
In neuem Issue referenzieren
Einen Benutzer sperren