## WhatsApp Bot in Hadith Search Using The Full-text Indexes Method and Text Mining
1 Muchlis
1 Program Studi Teknik Informatika, STMIK Antar Bangsa Email: muchlis.re@gmail.com

## Abstract
The WhatsApp application is now one of the most widely used media by all circles, from school children, professionals and even religious teachers use it. The ability of WhatsApp can be used by many fields in social life, such as phone calls, chats, groups and others. Because people are now accustomed to using WhatsApp, it can also be used to convey knowledge such as about hadith searches which are usually done by people who need information or knowledge about certain hadiths. This WhatsApp application will display the search results made by the searcher through the message sent. The message sent to this special number sends a word or several words in the message which will be processed by the system via  the  Restful  API  to  the  database.  This  system  provides  a  random  response  to  search  results  by displaying how many hadiths are related to the search.
Keywords: Whatsapp, Restful, Hadits

## 1. PENDAHULUAN
Agama  Islam  adalah  agama  terbesar  di  Indonesia  yaitu  sebanyak  87.20%  dari  populasi Indonesia, bahkan terbesar di dunia dengan 12.7% populasi penduduk dunia[1]. Terdapat dua sumber utama  dalam  ajaran  agama  islam,  yaitu  Qur’an  dan  Hadits,  hadits  merupakan  segala  sesuatu  yang bersumber dari Nabi Muhammad, baik berupa perkataan, perbuatan, taqrir, maupun sifat beliau yang berkaitan  dengan  hukum  syara'  dan  ketetapannya[2].  Hadits  menjadi  dasar  agama  Islam  setelah  Al- Qur’an, sehingga banyak masyarakat yang beragama Islam mencari dan mempelajari hadits. Umumnya masyarakat mencari informasi dan mempelajari hadits melalui kitab-kitab atau buku cetak.
Seiring  dengan  perkembangan  pembelajaran,  ilmu  pengetahuan,  teknologi  informasi  dan komunikasi di Indonesia yang menjarah ke berbagai aspek kultur dan budaya masyarakat, telah banyak menjalar  di  segala  bidang  kehidupan.  Salah  satunya  pada  pendidikan,  perubahan  pola  pembelajaran dalam  menunjang  karakter  religious  peserta  didik,  karena  dobrakan  inovasi  pembelajaran  dimasa darurat covid-19.
Tentu hal demikian banyak berdampak terhadap perkembangan nilai-nilai karakter kecakapan masyarakat  dalam  masa  pembelajarannya,  salah  satunya  dalam  mempelajari  ilmu  hadits  di  era pendidikan  virtual  pada  pembelajaran  Hadits,  dimana  dahulu  kita  harus  berangkat  ke  sekolah  atau majelis ta’lim untuk menyimak pembelajaran Al-Qur’an dan Hadits, tetapi kini para para guru atau ustadz  disekolah  mendatangi  kita  melalui  smartphone  yang  dimiliki  peserta  didik  karena  anjuran pemerintah  untuk  belajar  dirumah  peserta  didik  bisa belajar  pembelajaran  Al-  Qur’an  dan  Hadits  di
mana saja, saat dirumah saja sambil rebahan, terjebak macet di pasar, menunggu antrian di  halte bus dan dimanapun, hal ini merupakan trend aktivitas belajar yang tampak biasa dikalangan masyarakat pendidikan  saat  ini  tetapi  begitu  besar  dampaknya  terutama  pada  pendidikan  karakter  pada  peserta didik, sehingga tidak mudah guru menilai nilai-nilai karakter mereka dengan kondisi seperti ini.
Aplikasi obrolan Whatsapp adalah salah satu aplikasi yang popular digunakan dimasyarakat sekarang ini, dari mulai obrolan biasa, media pembelajaran bahkan sampai pelayanan disegala bidang. Lebih dari 2 miliar orang di lebih dari 180 negara menggunakan WhatsApp[3]. Aplikasi Whatsapp ini memiliki kemudahan dimata masyarakat karena banyak dimanfaatkan diberbagai layanan. Oleh sebab itu,  aplikasi  ini  juga  akan  dimanfaatkan  dalam  penelitian  ini  untuk  masyarakat  muslim  dapat mendapatkan informasi tentang hadits-hadits yang sesuai dengan mereka perlukan. Layaknya obrolan biasa, masyarakat dapat mengirimkan pesan dan mendapatkan balasan informasi tentang haditsseperti apa yang mereka harapkan, seperti teks hadits dan terjemahannya.
Penelitian  di  Ghana  berusaha  mengdentifikasi  secara  empiris  dampak  Whatsapp  terhadap kinerja mahasiswa dari perspektif mahasiswa. Untuk mencapai hal ini, 50 mahasiswa dari 5 perguruan tinggi  diwawancarai  dan  500  kuisioner  diberikan  kepada  mahasiswa  dengan  Lembaga  yang  sama. Penelitian tersebut mengungkapkan bahwa, whatsapp alih-alih membuat komunikasi lebih mudah dan lebih cepat sehingga meningkatkan aliran informasi dan berbagi ide yang efektif di antara siswa, malah berdampak  negatif  pada  kinerja  siswa  tersier  di  Ghana[4].  Studi  tersebut  antara  lain  mengungkap whatsapp membutuhkan banyak waktu waktu belajar siswa, mengakibatkan masalah terkait penundaan, merusak  ejaan  mahasiswa  dan  konstruksi  tata  bahasa  kalimat,  menyebabkan  kurangnya  konsentrasi selama kuliah, mengakibatkan kesulitan dalam menyeimbangkan aktivitas online.
Salah satu sekolah tingkat pertama di Pekanbaru memanfaatkan aplikasi perpesanan Whatsapp untuk melakukan absensi[5]. Aplikasi ini menggunakan bahasa pemprograman PHP dengan database MySql, dalam perancangan sistemnya menggunakan metode incremental, yaitu pengembang memiliki turnover tinggi sehingg tidak memerlukan tahapan lain selesai. Dalam pengujian digunakan gap analisis dan menghasilkan sistem absensi ini sesuai dengan keinginan pengguna.
Whatsapp  juga  digunakan  dalam  asistensi  karyawan  dengan  aplikasi  obrolan  langsungnya. Dalam penelitian tersebut whatsapp digunakan untuk melakukan chat dengan departemen HRD untuk keperluan  pengajuan  cuti  dan  layanan  lainnya.  Sistem  ini  dibangun  menggunakan  pemprograman VB.Net dan ASP.Net dengan sqlserver sebagai database nya[6].
Dalam  penelitian  lain,  whatsapp  digunakan  untuk  menyampaikan  data  statistik  covid-19. Aplikasi ini memanfaatkan API kawalcorona sebagai data statistik COVID-19 di Indonesia dan flask sebagai pondasi kerangka kerja program chatbot serta MySQL sebagai penyimpanan database COVID- 19[7]. Bot Whatsapp ini memanfaatkan API Whatsapp resmi dari penyedia layanan, yaitu Twilio.
Dalam  jurnal  lain,  berdasarkan  kajian  pembahasan  telaah  guru  Al-Qur’an  Hadits  dalam mengembangkan kemampuan membaca Al-Qur’an melalui whatsapp grup di Madrasah Aliyah Negeri 2 Malang yang telah disebutkan maka dapat disimpulkan sebagai berikut, pembelajaran guru sebagai: perencanaan, pelaksanaan, dan evaluasi pengajaran membaca Al-Qur’an. Kendala dan solusi guru Al- Qur’an dan Hadits dalam mengembangkan kemampuan membaca Al-Qur’an melalui whatsaap grub: a)Kurangnya  nilai  kebarokahan,  b)Beberapa  adab  yang  kurang  diperhatikan  dalam  membaca  Al- Qur’an, c)Kondisi & latar belakang keluarga yang tidak membiasakan membaca, d)Keterbatasan dalam penggunaan media dan perangkat kuota internet, e)Tidak disiplin dan kurang memperhatikan materi pelajaran yang disampaikan, f)Keseimbangan mental peserta didik dalam belajar g) tidak terbiasa akan membaca  dan  menulis  AL-Qur’an.  Solusi  guru  apabila  terdapat  kendala  terhadap  pembelajarn  yang disampaikan:  a)Fasilitas  bantuan  kuota  internet  atau  melalui  kartu  perdana  oleh  madrasah,  b)guru memberikan  kemudahan  untuk  setoran  bacaan  pada  jam  luring,  c)guru  berkomunikasi  dengan  wali kelas, guru BK, dan orang tua [8].
Studi lain tentang penerapan model jigsaw learning melalui WhatsApp Group bisa dijadikan alternatif dalam pembelajaran Quran Hadits kelas V dimana hal ini sangat sesuai dengan kompetensi dasar  dan  teori  yang  tertuang  dalam  pembelajaran  kooperatif  tipe  jigsaw.  Penggunaan  model pembelajaran  ini  mampu  meningkatkan  keterampilan  berbicara  dan  pemahaman  peserta  didik  pada materi Surah Al-Humazah. Walaupun demikian dari penerapan tersebut masih ada yang memerlukan penyempurnaan[9].

