Wenn beim Start keine User in der Datenbank vorhanden sind, wird
automatisch ein verifizierter Admin angelegt:
E-Mail: admin@localhost
Passwort: changeme
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- database.path in config.yaml: meshdd.db → data/meshdd.db
- data/.gitkeep: Verzeichnis in Git verankert, *.db-wal/shm gitignored
- database.py: PRAGMA wal_checkpoint(FULL) vor db.close() für sauberes Schließen
- main.py: Shutdown-Schritte einzeln mit try/except gekapselt;
db.close() wird jetzt auch bei Fehlern in vorherigen Schritten ausgeführt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add message sending from web dashboard with channel selector, new POST /api/send
endpoint, scheduler support for free-text messages (type field), and modernized
dashboard layout with glassmorphism navbar, gradient stat cards, chat bubbles.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Central config.yaml with live-reload file watcher
- Configurable command prefix (default: /)
- Light/dark theme toggle with localStorage persistence
- Map: hop-based node coloring with legend, hover tooltips
- Dashboard: node long names, hop column, channel names in messages
- Load existing messages on WebSocket connect
- Weather fallback to Dresden center
- Remove version.py and pre-commit hook
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move all configuration to config.yaml with live-reload (file watcher).
Version is now managed in config.yaml instead of version.py.
Remove pre-commit hook for automatic version bumping.
Pin meshtastic dependency to >=2.7.7.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Implements full MeshDD-Bot with TCP connection to Meshtastic devices,
SQLite storage for nodes/messages, aiohttp web dashboard with WebSocket
live updates, and Leaflet.js map view with color-coded node markers.
Includes bot commands (!ping, !nodes, !info, !help, !weather, !stats,
!uptime) and automatic version bumping via pre-commit hook.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>