Le serveur gagne un onglet Radio : les stations de l'annuaire, écoutables en direct dans le navigateur ou enregistrables — jusqu'à l'arrêt ou pour une durée choisie —, puis réécoutables depuis l'interface. Quatre enregistrements en parallèle au plus ; si le flux tombe, il est rouvert et le fichier continue. Les enregistrements rejoignent la bibliothèque : le mobile les reçoit. Un redémarrage du service clôt proprement les captures en cours, et celles restées « en cours » après un plantage sont récupérées au démarrage suivant. La copie de flux sans blocs ICY, propre au guet, est extraite pour être partagée. Côté mobile, la synchronisation manuelle n'était qu'un petit lien dans l'onglet Connexion : elle a maintenant un vrai bouton dans l'onglet Synchronisation. Deux passages ne se chevauchent plus, et une erreur inattendue s'affiche au lieu de fermer l'application. Le code Kotlin n'a pas été compilé sur cette machine (pas de JDK) : il a été relu, mais reste à construire. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N6pmSE168yjyf8vgV8mZx6
33 lines
1.4 KiB
Bash
33 lines
1.4 KiB
Bash
# Jeton partagé entre le serveur et l'application Android. Sans lui, l'API refuse tout.
|
|
# Générer par exemple avec : openssl rand -base64 24
|
|
NOXELY_TOKEN=
|
|
|
|
# Où sont rangés la base et les fichiers média.
|
|
# Par défaut dans le projet, pour que `make server-run` fonctionne sans droits particuliers.
|
|
# En service systemd, /var/lib/noxely est plus propre : l'unité le crée elle-même
|
|
# (StateDirectory), inutile de le préparer à la main.
|
|
NOXELY_DATA=./data
|
|
|
|
# Interface et port d'écoute.
|
|
NOXELY_HOST=0.0.0.0
|
|
NOXELY_PORT=8710
|
|
|
|
# Balayage des radios. Il est continu : un tour enchaîne sur le suivant.
|
|
# NOXELY_WATCH_INTERVAL n'est qu'une pause de sécurité entre deux tours.
|
|
NOXELY_WATCH_STATIONS=40
|
|
NOXELY_WATCH_INTERVAL=5
|
|
NOXELY_WATCH_CONCURRENCY=8
|
|
|
|
# Historique des écoutes : le serveur note ce que les stations annoncent, même sans guet en
|
|
# cours, et en tire ce qui tourne. Mettre 0 pour le couper (le balayage s'arrête alors quand
|
|
# plus rien n'est guetté).
|
|
NOXELY_HISTORY=1
|
|
# Pause entre deux tours quand rien n'est guetté, en secondes. Plus haut = moins de trafic.
|
|
NOXELY_LISTEN_INTERVAL=60
|
|
# Ancienneté maximale de l'historique, en jours.
|
|
NOXELY_HISTORY_DAYS=90
|
|
|
|
# Durée maximale d'un enregistrement de station, en minutes. Garde-fou contre un enregistrement
|
|
# oublié : compter environ 57 Mo par heure pour une station à 128 kb/s.
|
|
NOXELY_RECORD_MAX_MINUTES=180
|