Cara Membuat Bot Whatsapp Dengan Python dan Chat-API 2022

Cara Membuat Bot Whatsapp Dengan Python Menggunakan Chat-API- Hallo sobat sekalian apakah kalian sedang bingung bagaimana cara membuat bot WA dengan python? Apakah ada cara untuk membuat sebuah bot Whatsapp menggunakan python?

Yup tepat sekali karena pada kesempatan kali ini, postingan yang bakal membahas secara detail tentang cara membuat bot wa dengan menggunakan python yang sederhana dan mudah.

Dan jika sebelumnya juga mimin telah menuliskan tutorial Cara membuat bot Whatsapp dengan Node JS yang dapat kalian baca nantinya serta Cara Membuat BOT whatsapp dengan Termux dan Cara Mendapatkan API WhatsApp Bisnis.

Cara Membuat Bot Whatsapp Dengan Python dan Chat-API 2022

Cara Membuat Bot Whatsapp Dengan Python dan Chat-API 2022

Dengan perkembangan zaman dunia digital terutama dalam bisnis membuat persaingan antara penjual menjadi sengit terutama dalam hal peningkatan kualitas pelayanan terhadap konsumen.

Adapun yang dapat menjadi faktor pendukung untuk pelayanan prima terhadap konsumen adalah dengan memberikan pelayanan 24 jam full yang dibantu dengan sebuah teknologi canggih yakni Bot Whatsapp.

Bot Whatsapp ini dapat dimanfaatkan untuk pelayanan terbaik 24 jam kepada konsumen sehingga audiens atau pelanggan tetap loyal terhadap bisnis kita dan dengan sendirinya bisnis semakin melegit sukses.

Lalu pertanyaannya bagaimana cara membuat bot whatsapp dengan python? Tenang, kamu dapat membuat bot wa sendiri dengan menggunakan pyhton dan Chat-API dengan mudah dan sederhana, simak terus artikelnya.

Cara Membuat Bot WA Menggunakan Python

Nah untuk membuat sebuat bot wa menggunakan Python, ada beberapa langkah yang harus sobat digifycloud.com lakukan, seperti pada penjelasan berikut ini dibawah dengan catatan bahwa Untuk membuat bot wa berfungsi dengan baik, diharapkan WA Android dan WA Web tetap aktif.

1. Koneksikan Akun Whatsapp dengan Chat-API

Supaya bisa mengakses layanan Bot, sobat wajib mengkoneksikan akun whatsapp dengan Chat-API dnegan cara sebagai berikut:
  • Silahkan sobat membuat akun baru di web Chat-API
  • Jika sudah otomatis website bakal memberikan QR Code untuk akun sobat
  • Lalu, lakukan scan QR Code dengan cara Settings => WhatsApp Web => Scan the QR code
Selanjutnya sobat butuh sebuah URL WebHook adalah tautan ke mana data JSON yang berisi informasi tentang pesan masuk atau notifikasi akan dikirim menggunakan metode POST.

Sobat digifycloud.com dapat menggunakan server menggunakan microframework FLASK. Server FLASK memungkinkan sobat dengan mudah menanggapi permintaan yang masuk dan menjalankan bot wa ini.

2. Membuat Perintah Bot Whatsapp File Python

Selanjutnya adalah silahkan buat sebuah file python dengan nama wabot.py. Dalam membuat Bot Whatsapp ini, sobat membutuhkan library json, request, dan datetime yang memiliki fungsi berbeda-beda sebagai berikut:

Library JSON berfungsi sebagai penyimpan data dari server
Library Request berfungsi sebagai pengakses API website
Library Datetime berfungsi sebagai operator yang berhubungan dengan waktu

Adapun Perintah Bot Whatsapp file python baru yakni sebagai berikut
import json 
import requests 
import datetime
Kemudian kita akan buat kelas WA Bot. WA Bot secara otomatis bakalan menerima data JSON yang berisi informasi pesan masuk
class WABot():
def __init__(self, json):
    self.json = json
    self.dict_messages = json['messages']
    self.APIUrl = 'https://eu41.chat-api.com/instance12345/'
    self.token = 'abcdefg'

Untuk melihat tampilan JSON yang diterima, Anda dapat masuk ke bagian Pengujian yang mudah digunakan , yang tersedia di kabinet Anda. Anda juga dapat menguji permintaan WebHook di dalamnya.

Di bagian ini, kami menetapkan nilai ke atribut kelas. Dict_messages – Kamus yang berisi informasi dari pesan dalam file JSON yang telah kami terima.

self.json = json
self.dict_messages = json['messages']

Anda dapat melihat struktur JSON di bagian pengujian item "Periksa WebHook". Diperlukan untuk menjalankan pemeriksaan dan mengirim pesan ke obrolan WhatsApp Anda. Anda akan melihat JSON dikirim ke WebHook di layar.

Cara Membuat Bot Whatsapp Dengan Python dan Chat-API 2022

self.APIUrl = 'https://eu41.chat-api.com/instance12345/'
self.token = 'abcdefg'

Anda harus mengirimkan APIUrl dan data token Anda, dan sobat akan menggunakan untuk membuat permintaan ke API.

3. Mendapatkan Fungsi Bot WA

Kemudian untuk sobat bisa mendapatkan service-api, sobat wajib mengirim request. Fungsi dari send-request bakal menerima 2 parameter yaitu method dan data. 

  • Method ini berisikan jenis method dengan fungsi (GET/POST), sedangkan 
  • Data berisikan informasi pesan yang berbentuk format JSON. 

