feat: background device status check every 240s instead of on page load
- Add online, leds, version, last_check columns to wled_devices table - Background job checks all WLED devices every 4 minutes - Initial check on startup - Devices page reads status from DB (instant page load) - 'Alle jetzt pruefen' button triggers manual check Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+23
-1
@@ -32,7 +32,11 @@ def init_db():
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
hostname TEXT NOT NULL UNIQUE,
|
||||
name TEXT DEFAULT '',
|
||||
segment_count INTEGER NOT NULL DEFAULT 2
|
||||
segment_count INTEGER NOT NULL DEFAULT 2,
|
||||
online INTEGER DEFAULT 0,
|
||||
leds INTEGER DEFAULT 0,
|
||||
version TEXT DEFAULT '',
|
||||
last_check TIMESTAMP
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS assignments (
|
||||
@@ -71,6 +75,24 @@ def init_db():
|
||||
);
|
||||
""")
|
||||
|
||||
# Migrate: add columns if missing (for existing databases)
|
||||
try:
|
||||
conn.execute("ALTER TABLE wled_devices ADD COLUMN online INTEGER DEFAULT 0")
|
||||
except Exception:
|
||||
pass
|
||||
try:
|
||||
conn.execute("ALTER TABLE wled_devices ADD COLUMN leds INTEGER DEFAULT 0")
|
||||
except Exception:
|
||||
pass
|
||||
try:
|
||||
conn.execute("ALTER TABLE wled_devices ADD COLUMN version TEXT DEFAULT ''")
|
||||
except Exception:
|
||||
pass
|
||||
try:
|
||||
conn.execute("ALTER TABLE wled_devices ADD COLUMN last_check TIMESTAMP")
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
defaults = {
|
||||
"azure_client_id": "",
|
||||
"azure_client_secret": "",
|
||||
|
||||
Reference in New Issue
Block a user