## 2. METODE
Whatsapp  bot  ini  dibuat  menggunakan  beberapa  bahasa  pemprograman  dengan  menerapkan restfull  API .  Desain  aplikasi  ini  berupa  interface  frontend  dilakukan  melalui  aplikasi  perpesanan Whatsapp yang dikirimkan ke nomor Whatsapp lainnya yg dihubungkan dengan database. Ketika kata kunci  diterima  oleh  server,  makan  server  akan  mencari  hadits  dari  database  yang  sesuai  dengan pencarian melalui pesan yang diterima.
2.1. Full-text indexes
Pencarian  didalam  database  menggunakan  metode  full-text  indexes,  Full-text  indexes menyediakan pencarian substring cepat pada koleksi text yang besar[10]. Full-text indexes memerlukan indeks untuk memungkinkan akses cepat ke dokumen berdasarkan kontennya[11]. Fitur pencarian teks lengkap SQL Server memanfaatkan metode dan infrastruktur akses pencarian teks lengkap dasar yang sama yang digunakan dalam produk Microsoft lainnya, termasuk Exchange, Sharepoint Portal Server, dan Layanan Pengindeksan yang mendukung pencarian teks lengkap melalui data yang dihosting sistem file.  Pendekatan  ini  memiliki  beberapa  keuntungan,  yang  paling  signifikan  adalah  1)  semantik pencarian teks lengkap umum di seluruh data yang disimpan dalam tabel relasional, sistem email, data web  host,  dan  data  penduduk  sistem  file,  dan  2)  leverage  metode  akses  pencarian  teks  lengkap  dan investasi infrastruktur di banyak produk pelengkap[12].
Pencarian di [12] banyak digunakan di aplikasi internal dan juga file-file yang di unggah ke server.  Sementara  indeks  clustered  dan  non-clustered  reguler  memberi  kita  kemampuan  untuk mengindeks sebagian besar tipe data kolom, sayangnya mereka tidak didukung untuk tipe data objek besar (LOB) mana pun. Namun full-text index dapat dibuat pada kolom tipe data LOB seperti TEXT , VARCHAR(MAX) , IMAGE, VARBINARY(MAX) . Tanpa fungsi ini, kueri apa pun yang mereferensikan kolom yang ditentukan dengan tipe data LOB akan memerlukan pemindaian penuh.
Gambar  2. Pencarian dengan full-text indeks dengan tidak memindai seluruh tabel

