Bot Telegram untuk Random Text Kalimat dan Angka (GAS II-04)

2 menit saja |

Materi ringan saja ya, meski sudah sering dibahas di group. Saya dokumentasikan, untuk membantu teman-teman yang baru bergabung dan baru belajar mendapatkan referensi cepat tanpa search di grup.

Pendahuluan

Saya pikir awalnya random message itu tidak perlu dibuatkan materinya. Namun, banyak yang nyari dan pada akhirnya menjadi pertanyaan yang berulang-ulang.

So, tidak ada salahnya saya dokumentasikan saja ya di sini.

Syntax Asli

Pada javascript, code sebenarnya untuk mendapatkan random adalah seperti ini :

var angkaMaksimal = 10;  // misalnya angka maksimalnya 10
var angkaAcak = Math.floor((Math.random()*angkaMaksimal));

Untuk text random, angkaAcak harus dimasukkan ke dalam index array nya.

Misal text Arraynya seperti berikut ini:

var daftarPesan = [
    "Apa kabarnya?",
    "Sudah makan?",
    "Kamu baik deh",
    "Sudah lama aku perhatiin kamu",
    "Kamu kapan mampir ke rumah?"
];

Kemudian masukkan ke dalam index array nya:

var pesan = daftarPesan[angkaAcak];

Hasil pesan, sudah dapat dikirim ke user.

Cara asli seperti ini lumayan bikin rumit dan susah dihapal.

Library

Pada library ver-2, sudah ditambahkan method untuk handle acak.

Pastikan versi yang dipakai minimal adalah 11 ya, atau angka terbesar dari yang ada.

Syntax:

tg.util.random(list) : text

tg.util.random(min, max) : number

Oke mari kita praktekkan pada bot..

Random Text Kalimat

User: !acak
Bot : Sudah makan?
User: !acak
Bot : Apa kabarnya?

... dst    

Langsung ke triggernya:

if (/^!acak$/i.exec(msg.text)) {
    
    // ... taruh di sini coding var list daftarPesan nya 

    // kemudian hasilkan pesan dari index, langsung dari Library
    var pesan = tg.util.random(daftarPesan);
    return tg.sendMsg(msg, pesan);
}

Tahukan peletakannya dimana? Jika belum tahu, cek saja di videonya ya.

Codenya sederhana, ya udah begitu saja! Trus, tinggal di test dan dijalankan. Jangan lupa di deploy new dulu ya.

FYI, berikut code lengkapnya:

if (/^!acak$/i.exec(msg.text)) {
    
   var daftarPesan = [
        "Apa kabarnya?",
        "Sudah makan?",
        "Kamu baik deh",
        "Sudah lama aku perhatiin kamu",
        "Kamu kapan mampir ke rumah?"
    ];

    var pesan = tg.util.random(daftarPesan);
    return tg.sendMsg(msg, pesan);
}

Random Number

Untuk acak angka, caranya juga gak jauh beda.

Simak codenya:

if (/^!angka$/i.exec(msg.text)) {
    var pesan = tg.util.random(1,100);
    return tg.sendMsg(msg, pesan);
}

Gambaran interaksinya kira-kira seperti inni:

User: !angka
Bot : 30
User: !angka
Bot : 78

... dst

Sederhana dan mudah bukan?

Video

Cuzz.. langsung saja simak.

Penutup

Demikian tambahan materi dengan bahasan yang singkat. Semoga bermanfaat yak..

Jika ada pertanyaan, saran atau masukkan silakan didiskusikan. Jika ingin live dan biasanya tanggapan juga lebih cepat, sangat disarankan bergabung pada group Telegram @botIndonesia.