← The Naistro work02 / NAISTRO · CONTRIBUTION

Finding and rearranging scheduled tracks.

Give curators more control over their selections.

Where this work fits

A song can still be playing when an advert or prayer is due. The player needs to know what takes priority, where to stop, and where to resume. Station changes and the venue’s local time add more boundaries to that same day.

MY CONTRIBUTION

I built tempo filtering and tools for placing tracks in a schedule. Filters could accept values and ranges. When two track positions were swapped, transactional updates kept the exchange together while preserving the surrounding schedule positions.

THE IDEA, ILLUSTRATED

Find the records that need attention

CATALOGUE FILTERING · A SMALLER, USEFUL VIEW
ProductQty.Status
Desk lampIn Stock
12Published
Reading lampLimited Stock
4Draft
Floor lampPre-Order
0Published
3 of 3 products
Filters combine: choose a status and an exact name to narrow the records. The backend also supports category and item-type filters.
THE ENGINEERING DECISION

Start on time without losing the song.

Giving an interruption priority solves only half the problem. I also had to preserve how much of the track had played, resolve conflicts between interruptions, and align what came next. Time-zone handling kept those decisions tied to the venue’s day.

The skills behind the work

SQL
Query and update relational data, with clear rules about which records a result represents.
Transactions
Save related changes together, or roll them back together when a step fails.
Query filtering
Narrow records to the information a person is trying to find.
THE WIDER RESULT

Scheduling errors fell, and interrupted tracks could continue from their saved position. Operators gained more control over when content played and how it fit into the rest of the schedule.

READ THIS IN CONTEXTI moved the scheduling decisions into the backend. →
Related contributionsA venue’s day as one playback timelineI extended the backend scheduler to assemble a day in the venue’s local time. The work handled adjacent stations, tracks crossing schedule boundaries, and the end of the day, so the returned sequence reflected the whole plan rather than isolated slots.Music that resumes after an interruptionI implemented ordering for music, adverts, and prayer interruptions. I preserved the amount of a track already played so it could resume afterward, and handled conflicts between interruptions rather than allowing them to compete for the same moment.Scheduling messages across venuesI built campaign-message operations for date ranges, days, rotation, and specific times. That let an operator configure where and when a message belonged; the scheduling work then determined its place among the other audio events.