Kendala yang sering di alami oleh Developer Bot telegram

Frustasi akibat harga mahalBanyak permasalahan yang di alami oleh penyedia jasa bot telegram. Permasalahan utama perihal harga, di indonesia bukanlah marketshare bot telegram cukup rendah. Banyak pelanggan yang tidak bisa membeli jasa, sementara itu bot telegram bukanlah sebuah aplikasi yang sangat di butuhkan. Bot telegram hanya sebuah software atau aplikasi mini berbasis chat, tidak terlalu di butuhkan, kecuali bagi perusahaan, namun perusahaan kebanyakan tidak menggunakan telegram, mereka menggunakan WhatsApp.

Di sisi lain, menngembangkan project bot telegram tidak lah mudah. Tingkat kompleksitas yang tinggi membuat hal ini sulit untuk di capai, mungkin di fikir hanya sebuah program cRUD sederhana. Ya jelasnya begitu, tapi telegram tidak memungkinkan untuk melakukan input lebih dari 1 data bersamaan. Mau tidak mau harus di input secara ber-urutan, rasanya rumit jika harus menulis program input urutan demi urutan.

Sebagai penyedia ingin di bayar dengan harga yang sesuai, tapi jangan lupa ada biaya thirparty yang tidak murah. Bot telegram membutuhkan hosting server, minimal sekelas VPS agar dapat menjalankan beberapa bahasa pemrograman pendukung. Hosting biasa tidak memberikan kelebihan, mereka hanya menyediakan satu bahasa dalam satu waktu.

Untuk membayar server, mau tidak mau harus beli VPS dengan harga yang paling minimal sukur bisa mendapat 50rb/bulan untuk harga. Jika harga server sebegitu mahal, berapa harga akhir yang harus di berikan pada konsumen. Jika harga tersebut di libatkan langsung, maka itu akan berdampak terhadap harga jasa akhir, dan membuat produk jadi tidak laku di pasaran karena kemahalan.

Karena tingkat mahalnya harga cloud server, banyak developer yang menjadikan project bot mereka sebagai opensource. Hosting repositori github menyimpan banyak sekali salinan code bot telegram yang dapat di install oleh siapa saja, asalkan mempunyai kemampuan dalam pengelolaan server. Seorang bahkan dapat melakukan deploying program bahkan hanya dengan mengikuti panduan saja.

Tapi untuk error dan bugs, jelas tidak ada support untuk itu. Tidak ada orang yang mau membantu menyelesaikan permasalahan terkait bot error dan tidak bisa di run pada layanan hosting server, semua harus di perbaiki oleh mereka sendiri. Memang di butuhkan kemampuan dalam bidang enginering agar memahami cara kerja software.

 

Kita sudah bekerja selama 3 tahun menjadi vendor penyedia jasa. Sukurlah, pengalaman selama 3 tahun tersebut membuahkan hasil, dari sebelumnya memang belum memahami dengan jelas terkait prinsip dan mekanisme kerja dari bot telegram. Bot telegram itu sangat mudah sekali untuk di buat, dokumentasi API mereka terbuka publik, banyak tutorial beredar di Youtube, source code beredar di stackoverflow.

Tapi logika program sulit untuk di selesaikan, terlebih lagi harus memahami lebih dalam mengenai API Telegram. Terkadang ketika kita mengembangkan program bot, membutuhkan library pustaka untuk mengelolah data. Pustaka pengelolah video, pengelolah gambar, hingga pembuat SSL. Setiap pustaka yang di gunakan mempunyai dokumentasi dan cara kerja masing-masing, ini menghabiskan banyak waktu..

Ketika kita membuat program bot berbasis python, pernah menemukan masalah. Oh kalau pakai python dengan sistem long poling, ternyata bot melambat ketika pengguna membludak. Mau tidak mau mencari alternatif lain, solusi satu-satunya adalah menggunakan webhook. Ini adalah pengalaman yang sangat berharga, masalah muncul seketika yaitu telegram API tidak menyediakan fitur yang lebih lengkap.

 

Bot dengan API tidak bisa mengirimkan file lebih dari 50MB untuk bot API, namun secara stream dengan server lokal bisa mengirimkan hingga 2GB. Ada dua cara yang berbeda, server lokal sangat mengonsumsi banyak sekali sumber daya, sementara server API kita hanya perlu mengalokasikan sebagian kecil sumber daya, pada dasarnya saya lebih suka membuat bot telegram sederhana dan minimalis.

Semua yang berhubungan dengan document media membutuhkan sumber daya yang tidak sedikit. Masalah sumber daya terkait erat dengan skalabilitas, jika satu proses saja membutuhkan komputasi yang tinggi, bagaiman untuk memproses lebih dari satu users. Telegram sangaat identik sekali dengan banyaknya users, setiap hari ada ratusan ribu user online di telegram.

Bot telegram file sharing adalah program bot telegram pertama kali yang saya teliti. Sumber kode untuk bot ini dapat di akses di github https://github.com/CodeXBotz/File-Sharing-Bot , Repositori tersebut sudah di banned oleh Heroku karena pernah terjadi installasi massal yang menyebabkan banyak pengguna membuat akun spam di Heroku.

