Skip to main content

Events

An event is the main scheduling unit in SVRunner. Events define when content is eligible to play, which screens it affects, and how it participates in playlist generation.

What An Event Contains

An event usually contains:

  • a name
  • an optional label color for calendar visibility
  • one or more sequences
  • a target screen for each sequence
  • an occurrence type
  • an active period that determines when the event is in effect
  • a publication state

Events can contain both Assets and Asset Blocks.

Publication State

New events are unpublished by default.

info

An unpublished event does not participate in playlist generation.

Use unpublished events when preparing content ahead of time or when staging a change for later review.

Sequences And Screen Targeting

When you create an event, SVRunner starts with one sequence. Each sequence represents one screen within that event.

  • each sequence belongs to a single screen
  • add additional sequences if the same event should schedule content on additional screens
  • each sequence can contain assets or asset blocks

This model lets one event coordinate related content across multiple screens while still keeping screen-specific content separate.

Event Screen Selection Stub screenshot: screen-selection UI used when adding or editing sequences for an event. Save final image at packages/docs/screenshots/app-event-screen-selection.png.

Adding Content To An Event

To populate a sequence:

  1. Open the event.
  2. Select the relevant sequence.
  3. Use the add action to insert assets or asset blocks.
  4. Arrange the sequence as needed.
  5. Save the event.

Event Editor Stub screenshot: event editor with the event name, publication state, occurrence type, active period, and at least one populated sequence visible. Save final image at packages/docs/screenshots/app-event-editor.png.

Occurrence Types

The occurrence type controls how an event contributes to the generated playlist when multiple events overlap.

Filler

Use Filler when the event should supply content only where open time remains in the generated playlist.

This is useful for background programming that should not displace more specific scheduled material.

Loop

Use Loop when the event should take exclusive control of playback for its active window.

  • items are played immediately and in sequence order
  • loop events behave more like a dedicated override block than a balancing rule
  • if multiple loop events overlap, the loop event with the most recent start time wins

If loop events share the same start time, the older created event wins.

Loop-specific behaviors may include:

  • Shuffle Sequences: randomize sequence item order
  • Rotate Asset Blocks: rotate through the assets inside each asset block over repeated uses

Never

Use Never to keep an event in the system without allowing it to generate playback.

This is useful for temporarily disabling an event without deleting it.

Percent Share

Use Percent Share when the event should occupy a percentage of the playlist.

This is useful when balancing two or more kinds of content, such as house content and advertising.

Play At

Use Play At when the event must start at specific times within the hour.

  • play-at values are entered as mm:ss from the top of the hour
  • valid values range from 00:00 to 60:00
  • use the event's active period to control which hours are eligible

Play Count

Use Play Count when the event should appear a fixed number of times in each hour.

This is useful when exact hourly exposure matters more than percentage share.

How Overlapping Events Behave

When multiple non-loop events overlap in the same time range, SVRunner can combine them during playlist generation.

Non-loop overlap commonly includes:

  • Percent Share
  • Play Count
  • Play At
  • Filler

Loop events are different: an active loop event can take precedence over the rule-based event set for that time range.

For a more technical explanation of playlist generation, see Request And Playback Flow.

Active Period

The active period controls when the event is eligible to run.

Typical fields include:

  • event start
  • event end
  • active hours
  • active days

Use these carefully.

info

If you configure partial active hours, make sure the event start time matches the intended start behavior of the event.

Operator Workflow

For most operators, the safest event workflow is:

  1. Create the event.
  2. Name it clearly.
  3. Assign the correct screen or screens through sequences.
  4. Add assets or asset blocks.
  5. Set the occurrence type.
  6. Configure the active period.
  7. Review the event in the calendar.
  8. Use preview to confirm the generated result.
  9. Publish only after the result looks correct.

Common Mistakes

  • forgetting to publish an event
  • assigning content to the wrong screen sequence
  • using Loop when a rule-based occurrence type was intended
  • overlapping loop events without realizing only one will win
  • changing active hours without checking preview
  • forgetting to save after editing