# Programación Musical (Parrilla) La **parrilla** define qué música suena en cada bloque horario de cada día de la semana. ## Archivos `.mus` Ruta: `~/.gradio/data/parrilla//-.mus` - **Día**: 1=Lunes, 2=Martes, 3=Miércoles, 4=Jueves, 5=Viernes, 6=Sábado, 7=Domingo - **Hora**: bloque de una hora (0-1, 1-2, ..., 23-24) - Ejemplo: `~/.gradio/data/parrilla/1/10-11.mus` = Lunes de 10:00 a 11:00 ## Formato de un archivo `.mus` Cada línea puede ser: ``` /home/usuario/Música/tema_exacto.mp3 ← archivo específico /home/usuario/Música/Salsa/* ← archivo ALEATORIO de esa carpeta (comodín *) Hora ← insertar anuncio de hora del sistema ``` Ejemplo real: ``` /home/grecord/Musica/Inicio/intro.mp3 /home/grecord/Musica/Pop/* /home/grecord/Musica/Pop/* Hora /home/grecord/Musica/Rock/* /home/grecord/Musica/Baladas/* ``` ## Cola activa `playlist4` `~/.gradio/data/tmp/playlist4` contiene la playlist en ejecución. Formato TAB-separado: ``` /ruta/absoluta/al/archivo.mp3\t00:03:45.000 /ruta/absoluta/al/archivo2.mp3\t00:04:12.000 ``` El daemon `playlist-refill` mantiene esta cola con ~14 temas. Cada tema consumido se elimina de la primera línea. ## Cómo ver la programación actual ```bash # Qué tema está sonando ahora cat ~/.gradio/data/tmp/estado.json | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['titulo_actual'], '-', d['track_actual'])" # Cola de música pendiente cat ~/.gradio/data/tmp/playlist4 # Parrilla del día de hoy (ej. lunes = día 1) DIA=$(date +%u) # 1=Lun...7=Dom HORA=$(date +%-H) cat ~/.gradio/data/parrilla/$DIA/$HORA-$((HORA+1)).mus ``` ## Cómo modificar la programación ```bash # Agregar un tema al frente de la cola actual (próximo a reproducir) TEMA="/ruta/al/archivo.mp3" DUR="00:03:45.000" (echo -e "$TEMA\t$DUR"; cat ~/.gradio/data/tmp/playlist4) > /tmp/pl_tmp && mv /tmp/pl_tmp ~/.gradio/data/tmp/playlist4 # Agregar un tema al final de la cola echo -e "/ruta/al/archivo.mp3\t00:04:00.000" >> ~/.gradio/data/tmp/playlist4 # Editar la parrilla de mañana (agregar tema a las 9:00-10:00 del martes) echo "/ruta/nuevo_tema.mp3" >> ~/.gradio/data/parrilla/2/9-10.mus # Ver toda la programación de la semana para una hora específica for dia in 1 2 3 4 5 6 7; do echo "=== Día $dia ===" cat ~/.gradio/data/parrilla/$dia/10-11.mus 2>/dev/null || echo "(vacío)" done ``` ## Días con nombres | Número | Día | |--------|-----| | 1 | Lunes | | 2 | Martes | | 3 | Miércoles | | 4 | Jueves | | 5 | Viernes | | 6 | Sábado | | 7 | Domingo |