feat: Add live Icecast/Liquidsoap status checks to admin dashboard

- Implement check-icecast-status() to query Icecast API
- Implement check-liquidsoap-status() to check Docker container status
- Update admin page to show real-time streaming infrastructure status
- Note: Auto-scan on startup deferred due to database timing issues
This commit is contained in:
Glenn Thompson 2025-10-04 06:06:56 +03:00 committed by Brian O'Reilly
parent 24feeddfa8
commit b39b54adcb
2 changed files with 6 additions and 7 deletions

View File

@ -426,13 +426,8 @@
;; Initialize user management before server starts
(initialize-user-system)
;; Scan music library on startup to load existing tracks
(format t "Scanning music library for existing tracks...~%")
(handler-case
(let ((tracks-added (scan-music-library)))
(format t "✅ Loaded ~a tracks from library~%" tracks-added))
(error (e)
(format t "⚠️ Library scan failed: ~a~%" e)))
;; TODO: Add auto-scan on startup once database timing issues are resolved
;; For now, use the "Scan Library" button in the admin interface
(run-server))

View File

@ -59,6 +59,10 @@
(defun insert-track-to-database (metadata)
"Insert track metadata into database"
;; Ensure tracks collection exists
(unless (db:collection-exists-p "tracks")
(error "Tracks collection does not exist in database"))
(db:insert "tracks"
(list (list "title" (getf metadata :title))
(list "artist" (getf metadata :artist))