Setelah sebelumnya kita membahas mengenai dasar Membuat Bot Telegram untuk Personal Notifikasi tanpa mengirimnya secara otomatis, kali ini Saya akan menjelaskan bagaimana caranya agar notifikasi tersebut dikirimkan secara otomatis sesuai jadwal yang kita tentukan.
Sebelum memulai, pastikan Anda telah membaca postingan pertama disini.
Jika sudah, mari kita lanjut ke tahap berikutnya. Kita mulai yang sederhana saja yaitu mengirimkan notifikasi atau pengingat untuk beribadah shalat lima waktu.
Sebenarnya dengan mendengar suara adzan, kita sudah diingatkan dan dipanggil hehe, namun tidak ada salahnya kita coba hal ini untuk tujuan pembelajaran dan juga pengetahuan 😊.
Masih menggunakan sistem operasi linux, disini Saya menggunakan distro Linux Mint 18 Sarah. Sekarang kita lihat kode pada tulisan yang lalu sebagai berikut.
Kode sebelumnya:
#!/bin/bash
CHATID="54321"
TOKEN="abcdEfGH1234567890"
TIME="10"
URL="https://api.telegram.org/bot$TOKEN/sendMessage"
TEKS="Tes Notifikasi"
curl -s --max-time $TIME -d "chat_id=$CHATID&disable_web_page_preview=1&text=$TEKS" $URL >/dev/null
Kode editan:
#!/bin/bash
CHATID="54321"
TOKEN="abcdEfGH1234567890"
TIME="10"
URL="https://api.telegram.org/bot$TOKEN/sendMessage"
TEKS="Waktunya shalat Bro!"
curl -s --max-time $TIME -d "chat_id=$CHATID&disable_web_page_preview=1&text=$TEKS" $URL >/dev/null
Sesuaikan variabel
$TOKEN
dan $CHATID
. Untuk variabel $TIME
merupakan opsional, jadi jika waktu tunggu (time out) lebih dari 10 detik maka perintah ini tidak akan berjalan. Jika ingin menghapusnya silahkan dan jangan lupa juga untuk menghapus --max-time
jika Anda melakukannya. OK next...
Sama seperti sebelumnya
bash script
ini disimpan pada direktori $HOME
dengan nama file notifikasi.sh.Lalu bagaimana untuk mengirimkannya secara otomatis?
Jawabannya yaitu
crontab
. Penjelasan detail mengenai crontab
dapat dilihat pada halaman crontab(1) - Linux man page.Buka terminal dan ketikan:
crontab -e
-e
: editJika muncul pilihan text editor yang akan digunakan, pilih nomor 2 [nano], agar lebih mudah 😃, ketik 2 lalu Enter.
Salin kode berikut ini, jangan lupa sesuaikan nama username-nya sesuai dengan nama username pada sistem operasi milik Anda.
15 5,12,15,18,19 * * * /home/<username>/notifikasi.shContoh:
Oiya untuk paste di dalam terminal gunakan kombinasi keyboard
CTRL + Shift + V
.
Setelah disalin tekan CTRL + O
lalu Enter.
Selanjutnya CTRL + X
untuk keluar dari text editor nano, akan muncul tulisan "crontab: installing new crontab".Untuk memastikan bahwa
crontab
telah tersimpan ketik perintah berikut.crontab -l
-l
: list (daftar crontab
)Penjelasan
15 : menit ke 15
5,12,15,18,19 : perintah akan dijalankan pada jam 5, 12, 15, 18, 19
/home/rizky_wg/notifikasi.sh : file notifikasi.sh yang akan dieksekusi
Jadi kesimpulannya yaitu file notifikasi.sh akan dijalankan pada jam 05:15, 12:15, 15:15, 18:15 dan 19:15. Lalu * * * itu apa? Untuk lebih jelas, lihat ilustrasi pada gambar berikut ini.
Sumber gambar: https://tecadmin.net |
crontab
. Sekian tulisan kali ini, to be continued!
Terima Kasih Tutorialnya, sangat membantu
ReplyDeleteSama-Sama mas
ReplyDeleteom kalau bisa ambil data dri sql lalu post ke telegram om
ReplyDeletesudah ada yang membahasnya om, cari aja di Google nama webnya dicoffeean.com
Delete