Blog by Max Ammann

Party PI: Solves the issue of different music tastes!

At the company I work at we sometimes throw a party to celebrate the day! Unfortunately we have very different tastes of music. So solve that I setup a Raspberry PI so everyone can vote for their music. What could go wrong? :P

First step was to setup Mopidy on a Raspberry PI with pulseaudio or just alsa. As there are already a lot of tutorials available I’ll skip this one.

Next install Mopidy-Party and other extensions for music sources. You’ll probably want the Mopidy-Spotify to have a variety of music available. It does not make sense to just include your music! Even if you’d like to do that ;).

This will add a new entry to the landing page on http://raspberrypi:8080/ There is no limit on how many tracks you can add to the queue. There is only a minimum amount of votes defined to skip the current track. Even with the missing limit for adding it works pretty well!

This is a sample from my mopidy config:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
[audio]
#mixer = software
#mixer_volume =
#output = autoaudiosink
#buffer_time =

[mpd]
#enabled = true
hostname = ::
#port = 80
password =

[http]
enabled = true
hostname = ::
port = 8080
#static_dir =
#zeroconf = Mopidy HTTP server on $hostname
#allowed_origins =
#csrf_protection = true

[spotify]
username = <username>
password = <password>
client_id = <client_id> 
client_secret = <client_secret> 

[party]
enabled = true
votes_to_skip = 6

[moped]
enabled = false

[musicbox_webclient]
enabled = false

Make sure to disable any non-party web clients. Else your party guests will find the access to it. Especially when they are other engineers! To have this admin power myself I use mpd to control the playback. Not many people would run nmap to find this open port.

With about 15 guests a votes_to_skip count of 6 worked well. Make sure nobody uses multiple phones! Please note that in order to change that you need to restart Mopidy and will loose your current playlist.

Happy party!

Do you have Questions? Send an E-Mail to max@maxammann.org