-
Notifications
You must be signed in to change notification settings - Fork 102
Description
See: xibosignage/xibo#2040
See: xibosignage/xibo#2437
Implementation thoughts:
Sub-Playlist
When parsing a new Layout we should look for any media nodes with the option for cycle based playback and group those up based on their playlistId. These should be added to the sequence of media in that Region as a single sequence (some sort of Media Group wrapper perhaps?). When it is time for the media group wrapper to play, it selects the child widget it will play based on the settings provided (play count, random, etc), and shows that media.
cyclePlaybackparentWidgetIdisRandomplayCount
Campaign
When parsing the schedule we should look for any layout nodes which the option for cycle based playback and group those up based on their campaignId. These should be added to the schedule loop as a single event. When the schedule loop arrives at this item, it should play the appropriate Layout from the Campaign based on the current play count.
cyclePlaybackgroupKeyplayCount
State
It also needs to track its state so that when the Layout is removed and later re-added, the state gets loaded and the correct widget can be chosen. This can be in-memory and should we reset once all Layouts/Widgets have been played through for their respective play counts.