CategoriesProgrammingUncategorized

Pengaplikasian Bot Telegram menggunakan PHP : Absensi Sederhana

Telegram merupakan salah satu aplikasi chatting gratis dan memiliki berbagai fitur. Salah satu fitur yang disediakan yaitu Bot. Telegram Bot adalah aplikasi pihak ketiga yang dapat dikontrol menggunakan HTTPS Request ke API Bot yang telah disediakan telegram. Dokumentasi mengenai API Bot dapat dipelajari pada halaman web core telegram.

Pandemi Covid-19 yang terjadi di Indonesia mulai dari awal tahun 2020 sampai sekarang membuat perubahan mekanisme diberbagai sektor. Beberapa sektor yang berdampak adalah mekanisme pendidikan dan pekerjaan. Pada sektor pendidikan yang biasanya secara offline tatap muka di sekolah (luring) menjadi interaktif berbasis online dengan memanfaatkan berbagai platform (daring) yang dilakukan dari rumah. Seperti halnya pendidikan, pada mekanisme pekerjaan pun sama yaitu yang biasanya tatap muka dan melakukan produktifitas di kantor atau yang biasa disebut WFO untuk semua karyawan menjadi produktifitas dilakukan secara interaktif online dari rumah atau WFH untuk sebagian karyawan maupun semua karyawan tergantung pada masing-masing bidang pekerjaan.

Bot telegram dapat digunakan sebagai salah satu alternatif yang cukup efisien untuk perekapan absensi. Berikut cara pembuatan absensi sederhana dengan bot telegram menggunakan PHP.

  1. Buat Bot Telegram melalui BotFather
    Ketikan BotFather pada pencarian kemudian pilih BotFather yang memiliki centang biru

    Klik Button Start

    Kemudian BotFather akan mengirimkan chat berisikan intruksi-intruksi yang dapat digunakan dalam untuk bot yang akan dibuat

    Buat bot baru

  2. Buat Webhook
    Webhook atau yang biasa disebut callback adalah cara bagi suatu aplikasi untuk menyediakan aplikasi lain dengan informasi real-time. Dalam hal ini webhook digunakan untuk mengirimkan update objek secara otomatis setiap kali terjadi sesuatu pada Bot yang dibuat. Untuk membuat webhook membutuhkan satu URL dalam protokol jaringan HTTPS dan token dari Bot. File yang akan di set sebagai webhook boleh berupa file kosong berekstensi .php, file tersebut akan kita tuliskan logic nya ketika sudah di set sebagai webhook. Akses melalui browser / postman :
    https://api.telegram.org/bot<tokenbot>/setwebhook?url=https://<domain>/<file_webhook>.php
    Berikut respon yang ditampilkan ketika setelah kita set URL menjadi webhook :
  3. Buat Database
    Database yang dibuat digunakan untuk menyimpan contact user dan juga history dari user ke bot. Berikut ERD dari database sederhana yang dapat digunakan untuk absensi :
  4. Buat Logic untuk webhook
    Logic yang akan dibuat yaitu :
    1. Ketika user mengirimkan pesan kepada Bot maka webhook akan melakukan pengecekkan pada database. Jika user tersebut belum ada maka data user tersebut akan ditambahkan ke tabel absensi_user_telegram, dan jika sudah ada maka akan get id dari data user yang telah tersimpan. Berikut script yang digunakan
    2. Jika id user ditemukan dan user mengirimkan pesan pada bot, maka logic selanjutnya mengecek keyword yang di inputkan user dan mengecek keyword tersebut di tabel absensi_autoreply_telegram untuk mendapatkan jawaban dari data sudah di set sebelumnya. Jika absen yang di inputkan adalah ketidak hadiran (sakit/ cuti tahunan/ cuti menikah / cuti melahirkan) maka bot akan mengirimkan pemberitahuan pada Group Chat Absensi. Berikut detail scriptnya

  5. Buat Grup Chat Telegram
    Membuat Grup Telegram. kemudian menambahkan Bot Telegram yang telah dibuat kedalam grup tersebut.

  6. Hasil Bot Telegram Absensi Sederhana
    Ketika user melakukan absensi melalui bot dan jika absen yang di inputkan adalah ketidak hadiran (sakit/ cuti tahunan/ cuti menikah / cuti melahirkan) maka bot akan mengirimkan pemberitahuan pada Group Chat Absensi. Berikut contoh chat dari segi user :

    Dari segi group :

Leave a Reply

Your email address will not be published. Required fields are marked *