MEMASANG TTMediaBot PADA UBUNTU 20.4 LTS

Penulis: rexya

Share this:

Hi infi friend. senang bisa menyapa Infi Friend kembali melalui tutorial ini.

Apakah pernah mendengar TTMediaBot? pastinya bagi Infi Friend pengguna aplikasi TeamTalk pernah mendengar atau bahkan pernah menggunakannya. Nah, di tulisan kali ini saya ingin membagikan tutorial bagaimana cara memasang TTMediaBot di OS linux ubuntu 20.4 LTS. Sebelum kita lanjut kepemasangan TTMediaBot, silahkan baca terlebih dahulu fungsi dan kegunaan TTMediaBot ini.

Fungsi dan Kegunaan

TTMediaBot adalah salah satu bot yang ditulis dengan pemograman python versi 3 oleh Amir Gumerov, Vladislav Kopylov, Beqa Gozalishvili, dan Kirill Belousov. Bot ini berfungsi untuk memutar audio di aplikasi TeamTalk dengan sumber audio yang diambil dari Youtube, VK, dan Yandex Music. Lebih lanjutnya, Infi Friend bisa membuka

laman github-nya

, selain itu Infi Friend juga bisa berkontribusi atau melaporkan bug kepada pengembang bot ini.

Saat ini TTMediaBot baru bisa dijalankan di OS windows, ubuntu, dan docker. Dipembahasan tutorial kali ini, kita akan fokus bagaimana memasang TTMediaBot di OS ubuntu 20.4 LTS. Untuk pemasangan di OS lainnya, silahkan tunggu tulisan berikutnya.

PERSIAPAN

  1. OS Ubuntu 20.4 LTS.
  2. pulseaudio
  3. libmpv1
  4. text editor seperti vi, nano, atau sejenisnya

Jika keempat component ini belum tersedia, silahkan pasang terlebih dahulu.

MEMBUAT USER DAN MEMASANG KOMPENEN YANG DIBUTUHKAN PADA PYTHON3

Buatlah user, dan atur user tersebut agar dapat menjalankan systemd dengan baik, ketikan beberapa perintah berikut pada terminal:

sudo adduser ttbot

loginctl enable-linger ttbot

Lakukan login pada user yang baru dibuat, ketikan perintah berikut pada terminal:

sudo su - ttbot

Jika login berhasil dilakukan, berikutnya mari lakukan clone dari Github TTMediaBot dengan mengetikan perintah berikut pada terminal:

git clone https://github.com/gumerov-amir/TTMediaBot.git

Saat melakukan clone, dibutuhkan waktu beberapa saat untuk menyelesaikan proses clone hingga selesai. Apabila proses clone sudah selesai, logout dari user ttbot. Selanjutnya, ketikan beberapa perintah di bawah untuk menginstall komponen pada python3, agar bot dapat memasang persyaratan yang dibutuhkan:

exit

cd /home/ttbot/TTMediaBot

sudo pip3 install -r requirements.txt

Tunggu beberapa saat sampai pemasangan komponen untuk python3 selesai, lalu lakukan login kembali ke user ttbot dan ketikan beberapa perintah berikut pada terminal:

sudo su - ttbot

cd /home/ttbot/TTMediaBot/tools

Ketikan perintah berikut pada terminal untuk mengunduh dan memasang TeamTalk SDK:

python3 ttsdk_downloader.py

Tunggu beberapa saat sampai pemasangan TeamTalk SDK selesai.

MENGUBAH DAN MENGATUR SERVICE FILE

Masih didalam user ttbot, mari kita ubah dan atur service file bawaan TTMediaBot, agar nantinya bisa berjalan dengan menggunakan systemd. Ketikan perintah berikut untuk membuat directory systemd pada user ttbot:

mkdir -p /home/ttbot/.config/systemd/user

Berikutnya mari kita edit service file TTMediaBot.service yang terletak di directory TTMediaBot/systemd/user, agar path-nya sesuai dengan user ttbot. Ketikan perintah berikut untuk membuka dan mengedit TTMediaBot.service:

nano /home/ttbot/TTMediaBot/systemd/user/TTMediaBot.service

"""[Unit]

Description=TTMediaBot

Requires=pulseaudio.service

[Service]

Type=simple

WorkingDirectory=/opt/TTMediaBot

ExecStart=/opt/TTMediaBot/TTMediaBot.sh -c /opt/TTMediaBot/config.json

Restart=on-failure

[Install]

WantedBy=default.target"""

Edit sedikit service file di atas pada bagian WorkingDirectory dan ExecStart, lihat contoh di bawah:

WorkingDirectory=/home/ttbot/TTMediaBot