Mengirim permintaan

Dengan fungsi send_request ini pasti akan me-return informasi chat WA. Karena perlu mengirim permintaan ke API untuk menyelesaikan sesuatu. Sobat membuat fungsi untuk menghasilkan permintaan dan mengirimkannya tergantung pada parameter yang kita miliki. Silakan merujuk ke dokumentasi

def send_requests(self, method, data):
url = f"{self.APIUrl}{method}?token={self.token}"
headers = {'Content-type': 'application/json'}
answer = requests.post(url, data=json.dumps(data), headers=headers)
return answer.json()

Pada tahap ini, kita akan membuat string permintaan ke API.

url = f"{self.APIUrl}{method}?token={self.token}"

Kemudian kita harus mendefinisikan header Content-Type dan menandainya sebagai Application/JSON karena kita akan selalu mengirimkan data kita dalam format JSON.

headers = {'Content-type': 'application/json'}

Sekarang kami membuat permintaan lengkap dengan request.post dan mengunggah data kami ke server API. Json.dump(data) – ini membuat kamus data kita bersambung ke dalam format JSON.

answer = requests.post(url, data=json.dumps(data), headers=headers)
return answer.json()

Ini mengembalikan fungsi respons server dalam format JSON.

Mengirim pesan

Kemudian, kita akan membuat fungsi untuk mengirim pesan balasan. Hal ini send_request yang memiliki fungsi dua parameter yakni chatID – ID pesan, dan text-isi pesan. Untuk fungsi ini, sobat membutuhkan dictionary dalam memecah chat ID dan text yang bakal dikirimkan.
def send_message(self, chatID, text):
data = {"chatID" : chatID,
"body" : text}
answer = self.send_requests('sendMessage', data)
return answer

Sobat sedang membuat kamus data (dictionary), yang berisikan “chatId” — ID, ke mana pesan dan dataset 'body' dengan teks yang akan perlukan untuk dikirim.

data = {"chatId" : chatId,
"body" : text}

Selanjutnya, kita akan mengirim data kita ke metode yang kita tulis di langkah sebelumnya.

answer = self.send_requests('sendMessage', data)
return answer

Untuk mengirim pesan ke Chat API digunakan metode “sendMessage”, jadi kami mengirimkannya ke fungsi sebagai parameter serta kamus data kami. Dan kemudian kami mengembalikan respons server.

Selamat datang

Metode selamat datang akan dipanggil dengan perintah "hi" dari bot serta dengan memasukkan perintah yang tidak ada.

chatId – ID obrolan tempat pesan harus dikirim.  noWelcome – Variabel tipe Boolean yang menentukan teks yang akan dikirim ke obrolan: daftar selamat datang atau perintah. Ini adalah False secara default.

Dengan membuat welcome messages sebagai pesan pembuka untuk setiap pengguna yang masuk. Contohnya ketika menawarkan barang atau produk yang memberikan informasi jelas.

def welcome(self,chatID, noWelcome = False):
welcome_string = ''
if (noWelcome == False):
welcome_string = "Selamat Datang Di Toko ABC \n"
else:
welcome_string = """Perintah tidak dikenali
Commands:
1. brosur [format] - Dapatkan Produk, format yang tersedia: doc/jpg/png/pdf
2. alamat- Tampilkan alamat toko anda
return self.send_message(chatID, welcome_string)

Auto-Reply

Selanjutnya, buat auto-reply untuk alamat dan informasi lainnya yang sesuai dengan toko anda

def alamat(self, chatID):
data = {
"lat" : '51.51916',
"lng" : '-0.139214',
"address" :'Toko ABC \nJalan Plamongan Indah Blok E2 No 17',
"chatId" : chatID
}
answer = self.send_requests('sendLocation', data)
return answer

Proses Pesan Masuk

Kemudian yang terakhir adalah dengan membuat fungsi untuk memproses pesan yang masuk dari user

def processing(self):
if self.dict_messages != []:
for message in self.dict_messages:
text = message['body'].split()
if not message['fromMe']:
id = message['chatId']
if text[0].lower() == 'brosur':
return self.brosur(id, text[1])
elif text[0].lower() == 'geo':
return self.alamat(id)
else:
return self.welcome(id, True)
else: return 'Perintah Tidak Valid'

Supaya berjalan dengan baik dan benar, silahkan sobat sekalian mengganti token dengan token yang dari akun kalian dengan menklik disini Token Chat API

4. Membuat Server Database

Selanjutnya adalah untuk cara membuat bot whatsapp adalah dengan membuat server. Dalam hal ini, sobat bakalan menggunakan framework Flask. Silahkan buat app.py dan kemudian tuliskan kode script berikut dibawah:

from flask import Flask, request, jsonify
from wabot import WABot
import json
app = Flask(name)
@app.route('/', methods=['POST'])
def home():
if request.method == 'POST':
bot = WABot(request.json)
return bot.processing()
if(name) == 'main':
app.run()

Akhir Kata

Nah telah selesai Cara Membuat Bot Whatsapp Dengan Python dan Chat-API 2022 dan siap digunakan. Sobat digifycloud cukup upload source code ini ke hosting milik kalian dengan menamai domain kamu dengan nama webhook.

Semoga tutorial cara membuat Bot WA Dengan Python dan Chat-API bermanfaat untuk kita semua. Jika seadainya ingin melakukan hal yang lebih baik silahkan mengakses kode sumber lengkap dengan mengklik tautan ke GitHub whatsapp-python-bot 

Bot WhatsApp