Berdasarkan repositori tersebut, kita menemukan permasalahan terkait bot ini. Bot ini mengalami delay apabila digunakan oleh banyak orang, bot ini juga membutuhkan database mahal yaitu MongoDB. Codebase bot memisahkan antara bot server dengan server database, mereka mengizinkan orang untuk mendeploy ke layanan hosting gratis seperti Heroku, Koyeb, dan railway.

Untuk dapat menginstall program tersebut seorang bisa menggunakan hosting gratis yang terbatas, atau membeli dua sumber daya yang berbeda. Salah satu sumber daya adalah runtime untuk menjalankan python, dan juga harus membeli space MysQL berjenis MongoDB. Jelas akan mengeluarkan banyak sekali uang meskipun sumber kode nya gratis.

 

Permasalahan yang belum saya pecahkan adalah bagaimana cara membuat banyak bot telegram yang dapat di managed dengan baik.  Ini permasalahannya, menginstall bot telegram pada satu server yang sama akan mengalami kejadian yang mustahil. Misalnya satu server khusus menggunakan docker atau virtual environment untuk menjalankan bot. Bila salah satu program bermasalah maka untuk mengakses codebase program sangatlah rumit, belum lagi saya mengelolah banyak program.

Saya sepertinya membutukan seorang developer untuk membantu menangani masalah bugs error, dan menjaga server. Tapi karena bayaran rendah, semua terpaksa harus di kerjakan sendiri. Penghasilan sama sekali tidak mencukupi untuk menghire developer lain, karena terlalu fokus untuk mengerjakan dan memanteance bot. 

Jika dalam satu server tersebut bermasalah, maka semua program bot telegram di dalamnya akan mengalami permasalahan serius. Semua bot akan mati, tapi jika saya membeli VPS yang terpisah untuk menghosting bot telegram. Maka saya akan rugi, karena pelanggan belum tentu membayar tepat waktu, yang pada akhirnya kredit saya yang harus di kuras hingga menunggu kepastian apakah mereka akan lenanjutkan berlangganan atau tidak. Jika tidak maka kerugian akan terjadi.

  • Dev harus menagih kepada pelanggan yang membeli bot sebagai SaaS untuk biaya berlangganan. Tidak semua dari mereka langsung merespon.
  • Dev harus memperbaiki bot error yang di laporkan oleh pelanggan. Terkadang sulit mengerjakanya, apalagi bot pelanggan tetap running dan digunakan oleh ribuan users.
  • Dev harus mengerjakan project baru yang di order oleh pelanggan, butuh waktu dan fikiran.
  • Kualitas server indonesia sangat buruk, dipakai untuk bot telegram menghaislkan delay dan terkadang berhenti bekerja. Yang di permasalahkan cuma developer.
  • Harus membuat konten marketing, bagaimanapun penjualan harus terus berjalan seiring waktu agar mendapatkan kondisi finansial yang cukup.

 

Kita tahu mengalami masalah yang rumit dalam hal ini, masalahnya untuk membuat banyak program dapat berjalan, dan meminimalkan waktu kerja dan mencapai effisiensi yang tinggi. Maka dari itu di butuhkan program kerja untuk memfasilitasi semuanya, hingga netzku lahir untuk memfasilitasi semuanya.

Bot telegram yang di kembangkan di bangun menggunakan framework khusus. Dengan framework ini ia dapat di kontrol lewat satu panel manajemen, semua aktifitas dilakukan lewat remote server. Intinya begini, setiap ada project baru codebase akan di simpan dalam sebuah folder yang siap untuk di install.

Ketika program mau di install maka framework akan mencobanya, ia akan membuat sebuah lingkungan virtual atau bisa melakukan remot terhadap dokcer untuk menyiapkan semua pustaka yang di butuhkan. Dari proses awal penyiapan, pembuatan configurasi baru, hingga pada akhirnya mendaftarkan proses tersebut untuk membuat program bot menjadi online.

Prinsip kerja bot telegram

Pekerjaan di masa mendatang mungkin akan jadi sedikit menantang, semua codebase dari A sampai Z di buat oleh saya sendiri dengan tanpa meninggalkan dokumentasi sedikitpun. Jadi tantangan di masa depan adalah membuat dokumentasi tiap kode program yang di kembangkan.

Netzku.com bertindak sebagai core program yang meng-otomatisasi pembuatan instance baru, melakukan deploying program, melakukan proses otomatisasi pembayaran, semuanya harus berjalan secara otomatis dan terkontrol. Terkadang membuat instance / VPS bukan merupakan jalan terbaik untuk harga murah di kelas 30rb.

Oleh karena itu satu VPS di buat jadi beberapa program sekaligus, ini tidak akan menganggu karena setiap program menggunakan lingkungan virtual mereka sendiri. Satu program di buat khusus untuk dapat menjalankan lebih dari satu lingkungan virtual meskipun mereka bekerja dalams atu instance yang sama dan di rancang untuk tidak saling terpengaruhi.

Fungsi dari multiple adalah memungkinkan developer melakukan debugging dan pembaruhan fitur tanpa mempengaruhi kinerja bot secara keseluruhan. Pekerjaan ini membutuhkan effort yang besar, waktu yang lama, dan juga kemampuan. Saya harap pelanggan lebih menghargai tidak meremehakn profesi sebagai developer.

Saya sudah membantu banyak orang untuk memiliki bot telegram mereka sendiri dan berusaha mempertahankan agar harga tidak naik di tengah pemerintah memnaikan  harga pajak.