## 2.2. Persiapan Database
2.2.1. Database Hadits
Tabel 1 berikut ini adalah tabel yang menyimpan kumpulan hadits beserta terjemahnya.
Tabel 1. Tabel Hadits Kolom Tipe Panjang Kunci id int 11 ya nama_kitab varchar 250 nomor_kitab int 11 nass_kitab longtext

## terjemah_kitab longtext
Kolom nama_kitab pada tabel 1 berisi nama-nama kitab yang telah dirubah menjadi slug tanpa spasi.  Kolom  nomor_kitab  digunakan  nomor  urut  kitab  di  database,  untuk  nanti  digunakan  ketika pencarian  berdasarkan  nama  kitab.  Kolom  nass_kitab  dan  terjemah_kitab  digunakan  tipe  longtext, karena isi bisa lebih besar.
2.2.2. Konfigurasi Full-text Indexes
Dari tabel 1, kolom yang akan di indeks adalah kolom yang mejadi sumber pencarian. Kolom terjemah_kitab merupakan kolom yang akan dijadikan sumber pencarian, berikut ini perintah singkat untuk mengindeks kolom terjemah_kitab dengan full-text index.
1. mysql > CREATE TABLE tabel_isi_kitab ( 2. -> id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY ,
3. -> nama_kitab VARCHAR ( 250 ), 4. -> nomor_kitab INT ( 11 ), 5. -> nass_kitab LONGTEXT ,
6. -> terjemah_kitab LONGTEXT , 7. -> FULLTEXT ( terjemah_kitab ) 8. -> ); 9.

