Note that this Wiki is a work in progress, items may not be updated or may disappear entirely as the pages are updated.
Different Rules for Requests than for PAL queued songs
From SpacialAudio
The goals of my script are..
1. To maintain 2 different sets of rules for how often songs and artists can repeat: Hourly, if a song is requested. But much longer for songs selected by script instead of requested.
2. To give requests priority over script selected songs: My script will NOT select a song and add it to the bottom of the queue unless the queue duration has slipped below 1 hour. If enough requests keep coming in to maintain the 1 hour queue, the script won't add any songs.
3. To ensure that requests are not played until an hour has passed.
4. To eliminate request rejects for "recently played".
5. To change the number of requests allowed per listener per hour, based on the number of current listeners: Fewer listeners means more requests permitted. More listeners means fewer requests permitted.
6. To help vary the song selections that this script makes (when requests aren't enough to maintain the 1 hour queue): Random numbers are used in PAL to change the values of Artist Repeat and Song Repeat rules. Each time the script selects and queues a song, it uses 1 of many different rules combinations that I've defined in PAL.
My PAL script ensures that my queue always contains a minimum of 1 hour of songs. I have all incoming requests sent to the bottom of my queue immediately, with the 1 hour queue serving as the required 1 hour delay before a request can be played.
My PAL script manipulates the settings for the number of minutes before a repeat artist or song is allowed: When requests are coming in, the rules are set to 0 minutes - because the 1 hour queue provides the necessary wait time all by itself. For songs selected for play by my script, as opposed to by request, the repeat rules are set to much higher values.
If 'Gloria' by U2 plays at 1 PM, and you request it at 1:05 PM, the request is accepted and goes to the bottom of the queue and will play at approx. 2:05 PM. If no requests are made for U2, my script won't select other U2 songs for 5 hours (maybe much longer, depending on the various possibilities in the PAL script) and it won't select 'Gloria' again for a long time.
Of course, you can use parts of my PAL script that suit you if you don't want to implement the whole thing. If you do plan to run the entire script effectively, you'll need to do these 3 things at a minimum:
1. In the SAM2 GUI, set your request policy so that all requests are sent to the bottom of your queue immediately.
2. In the SAM2 GUI, set it to run songs from your Queue (instead of Auto DJ or Manual DJ modes)
3. In the PAL Script, edit the section where song categories are listed. The script shows generic categories like 'Alternative', 'Soul', etc. You'll need to replace those category names with your own SAM2 song category names.
You may download the script here. http://spacialaudio.com/knowledge/attachment.php?attId=84
