Spotify, Raspberry Pi & Node.js

Beberapa saat yang lalu Spotify resmi masuk ke Indonesia, excited? Ya! bukan karena anda bisa subscribe via Alf*mart tapi karena dengan adanya Spotify setidaknya membantu lagu-lagu lokal untuk terdata di publik terutama lagu-lagu Jawa…,yang satu ini mungkin agak berasa personal 😁.
Seperti yang anda lihat pada cover tulisan ini kita bisa memakai layanan Spotify di Raspberry Pi. Ok…kenapa kok pake Raspberry Pi, bukannya sudah ada klien resmi dari Spotify untuk device Android ataupun gadget Apel tewal (baca: Apple) yang jauh lebih instan? Jawabannya adalah ini untuk keperluan Server Media. Lalu apa hubungannya dengan JavaScript dan IoT?…baca saja ok.
Perlu di ingat bahwa anda membutuhkan akun premium supaya bisa memakai layanan Spotify seperti pada tulisan berikut ini
Mopidy-Spotify
Mopidy merupakan server yang dibangun berdasarkan mpd, kalo anda pengguna GNU/LINUX pasti mengetahuinya. Seperti mpd, pada dasarnya mopidy akan men-scan seluruh media pada folder yang telah anda setting sbelumnya pada mopidy.conf. Untuk instalasi pada Raspberry Pi 2 silahkan ikuti langkah resmi di website
https://docs.mopidy.com/en/latest/installation/debian/#debian-install
dan perlu diingat jika memakai Debian Wheezy instalasi mopidy hanya mendukung instalasi dibawah versi 2 seperti berikut
sudo apt-get install mopidy=1.1.2–1
kemudian instal plugin yang menyebabkan mopidy bisa mengakses layanan Spotify, caranya yaitu dengan menginstal mopidy-spotify. Lagi lagi untuk Debian Wheezy instal versi plugin yang agak lama versinya
sudo apt-get install mopidy-spotify=2.3.1–0mopidy1
Jika semua berhasil edit konfigurasi mopidy (biasanya di ~/.config/mopidy/mopidy.conf) dan tambahkan pengaturan berikut
[spotify]
enabled = true
username =
password =
bitrate = 320
Anda bisa mendapatkan username dan password melalui link
http://www.spotify.com/account/set-device-password/
kemudian jalankan server mopidy di terminal dan kalau anda ingin menjalankan server pada saat startup, maaf…silahkan browsing 😁

Dari screenshot diatas dapat anda lihat bahwa server mpd berjalan pada default port 6600. Untuk pengetesan bisa di lakukan penginstalan klien mpd seperti ncmpcpp.
Komponist
Komponist merupakan klien cli untuk mpd yang ditulis memakai Node.js dan sangat sederhana pemakaiannya.
Misalnya jika anda ingin memainkan playlist tertentu yang ada di Spotify cukup dengan menge-load nama playlist yang anda inginkan dengan command mpd ‘load’. Pada dasarnya paket Komponist ini akan menjalankan setiap command ke mpd melalui perintah command() dan menangkap hasilnya melalui callback. Untuk perintah lengkap command dari mpd silahkan lihat di sini.
Update: Kalau anda hanya ingin memainkan musik tanpa ada hack sana sini, anda bisa menginstal aplikasi klien web untuk mopidy yang ternyata tersedia banyak disini.
IoT
Sebenarnya tidak ada implementasi khusus tentang IoT pada tulisan kali ini (sorry) hanya saja ada beberapa ide menarik seputar judul tulisan ini yaitu di internet of things penulis percaya bahwa IoT bertujuan untuk memudahkan user dalam melakukan sesuatu tanpa memerlukan banyak effort dan sudah tentu harus ada automasi syukur syukur ada A.I, misalnya dalm contoh sederhana bisa saja anda men-setting melalui mobile app pada saat jam-jam tertentu atau moment tertentu untuk memainkan playlist atau lagu yang spesifik…misalnya pas bangun tidur atau jika cuaca siang yang panas maka akan dimainkan playlist yang agak slow…make sense kan 😆.
Ok, sekian selamat bereksplorasi! Silahkan komen jika ada ide atau tambahan ataupun koreksi.