Phase 5 Complete by Claude Code
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import asyncio
|
||||
from fastapi import FastAPI
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
from config import settings
|
||||
@@ -7,6 +8,9 @@ from melodies.router import router as melodies_router
|
||||
from devices.router import router as devices_router
|
||||
from settings.router import router as settings_router
|
||||
from users.router import router as users_router
|
||||
from mqtt.router import router as mqtt_router
|
||||
from mqtt.client import mqtt_manager
|
||||
from mqtt import database as mqtt_db
|
||||
|
||||
app = FastAPI(
|
||||
title="BellSystems Admin Panel",
|
||||
@@ -28,13 +32,27 @@ app.include_router(melodies_router)
|
||||
app.include_router(devices_router)
|
||||
app.include_router(settings_router)
|
||||
app.include_router(users_router)
|
||||
app.include_router(mqtt_router)
|
||||
|
||||
|
||||
@app.on_event("startup")
|
||||
async def startup():
|
||||
init_firebase()
|
||||
await mqtt_db.init_db()
|
||||
mqtt_manager.start(asyncio.get_event_loop())
|
||||
asyncio.create_task(mqtt_db.purge_loop())
|
||||
|
||||
|
||||
@app.on_event("shutdown")
|
||||
async def shutdown():
|
||||
mqtt_manager.stop()
|
||||
await mqtt_db.close_db()
|
||||
|
||||
|
||||
@app.get("/api/health")
|
||||
async def health_check():
|
||||
return {"status": "ok", "firebase": firebase_initialized}
|
||||
return {
|
||||
"status": "ok",
|
||||
"firebase": firebase_initialized,
|
||||
"mqtt": mqtt_manager.connected,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user