Skip to content

Instantly share code, notes, and snippets.

@tom--
Created November 22, 2018 16:32
Show Gist options
  • Save tom--/99c7840202f42921de19f4544f8ee5d5 to your computer and use it in GitHub Desktop.
Save tom--/99c7840202f42921de19f4544f8ee5d5 to your computer and use it in GitHub Desktop.
FAQ: What happens when Spinitron receives a recognition at 10:01AM and there is no playlist to put it in?

FAQ: What happens when Spinitron receives a recognition at 10:01AM and there is no playlist to put it in?

Answer: Spinitron automatically creates a playlist.

The playlist needs a title, start and end times, and an owner. Spinitron looks at the schedule: Is there a show in today's calendar spanning 10:01? Zero, one or more shows can satisfy this query.

If zero, Spinitron creates a generic playlist without using a show as template and the playlist is owned by the "automation persona". If more than one, having no better criteria, Spinitron chooses the most recently created show. If only one, there is no fuss.

Assuming a show was found, Spinitron copies over the title, start and end times and DJ. But a playlist can have only one DJ and a show can have one or more. If more than one, having no better criteria, Spinitron chooses the most recently created DJ. If only one, there is no fuss.

That's the background to the problem. How can it inform operations?

Avoiding fuss is simple: Don't schedule more than one show in a given time-slot and don't assign more than one DJ to a show.

(In v1 the weekday schedule forced stations with more complex repeating patterns to use either or both of these tricks. v2 also allows multiple shows per time-slot and multiple DJs per show but there is much less call to use them because the scheduling allows complex repetition.)

Let's say two DJs alternate in the Wed 10AM slot, ones hosts "The Drew Show" and the other "The Jamie Show". Create two shows and set the schedule repetition according to the pattern the DJs follow, e.g. "every other week" or "2nd and 4th Wed of each month" etc. Whatever rules you use can be expressed with schedule repetitions so long as it is predictable. This affords listeners the benefit of look at the schedule and see which show is coming up this week or next. DJs and station staff can use it for reference too.

Now let's say two DJs alternate as hosts of "The Wed 10AM Show". You can do the same. Use two shows with the same name and express who is on which date using the repetition options. It affords the same benefits to listeners and staff.

You only need an ambiguous schedule if nobody knows which show is happening or which DJ is hosting this week or next week. For example, two DJs arrange between themselves ad hoc every Tuesday evening who's on the radio tomorrow at 10AM. This isn't necessarily the best way to run a radio station but it happens and Spinitron supports it. In this case, the DJ who will be on tomorrow should create the playlist in advance. This avoids the whole problem. At 10:01AM, when Spinitron receives the recognition of the first spin, the playlist already exists and Spinitron uses it. This FAQ is about when there is no such playlist and Spinitron has to create one.

So there are two strategies to avoid the fuss:

  1. Don't let the situation arise: open a playlist before your time-slot. Do it a minute before, a day before, a week before – it doesn't matter. You can put spins in it or not – it doesn't matter.

    This is good practice in general. Take control by opening your playlist before Spinitron recognizes your first spin.

  2. If you're going to let Spinitron create the playlists, use the scheduling flexibility to remove ambiguity. Don't put multiple shows in a time-slot or multiple DJs on a show.

    If you can't avoid the ambiguity, insist that the DJs create playlists in advance.

If all of this fails and Spinitron creates a playlist for the wrong DJ, any user with editor or admin permission can reopen it for editing and change its title and/or owner.

Related FAQ: What about a show that's always co-hosted by a team?

Answer: Set the DJ Name for one of the DJ users to "Jeff and Drew" and assign only that DJ to the show.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment