Halo Sahabat Indobot!
Kali ini, kita akan mencoba untuk membuat MP3 Player dengan aplikasi telegram. Bagaimana cara membuatnya? yuk kita simak.
Telegram adalah aplikasi yang berfungsi untuk berkomunikasi secara online baik secara personal maupun grup. Aplikasi ini juga memiliki bot yang dapat berfungsi untuk sistem IoT (Internet of Things). Bot ini berfungsi untuk pengiriman dan penerimaan pesan. Sehingga dapat digunakan untuk kontrol dan monitoring device melalui sistem IoT.
Untuk menghubungkan telegram dengan DFPlayer mini ini, kita membutuhkan device controller yang dapat mengkomunikasikan antara telegram dengan DF Player. DFPlayer mini adalah salah satu modul MP3 kecil yang mudah digunakan dengan langsung menghubungkannya ke speaker. DFPlayer mini dapat diisi dengan micro SD sebagai tempat penimpanan lagu yang akan kita putar nantinya.
Nah pada project ini, device controller yang akan kita gunakan adalah NodeMCU ESP8266. Simak langkah-langkah pembuatannya ya.
Alat dan Bahan
Alat dan bahan yang digunakan untuk project kita kali ini adalah sebagai berikut. Jangan sampai ada yang kelewat ya.
- laptop/PC yang terinstall Arduino IDE
- Library DFPlayer mini
- NodeMCU ESP8266 1
- DF Player mini module 1
- Speaker 1
- Micro SD (berisi beberapa lagu) 1
- Breadboard 1
- Kabel jumper secukupnya
Belajar Elektronika, Arduino, dan IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMO
Rangkaian
Susun device di atas menjadi rangkaian seperti berikut. Pastikan semua terhubung dengan baik.
Program
Tahap selanjutnya adalah penulisan program pada Arduino IDE. Buatlah program seperti berikut. Perhatikan keterangan (comment) untuk memahami program dengan baik.
Jangan lupa untuk memasukkan terlebih dahulu library Liquid Crystal, HCSR04, CTBot dan Arduino Json.
/* Program Menyalakan DF Player mini dengan telegram dibuat oleh Indobot */ #include "SoftwareSerial.h" #include "DFRobotDFPlayerMini.h" #include "CTBot.h" //Pendeklarasian Library CTBot myBot; SoftwareSerial mySoftwareSerial(D1, D2); //Pin D1 dan D2 TX dan RX untuk DFPlayer DFRobotDFPlayerMini myDFPlayer; int playNomor; TBMessage msg; String ssid = "*********"; //nama ssid wifi kalian String pass = "*********"; //password wifi kalian String token = "XXXX"; //token bot baru kalian const int id = 11111111111; //id telegram kalian void setup() { Serial.begin(9600); myBot.wifiConnect(ssid, pass); myBot.setTelegramToken(token); mySoftwareSerial.begin(9600); Serial.println(); Serial.println("DFPlayer Mini Demo"); Serial.println("Initializing DFPlayer..."); if (!myDFPlayer.begin(mySoftwareSerial)) { Serial.println("Mulai DFPlayer Mini"); while (true); } Serial.println(F("DFPlayer Mini Siap")); myDFPlayer.setTimeOut(500); myDFPlayer.volume(10); //----Set different EQ---- myDFPlayer.EQ(DFPLAYER_EQ_NORMAL); // myDFPlayer.EQ(DFPLAYER_EQ_POP); // myDFPlayer.EQ(DFPLAYER_EQ_ROCK); // myDFPlayer.EQ(DFPLAYER_EQ_JAZZ); // myDFPlayer.EQ(DFPLAYER_EQ_CLASSIC); // myDFPlayer.EQ(DFPLAYER_EQ_BASS); myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD); if (myBot.testConnection()) { Serial.println("Koneksi Bagus"); } else { Serial.println("Koneksi Jelek"); } myBot.sendMessage(msg.sender.id, (String)"Memutar Musik dengan Mengirim Berikut \n" + "kirimkan pesan >>> putar(nomor yang ingin di play) \n"+ "Maksimal 10 \n\n"+ "Matikan Musik >>> stop" ); } void loop() { delay(1000); //Jeda pembacaan 1000ms if (myBot.getNewMessage(msg)) { String a = msg.text; int b = a.indexOf("putar"); if ( b > -1) { playNomor = a.substring(b+1).toInt(); myDFPlayer.play(playNomor); myBot.sendMessage(msg.sender.id, (String)"Play Nomor"+playNomor); } if (msg.text.equalsIgnoreCase("stop")) { //Perintah dari telegram ke perangkat myDFPlayer.stop(); myBot.sendMessage(msg.sender.id, (String)"DFPLayer Dimatikan"); //Balasan dari perangkat ke Bot Telegram } else { myBot.sendMessage(msg.sender.id, (String)"Memutar Musik dengan Mengirim Berikut \n" + "kirimkan pesan >>> putar(nomor yang ingin di play) \n"+ "Maksimal 10 \n\n"+ "Matikan Musik >>> stop" ); } } } |
baca juga: Tutorial IoT Mengatur Maksimal Jumlah Pengunjung dengan Telegram
Untuk mendapatkan Token Bot dan ID telegram, kita dapat melakukan cara berikut.
- cari BotFather
- Buka BotFather > klik Start > ketik /newbot > beri nama bot > beri username bot > Simpan token yang diberikan untuk dimasukkan program nanti. Untuk masuk ke bot yang baru dibuat, bisa klik link yang diberikan pada bagian setelah “You will find it at …”, dan jika sudah masuk bisa ketik /start
Gambar pembuatan bot baru
Gambar token yang didapat
- Setelah itu diperlukan id telegram kita dengan cara : cari IDBot > klik Start > ketik /getid
- Maka token dan ID Telegram sudah kita dapatkan.
Masukkan nama hotspot, password hotspot, token, dan ID yang anda gunakan di String ssid = “**********”;
String pass = “**********”;
String token = “XXXXX”;
const int id = XXXXXX;
Upload program di atas, kemudian kita dapat mulai mencobanya dengan di awali ke telegram bot milik kita dan klik start.
Hasil dari project ini adalah kita dapat menyetel lagu sesuai urutan playlist. Jadi kita hanya perlu mengirimkan kata “putar(urutan playlist)”. Misalnya kita ingin menyetel lagu di playlist 1, kita hanya perlu mengirimkan pesan “putar1” dan seterusnya.
Bagaimana? tertarik untuk mencobanya? Yuk bisa dicoba dan modifikasi sendiri yaa.
Mau belajar elektronika dasar? Arduino? atau bahkan Internet of Things? Ikuti kursus online Indobot Academy!