ExecStart=/home/ttbot/TTMediaBot/TTMediaBot.sh -c /home/ttbot/TTMediaBot/config.json –cache /home/ttbot/TTMediaBot/TTMediaBotCache.dat –log /home/ttbot/TTMediaBot/TTMediaBot.log

Jika diperhatikan pada bagian ExecStart, ditambahkan 2 fungsi cache dan log, ini bertujuan agar TTMediaBot dapat membuat file cache dan log di directory TTMediaBot pada user ttbot.

Setelah selesai memperbaharui service file TTMediaBot.service silahkan lakukan save dan ketikan perintah berikut untuk meng-copy seluruh service file di TTMediaBot/systemd/user ke directory yang sudah Infi Friend buat sebelumnya:

cp -r /home/ttbot/TTMediaBot/systemd/user/* /home/ttbot/.config/systemd/user

MENGATUR INPUT/OUTPUT AUDIO DAN CONFIG FILE

Seperti yang disampaikan sebelumnya diatas, TTMediaBot adalah pemutar audio di TeamTalk yang membutuhkan input dan output audio. Di ubuntu 20.4 LTS kita akan menggunakan pulseaudio untuk mengatur input dan output-nya.

Langkah pertama yang harus dilakukan Infi Friend silahkan ganti nama config_default.json ke config.json dengan mengetikan perintah berikut:

mv /home/ttbot/TTMediaBot/config_default.json /home/ttbot/TTMediaBot/config.json

sekarang ketikan beberapa perintah berikut pada terminal untuk mengetahui angka input/output pada pulseaudio, yang nantinya angka tersebut akan ditulis pada config file:

systemctl --user enable pulseaudio && systemctl --user start pulseaudio

cd /home/ttbot/TTMediaBot

chmod +x TTMediaBot.sh

./TTMediaBot.sh --devices

Jika terjadi kesalahan saat menjalankan perintah ./TTMediaBot.sh --devices, ketikan perintah berikut pada terminal:

sed -i -e 's/r$//' TTMediaBot.sh

Perinsipnya input/output audio TTMediaBot kurang lebih output harus null audio output dan input harus pulse. Perhatikan baik-baik saat TTMediaBot ini mengeluarkan informasi output dan input, default-nya output ada di nomor 1, dan input ada di nomor 0.

berikutnya, silahkan buka config.json, lalu ganti angka output dan input-nya di sesuaikan dengan apa yang di tampilkan di output TTMediaBot.sh di atas, ketikan perintah berikut pada terminal:

nano config.json

Setelah config file terbuka, sesuaikan atur input/output, hostname, tcp/udp port, nickname, username, password, channel, dan channel password jika ada. Jangan lupa setelah aturan diubah, lakukan save.

TEST BOT

Sebelum Infi Friend menjalankan bot ini dengan systemd, mari kita lakukan test terlebih dahulu, apakah semua configurasi sudah sesuai atau belum. Ketikan perintah berikut pada terminal untuk menjalankan sementara TTMediaBot:

./TTMediaBot.sh

Apabila bot berhasil login ke server TeamTalk Infi Friend dan berjalan dengan normal, sekarang tekan ctrl+c untuk menutup bot, dan ketikan perintah berikut pada terminal untuk menjalankan bot melalui systemd:

systemctl --user enable TTMediaBot && systemctl --user start TTMediaBot

PENUTUP

Diakhir tulisan ini saya mau mengucapkan terimakasih banyak bagi Infi Friend yang sudah membaca tutorial ini sampai selesai. Jika ada langkah-langkah yang tidak sesuai dan terjadi error pada saat melakukan instalasi bot ini, pastikan Infi Friend melakukan langkah-langkahnya dengan teliti.

Informasi tambahan, bot ini juga bisa dijalankan lebih dari satu dan tidak perlu melakukan clone ulang, juga tidak perlu memasang ulang komponen pada python3. bagaimana caranya? yang tahu, saya tunggu komentarnya yaaaa.

Sampai jumpa di tulisan lainnya.

Jangan pernah berhenti untuk belajar! 😊

2 thoughts on “MEMASANG TTMediaBot PADA UBUNTU 20.4 LTS”

  1. Hello Mas. Saya ingin bertanya. saya sudah cari cari cara di google.. tapi tetap tidak ada hasil. barang kali admin tau mengatasi permasalahan ini. Setiap saya menghidupkan pulseaudio muncul seperti ini:: Failed to connect to bus: No such file or directory . itu bagai mana ya

    Reply
    • Untuk mengatasi problem ini, saat login ke user yang telah di buat, jangan melalui sudo su – , tapi silahkan logout dari terminal dan login kembali dengan user yang mau dipasang TTMediaBot, Karena saat menjalankan systemdctl –user tidak akan berjalan melalui sudo su – .

      Reply

Leave a Reply

error: Konten terlindungi !!