Pemrograman

Bahasa

Framework

Peralatan

Info

Menerapkan API Simsimi untuk Kendali Bot Telegram dengan Layanan Hook.io

– 09 September 2016
Simsimi bisa kita pinjam otaknya untuk dipakai di bot Telegram. Tapi, sayang sekali, kunci gratis (API Key Trial) untuk meminjam otak (API) Simsimi hanya berlaku selama 7 hari. Setelah itu, tidak bisa digunakan lagi. Selain kunci gratis, ada juga kunci berbayar yang bisa disewa sesuai kebutuhan.

Kali ini saya akan melakukan eksperimen API Simsimi untuk mengendalikan Bot Telegram yang sudah dibuat. Berikut ini gambaran cara Bot Telegram, Hook.io dan API Simsimi berkomunikasi.

Baca Juga:

Bahan-Bahan yang Dibutuhkan

  1. Token Bot Telegram (Cara mendapatkannya)
  2. Akun Hook.io (Daftar di sini)
  3. Kunci API Simsimi (Daftar di sini)

Membuat Service dan Variabel Lingkungan

Buatlah sebuah service pada Hook.io (klik di sini). Sebagai contoh, saya membuat sebuah service bernama iyan-chan.

Setelah itu, silahkan buat variabel lingkungan di https://hook.io/env. Variabel lingkungan berfungsi untuk menampung token bot.

Kode Kendali

Buka kembali service yang sudah dibuat. Silahkan ganti kode (hook source) dengan kode berikut ini.
module['exports'] = function iyanChanBot(hook) {
  
  
    var request = require('request');
    
    var simiUrl = 'http://sandbox.api.simsimi.com/request.p?key=API_KEY_SIMSIMI&lc=id&ft=1.0&text='+hook.params.message.text;

  
      request(simiUrl, function (error, response, body) {
      if (!error && response.statusCode == 200) {
         var data = JSON.parse(body);
        
         request
          .post('https://api.telegram.org/bot' + hook.env.iyan_chan_bot + '/sendMessage')
          .form({
                "chat_id": hook.params.message.chat.id,
                "text": data.response
        });
        
      }
    });
    
};
Fungsi utama dari kode di atas adalah menerima dan meminta request. Pertama kita akan menerima request dari bot, kemudian request tersebut diteruskan ke API Simsimi. Setelah mendapatkan balasan dari API simsimi, balasan tersebut kita kirim kembali ke bot.

Ada dua hal yang harus teman-teman ganti dalam kode di atas. Pertama API_KEY_SIMSIMI, silahkan diisi dengan kunci yang sudah didapatkan. Kedua, hook.env.iyan_chan_bot ganti dengan nama variabel lingkungan yang sudah dibuat.

Menghubungkan Bot dengan Hook.io 

Untuk menghubungkan bot dengan hook, silahkan susun URL-nya menjadi seperti ini:
https://api.telegram.org/bot<TOKEN>/setWebhook?url=https://hook.io/<hook-user>/<hook-name>
Silahkan diganti:
  • <TOKEN> dengan token bot anda
  • <hook-user> dengan username hook.io anda
  • <hook-name> dengan nama layanan/service hook yang anda buat
Setelah itu, silahkan buka URL tersebut melalui browser. Jika mendapatkan balasan seperti ini, maka bot berhasil dihubungkan dengan layanan hook.

Demo Percobaan


Kesimpulan

Nah, itu dia cara menerapkan API Simsimi untuk kendali Bot Telegram. Pada dasarnya hanya meneruskan request ke API Simsimi dan mengembalikan lagi ke Bot.

No comments :

Post a Comment