def rotation_trigger() command= "php /usr/local/bin/airtime_rotation.php" log(label="Rotation Created",level=5,command) system(command) end station_id=single(id="s_stationId","/srv/backup/files/station_id/station_id.mp3") s =fallback(id="radio", track_sensitive=false, transitions=[transition,transition,transition], [strip_blank(id="main_silence",max_blank=240.,threshold=-70.,s), on_blank(rotation_trigger, strip_blank(id="url_silence",max_blank=120.,threshold=-70.,default)), station_id]) This is the path of the script command= "php /usr/local/bin/airtime_rotation.php" Change this log level to 3 and when the script run it will log your file in stdout log(label="Rotation Created",level=5,command) This is an optional file without it will complain that the source is falliable station_id=single(id="s_stationId","/srv/backup/files/station_id/station_id.mp3") #people hate this because they dont know whats it for a nice smooth fade in transitions=[transition,transition,transition], Everbody should have this.Airtime needs this but since they hate cganging liquidsoap its never implemented. every scrip I put it in everybody feels happy it prevents your stream from kickng off everybody should you have nothing schedule or your queue becomes empty. its 4 minutes of dead slience make it large,I find this value adequate strip_blank(id="main_silence",max_blank=240.,threshold=-70.,s), This is your trigger it explains itself,just calling the script on_blank(rotation_trigger, strip_blank(id="url_silence",max_blank=120.,threshold=-70.,default)),