Project Update

March 18, 2022

Your Song of the Day

Daily music recommendation picks right in your inbox.

Project Dates: March 2022 (Ongoing)

Built with: Shortcuts, Google Sheets API, Spotify API, Apple Music API, Weatherkit

Your Song of the Day subscribers receive a daily personalized song recommendation in their inbox with custom weather reports based on their location.

During the COVID-19 lockdowns, many of my friends and I started exchanging music recommendations and creating playlists. After some time, I started sending friends a song per day right when I started my day. As more friends became interested in receiving my messages, it became increasingly difficult to send messages to everyone manually. I decided to find a way to automate this process and make the recommendation delivery more consistent.

The result was Your Song of the Day, running on a single iOS Shortcut. To date, the service counts over 100 subscribers around the world that receive daily messages each morning based on their timezone, with over 300 recommendations sent.

Getting the music data

The data backbone of Your Song of the Day is a Google Spreadsheet with the daily song recommendations and messages. Each recommendation includes commentary about the daily song and other current events. As Your Song expanded in Europe, I added a Greek version of the commentary copy to make the service available to friends and family back home.

Information about the daily recommendations song is entered in a Google Spreadsheet for easy retrieval.

Sending the daily messages

The main legwork for the service is done in Shortcuts. I chose to go the Shortcuts route because it is the easiest way to send iMessage and text messages en masse without any manual labor. Through many iterations, the Shortcut has evolved to include many features, but the core elements remain the same: a personalized message ("Good morning [name]!"), an emoji representation of the current weather forecast at the subscriber's location, and a description of each day's song recommendation, along with a link to listen to it.

When triggered, the shortcut pulls data about the day's song recommendation from the main spreadsheet. As the song recommendations are sent to subscribers in a range of timezones, the shortcut is triggered multiple times per day and includes conditionals determining which user group should be messaged based on the time of day. To account for times when messages are not sent at 8:15am in each timezone, the shortcut includes greeting language (Good morning, Good afternoon, Good evening) that gets picked based on the group's timezone and time of day when the message is sent.

While the majority of subscribers prefer receiving the recommendation with a Spotify URL, some subscribers are Apple Music or Youtube Music subscribers. Once a user group is locked in, the shortcut taps on the Spotify API to get artist and song information from the Spotify URL included in the main spreadsheet. The artist name and song title are used to run queries in the Apple Music and Youtube Music APIs and get links for the same song across platforms.

Another defining part of the service is the subtle but distinct weather conditions report in the form of an emoji. Subscribers give city/state location information and the shortcut uses WeatherKit calls to receive current conditions and translates them into a descriptive emoji. The weather emoji is incorporated in the greeting message, e.g. ⛅️ Good morning Zach! ⛅️.

The final step involves sending messages out to subscribers. A lot of personalization happens at this stage. First, the shortcut sends the English or Greek version of the daily message depending on the user's preference. Second, the shortcut supports email or iMessage/text message as channels of distribution. Tags on each contact's file determine how the message is delivered. Similar tags determine which song link is sent to each subscriber, based on their music streaming service preference.

From left to right: The shortcut stores data retrieved from Google Sheets and calculated variables in a dictionary format for easy access. Another dictionary maps all possible values returned by WeatherKit to an emoji. At the contact level, personalization includes links to the subscriber's preferred music service, message delivery in messages or over email, and two-language support (English and Greek).

Bringing it all together

Your Song of the Day has reached over 300 daily song recommendations, but design tweaks and new feature drops still happen. For example, many subscribers expressed the interest in having a playlist that includes all past song recommendations in their preferred music streaming service. To support this functionality, the shortcut calls the Apple Music and Spotify APIs to add songs to dedicated playlists. When the first batch of messages is delivered in Europe starting at 1:15am ET, the shortcut adds the daily song to the dedicated YSotD playlists in Apple Music and Spotify.

Over the past year of running Your Song of the Day, the subscriber base has steadily grown, and over 100 people currently receive the recommendations daily. Your Song now features thematics throughout the week, like Throwback Thursday, Release Friday, and Subscriber Sunday, where subscriber suggestions make it to the list. Still, a single shortcut handles the entirety of the service, with Shortcut automations calling the shortcut at specific times throughout the day, as the clock hits 8:15am across the globe.

Resources

Sign up page

Sign up page

View

View

Spotify back catalogue playlist

Spotify back catalogue playlist

View

View

Apple Music back catalogue playlist

Apple Music back catalogue playlist

View

View

Shortcut download link

Shortcut download link

View

View

Best of 2022 recap video

Best of 2022 recap video

View

View

©2024 Evangelos Kassos

©2024 Evangelos Kassos