Spotify-Chatbot / messages.py
sjw's picture
Update messages.py
6834512
SYSTEM_MESSAGE = """
You are Apollo, an AI music-player assistant, designed to provide a personalized and engaging listening experience through thoughtful interaction and intelligent tool usage.
Your Main Responsibilities:
1. **Play Music:** Utilize your specialized toolkit to fulfill music requests.
2. **Mood Monitoring:** Constantly gauge the user's mood and adapt the music accordingly. For example, if the mood shifts from 'Happy' to 'more upbeat,' select 'Energetic' music.
3. **Track and Artist Memory:** Be prepared to recall tracks and/or artists that the user has previously requested.
4. **Provide Guidance:** If the user appears indecisive or unsure about their selection, proactively offer suggestions based on their previous preferences or popular choices within the desired mood or genre.
5. **Seek Clarification:** If a user's request is ambiguous, don't hesitate to ask for more details.
"""
GENRE_LIST = [
'acoustic', 'afrobeat', 'alt-rock', 'alternative', 'ambient', 'anime',
'black-metal', 'bluegrass', 'blues', 'bossanova', 'brazil', 'breakbeat',
'british', 'cantopop', 'chicago-house', 'children', 'chill', 'classical',
'club', 'comedy', 'country', 'dance', 'dancehall', 'death-metal',
'deep-house', 'detroit-techno', 'disco', 'disney', 'drum-and-bass', 'dub',
'dubstep', 'edm', 'electro', 'electronic', 'emo', 'folk', 'forro', 'french',
'funk', 'garage', 'german', 'gospel', 'goth', 'grindcore', 'groove',
'grunge', 'guitar', 'happy', 'hard-rock', 'hardcore', 'hardstyle',
'heavy-metal', 'hip-hop', 'holidays', 'honky-tonk', 'house', 'idm',
'indian', 'indie', 'indie-pop', 'industrial', 'iranian', 'j-dance',
'j-idol', 'j-pop', 'j-rock', 'jazz', 'k-pop', 'kids', 'latin', 'latino',
'malay', 'mandopop', 'metal', 'metal-misc', 'metalcore', 'minimal-techno',
'movies', 'mpb', 'new-age', 'new-release', 'opera', 'pagode', 'party',
'philippines-opm', 'piano', 'pop', 'pop-film', 'post-dubstep', 'power-pop',
'progressive-house', 'psych-rock', 'punk', 'punk-rock', 'r-n-b',
'rainy-day', 'reggae', 'reggaeton', 'road-trip', 'rock', 'rock-n-roll',
'rockabilly', 'romance', 'sad', 'salsa', 'samba', 'sertanejo', 'show-tunes',
'singer-songwriter', 'ska', 'sleep', 'songwriter', 'soul', 'soundtracks',
'spanish', 'study', 'summer', 'swedish', 'synth-pop', 'tango', 'techno',
'trance', 'trip-hop', 'turkish', 'work-out', 'world-music'
]
HTML = """
<!DOCTYPE html>
<html lang="en">
<head>
<link href="https://fonts.googleapis.com/css2?family=Gruppo&display=swap" rel="stylesheet">
<style>
h1.no-shadow {
font-family: 'Gruppo', sans-serif;
text-shadow: none !important;
}
.hover-item:hover {
color: #161C32 !important;
}
.hover-item a:hover {
font-size: 105%;
}
a {
color: inherit !important;
text-decoration: none !important;
}
.container {
position: relative;
}
.apollo-gif {
position: absolute;
top: 70%;
right: 3%;
transform: translateY(-50%);
}
.video-link {
font-size: 14px;
color: red !important;
}
</style>
</head>
<body>
<div class="container" style="text-align: left; margin-top: 50px;">
<h1 style="color: #161C32; font-size: 56px;">Apollo<sup style="color: red;">AI</sup> Music Assistant <a class="video-link" href="https://www.youtube.com/watch?v=onFEQMJL7ac&t=1s">Quickstart Video πŸš€</a></h1>
<h2 style="color: #AC83F3; font-size: 26px;">Experience personalized, intelligent music interaction like never before</h2>
<ul style="list-style-type: none; padding: 12px 0; margin: 0;">
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">1</span> Open your Spotify Client</li>
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">2</span> Login to <a href="https://developer.spotify.com">Spotify Developer</a> website</li>
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">3</span> <a href="https://developer.spotify.com/dashboard">Dashboard</a> β†’ Create app</li>
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0; margin-bottom: -12px;"><span style="color: #AC83F3;">4</span> Set Redirect URI to <a href="https://stuartwaller.org">https://stuartwaller.org</a></li>
<li style="color: #808080; font-size: 20px; padding: 0; margin-top: -12px; text-indent: 28px;">The other fields can be anything</li>
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">5</span> Save β†’ Settings</li>
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">6</span> Copy your Spotify Client ID</li>
</ul>
<img src="file/apollo2.gif" class="apollo-gif" width='545'>
</div>
</body>
</html>
"""
COMMANDS_MSG = """
Welcome! Tell me your **mood** to help me select the best music for you
### <span style="color: #AC83F3;"> πŸ’Ώ Standard πŸ’Ώ</span>
- **Specific Song:** Play Passionfruit
- **Controls:** Queue, Pause, Resume, Skip
- **More Info:** Explain this song
- **Album:** Play the album from Barbie
- **Playlist:** Play my Shower playlist
### <span style="color: #AC83F3;"> πŸ’Ώ Mood-Based πŸ’Ώ</span>
- **Genre:** I'm happy, play country
- **Artist:** Play Migos hype songs
- **Recommendations:** I love Drake and house, recommend songs
- **Create Playlist:** Make a relaxing playlist of SZA-like songs
"""
ERROR_MSG = """
Unable to **connect to your Spotify** | Please ensure you followed the above steps correctly
Watch the Quickstart Video for assistance: https://www.youtube.com/watch?v=onFEQMJL7ac&t=1s
"""