## 2.3. Webhook
Webhook adalah konsep API yang semakin populer [13]. Webhook juga disebut web callback atau HTTP push API , adalah cara aplikasi menyediakan informasi waktu nyata kepada aplikasi lain. Webhook mengirimkan  data  ke  aplikasi  lain  saat  terjadi.  Tidak  seperti API biasa  dimana  perlu melakukan polling data  dengan  sangat  sering  untuk  mendapatkannya  secara real-time .  Ini  membuat webhook jauh lebih efisien bagi penyedia dan konsumen.
Berikut  ini  adalah payload yang  dikirimkan  melalui webhook ketika  pesan  diterima  API Whatsapp yang dijalankan menggunakan nodejs .
Gambar  3 Proses webhook
Pada gambar 3, data yang dikirimkan oleh webhook adalah data pesan yang diterima oleh API Whatsapp.
1. { 2. "from" : "628571xxxxxx@c.us" , 3. "message" : "niat puasa"
4. } 5.

## 2.4. Bot Whatsapp
Bot  Whatsapp ini  akan  mengirimkan  balasan  dari  data  yang  dikirimkan webhook .  Data  yang diterima dari webhook di rubah menjadi array , array ini dimasukan kedalam query pencarian dengan metode full - text .  Jika query memberikan  hasil  lebih  dari  1  baris,  maka  baris  teratas  yang  akan dikirimkan ke nomor whatsapp yang dikirimkan dari webhook .
Chatbots adalah  program  komputer  yang  berinteraksi  dengan  pengguna  menggunakan  bahasa alami[14].  Namun,  sistem  chatbot  tidak  hanya  dibangun  untuk  meniru  percakapan  manusia,  dan menghibur  pengguna.  Dalam  makalah  ini,  kami  menyelidiki  aplikasi  lain  di  mana  chatbots  dapat berguna seperti pendidikan, pencarian informasi, bisnis, dan e-commerce.
Dalam penelitian ini, bot Whatsapp akan mengirimkan hadits yang telah ditemukan berdasarkan pencarian dari pesan yang dikirimkan oleh pengguna.

## Gambar  4 proses pencarian kata kunci
Dari  gambar  4  dapat  dilihat  bahwa,  pesan  yang  diterima  dikaukan pre-posessing untuk mendapatkan hasil yang lebih sesuai dengan yang di harapkan oleh pengguna. Data hasil pre-posessing adalah array text dari pesan yang dikirimkan.

## 2.4.1. Tokenization
Tokenization adalah  proses  memecah  aliran  teks  menjadi  kata,  frasa,  simbol,  atau  elemen bermakna  lainnya  yang  disebut  token.  Tujuan  dari  tokenization  adalah  eksplorasi  kata-kata  dalam sebuah  kalimat.  Daftar  token  menjadi  input  untuk  diproses  lebih  lanjut  seperti  parsing  atau  text mining[15].

## 2.4.2. Stopword
Banyak kata dalam dokumen atau kalimat yang sangat sering muncul tetapi pada dasarnya tidak berarti  karena  digunakan  untuk  menggabungkan  kata-kata  dalam  sebuah  kalimat.  Secara  umum dipahami  bahwa stopwords tidak  berkontribusi  pada  konteks  atau  isi  dokumen  tekstual.  Karena frekuensi  kemunculannya  yang  tinggi,  kehadirannya  dalam  prosesing  text  menjadi  kendala  dalam memahami isi kalimat[15].
2.4.3. Stemming
Stemming adalah proses menggabungkan bentuk varian dari sebuah kata menjadi representasi umum,  batang.  Misalnya,  kata-kata:  "berpuasa",  "puasanya"  semuanya  dapat  direduksi  menjadi representasi umum "puasa". Ini adalah prosedur yang banyak digunakan dalam pemrosesan teks untuk pencarian informasi berdasarkan asumsi bahwa mengajukan kueri dengan istilah penyajian menyiratkan minat pada kalimat yang berisi kata-kata berpuasa dan puasanya.

## 3. HASIL DAN PEMBAHASAN
Setelah  sistem  berhasil  dirancang  dan  diimplementasikan  didapatlah  sebuah  hasil  berupa  tangkapan layar pesan pertanyaan tentang hadits dan jawaban dari bot whatsapp di tunjukan oleh gambar 5.

## Gambar  5 Tangkapan layar pencarian hadits melalui whatsapp
Pada gambar 5,  pengguna mengirimkan pesan dengan kalimat “hukum puasa senin kamis” dan bot akan mengirimkan balasan hadits yang sesuai dengan kata kunci dari pesan yang dikirim. Jika kata kunci tidak mendapatkan jawaban dari database yang ada, maka bot pun akan mengirimkan informasi bahwa kata kunci tersebut tidak mendapatkan hasil dari pencarian di database.

