Program Elements can have rules assigned to them. The rules serve as a guide for the automation logic
to select songs matching the criteria for the rules you set.
If you associate more than one rule to the program element, the system will pick one at random each time
the program element is referenced for automation.
For program elements that have a link to a song or commercial break, the automation engine will ignore
any rule set for that program element and will move on to the next program element when playback is
complete.
If the automation engine can't find any program element to base its playback decision on, it will randomize
the playback.
This part of the automation engine is tagged for an upgrade where you will see an adaptive logic applied
where the system will learn from your programming and extrapolate song selection rather than simply
randomizing.
We suggest that you experiment rigorously with this section.
Program Element Rules
Note: Please refer to the Program Element section first before proceeding if
you haven't covered it.
With the Program Elements tab selected, expand the root node to view all program elements.
Select the last program element in the tree branch.

Selecting the program element from the tree branch should display its properties in the form fields to the
right of the tree.
As you can see, the selected program element's end time is 19:12:25. The program to which this program
element belongs starts at 7:00:00 PM and ends at 8:00:00 PM. So, we are left with roughly 1 hour and 47
minutes of air time not filled with any program element. We can request the system to make the song
selection on our behalf based on any set of rules we choose to apply to it. To do that, we have to add a
new program element with the starting time of 19:12:20. Any other starting time is permissible, provided it
does not go over the boundaries of the parent program. We have chosen to start the program element at
19:12:20 to allow for a 5 second overlap or mix between both elements.
Click on New to add a new program element and enter the values as seen in the snapshot below.

Save the above and then click on the Program Element Rules.

Click on the Add button to add a new program element rule to the program element "System to Pick". The
program element rule selection dialog box will pop up.

You can select an existing rule from the list or click on the button to the right of the element rule drop down
box to add a new rule.
The element rule dialog box will display.

Click on the New button to create a new rule and fill in the details as shown below. Click on Save when
done to persist the newly created element rule to the database.

Select the newly created element rule from the list to the right of the form and double click to edit it.

The rule criteria dialog box will pop up. You use this dialog box to specify the criteria the system should
associate with the element rule. The element rule specified the mix settings, artist separation, etc... The
rule criteria allows you to specify the particular audio properties which the automation engine will use to
select the audio media files for playback
As of the time of this writing, the following search fields can be used to filter the selection of media files.

If you have more than one search field defined, the automation engine will look for any media records
matching all criteria defined.
For this example, we have defined the following as our criteria.

That's all there is to defining or creating new element rules.
To complete the cycle, let's now close the rule criteria dialog box and then the element rule dialog box
which brings us back to the program element rule selection dialog box. Select the newly created element
rule from the drop down box and click on the OK button to accept the selection.

Your element rule selection now associated with the currently selected program element.

To test your newly created program and program elements, simply click on the automation button on the
Players menu.

Note: Automation will start playing programs and program elements from the current date and time of
your system onwards. If your created program or program element's end time is in the past, it will not be
played. Make sure that the program element's time is equal or falls after the current date and time. If it is
after the current date and time, you'll have to wait for the playback to reach it.