## Gambar  6 Kata kunci tidak ditemukan

## 4. CONCLUSION
Dari hasil pengujian pada bot pencarian hadits menggunakan full-text index ini, whatsapp bot dapat mengirimkan hasil sesuai dengan yang di harapkan. Tetapi semua itu tergantung dari lengkap dan banyaknya  database  tentang  ilmu  hadits  yang  ada,  semakin  banyak  database  hadits  semakin  tepat pencarian hadits tersebut.

## ACKNOWLEDGEMENTS
Terima kasih kepada kampus STMIK Antar Bangsa atas dukungan dalam penyusunan penelitian ini, dan juga untuk keluarga saya yang selalu memberikan dukungan penuh sehingga penelitian ini dapat selesai.

## REFERENSI
[1] W.  P.  Review,  “Muslim  Population  by  Country  2021.”    [Online].  Available: https://worldpopulationreview.com/country-rankings/muslim-population-by-country. [Accessed: 29-Nov-2021]
[2] Kholis N, Pengantar Studi Al-Qur’an Dan Al-Hadits / Nur Kholis . Yogyakarta: Teras, 2008.
[3] “Tentang  WhatsApp.”    [Online].  Available:  https://www.whatsapp.com/about/?lang=id.
[Accessed: 01-Dec-2021]
[4] Yeboah J., and Ewur G. D, “The impact of Whatsapp messenger usage on students performance in tertiary institutions in Ghana,” Vol 5(6), J. Educ. Pract. , 2014, pp. 157–164.
[5] Aprilia S, “Sistem Informasi Absensi Berbasis Website Menggunakan API WhatsApp dengan Metodologi  Incremental  (Studi  Kasus:  SMP  Negeri  29  Pekanbaru),”  Vol  4(1), J.  Appl. Informatics Comput. , 2020, pp. 38–44.
[6] Dewantya C. C., et al. , “Pengembangan Aplikasi Employee Assistance Program Dengan Fitur Live Chat Menggunakan Whatsapp Api ( Studi Kasus : Pt Metrosolusindo ),” Vol 16, 2018, pp. 216–9436.
[7] Parlika R., Pradika S. I., Hakim A. M., and Manab K. R. N, “Bot Whatsapp Sebagai Pemberi Data Statistik COVID-19 Menggunakan PHP, Flask, Dan MySQL,” Vol 1(2), J. Inform. dan Sist. Inf., 2020, pp. 282–293.
[8] Didik P., and Man D. I, “Telaah Pembelajaran Al-qur'an Hadits Melalui Media Whatsapp Grup dalam Mengembangkan Keterampilan Membaca Al-qur'an Peserta Didik di MAN 2 Malang,” Vol 6 (4), Vicratina J. Pendidik. Islam , 2021, pp. 214–228.
[9] Zainiyati,  H.  S., Munawaroh  S.,  AlHana  R.,  and  Badriyah  L,  “Penerapan JIGSAW  Learning Melalui Whatsapp untuk Memahami Materi Quran Hadits Surah Al-Humazah,” Vol 5, JALIE J. Appl. Linguist. Islam. Educ. , 2021, pp. 25–51.
[10] Navarro G., and Mäkinen V, “Compressed full-text indexes,” Vol 39(1), ACM Comput. Surv. , 2007.
[11] Zobel  J.,  Moffat  A.,  and  Sacks-Davis  R,  “An  Efficient  Indexing  Technique  for  Full-Text Database Systems,” Proc. 18th VLDB Conf. , 1992, pp. 352–362.
[12] Maier A., and Simmen D. E, “DB2 optimization in support of full text search,” Vol 24 (4), IEEE Data Eng. Bull. , 2001, pp. 3–6.
[13] Gunawan  L.  N.,  Anjarwirawan  J.,  and  Handojo  A,  “Aplikasi  Bot  Telegram  Untuk  Media Informasi Perkuliahan Program Studi Informatika-Sistem Informasi Bisnis Universitas Kristen Petra,” Vol 6(1), J. Infra Petra , 2018, pp. 921–921.
[14] Abu  Shawar  B.,  and  Atwell  E,  “Chatbots:  are  they  really  useful?,”  Vol  22(1), LDV-Forum Zeitschrift für Comput. und Sprachtechnologie , 2007, pp. 29–49.
[15] Kannan  S.,  and  Gurusamy  V,  “Preprocessing  Techniques  for  Text  Mining  (PDF  Download Available),” no. October 2014, 2014 [Online].