Notifikasi JIBAS Menggunakan Whatsapp (3)

Hari ini saya mengintegrasikan JIBAS Keuangan ke Whatsapp dengan fitur :
  1. Transaksi virtual account
  2. Alokasi virtual account
  3. Tunggakan siswa/calon siswa
  4. Transaksi pembayaran terakhir
  5. Rekap semua pembayaran siswa/calon siswa
Jadi orang tua siswa/calon siswa dapat mengetahui semua transaksi tersebut hanya dengan memasukkan keyword#nis#pinsiswa.

Fitur-fitur Whatsapp yang lain seperti JIBAS Akademik, Inventori, Purchase, SDM, SLIMS Perpustakaan masih dalam proses pengerjaan.
Notifikasi JIBAS Menggunakan Whatsapp (3)
Sekian dan terima kasih.

Notifikasi JIBAS Menggunakan Whatsapp (2)

Melanjutkan tulisan saya disini, terhitung 2 April 2018 saya mematikan layanan SMS Gateway JIBAS. Karena script Whatsapp yang saya buat sudah selesai (script pengiriman Whatsapp realtime juga sudah selesai), selain lebih ngirit Rp. 400.000/bulan ada alasan lain yang akhirnya saya memutuskan untuk mengintegrasikan JIBAS dengan Whatsapp. 

Bermula dari komplain orang tua siswa yang menyatakan bahwa mereka tidak mendapat SMS notifikasi, sebenarnya dari sisi software JIBAS (web/dekstop) tidak ada masalah dan semuanya berjalan dengan baik. Saya menduga ini diakibatkan aturan provider dari himbauan kemenkominfo yang mengakibatkan SMS tempat kami tidak jalan. Jadi sistem SMS dari provider punya algoritma khusus, jika ditemukan pola SMS yang sama dan pengiriman dalam waktu berdekatan (semacam SMS "mama minta pulsa") maka akan diblokir.

Tapi ya sudahlah yang penting JIBAS & Whatsapp tempat kami sudah jalan. Sekian 


Notifikasi JIBAS Menggunakan Whatsapp (1)

Akhirnya setelah beberapa hari scripting, JIBAS ditempat saya bisa menggunakan Whatsapp. Dengan cara ini setidaknya saya bisa ngirit biaya SMS Rp. 400.000/bulan.

Saya tidak menghilangkan fitur notifikasi SMS, fitur tersebut saya padukan dengan Whatsapp. Jadi saya membuat script untuk mendeteksi apakah nomor tersebut terdaftar memakai Whatsapp atau tidak. Jika terdaftar maka script akan mengirim lewat Whatsapp jika tidak maka mengirim lewat SMS.

Sampai post ini diturunkan Whatsapp tidak memberikan akses API yang bisa dikelola seperti Telegram. Saya memutuskan untuk develop integrasi Whatsapp karena untuk kalangan tertentu Telegram sepi peminat.

Mungkin bagi beberapa orang akan mikir, kirim pesan lewat Whatsapp apa susahnya sih? Ya kalo kirim 1 atau 2 pesan sih enteng-enteng aja. Tapi kalau ratusan atau ribuan pesan dan setiap pesan mempunyai informasi yg berbeda-beda kira-kira bisa kebayang ribetnya kan? Oleh karena itu butuh script untuk meringankan kerja manusia.

Notifikasi JIBAS Menggunakan Whatsapp

Sekian.

Setting Barracuda Database Moodle / INNODB File Format Barracuda / MariaDB

Tulisan ini saya buat sebagai catatan pribadi dan masalah ini terjadi ketika saya akan membuat backup database Moodle dengan menggunakan XAMPP (MariaDB) dan terjadi masalah mengenai file format Barracuda.

NB : Cara ini juga bisa diterapkan di mysql operating system Linux maupun Windows.

Just give a try!!!

Setting Barracuda Database Moodle / INNODB File Format Barracuda / MariaDB
mysql> select version();
mysql> show variables like "%innodb_file%";
mysql> SET GLOBAL innodb_file_format = barracuda;
mysql> show variables like "%innodb_file%";
mysql> SET GLOBAL innodb_file_format_max = barracuda;
mysql> show variables like "%innodb_file%";
Dengan cara ini file format sudah berganti menjadi Barracuda dan Anda sudah dapat melakukan proses backup. Sebagai catatan jika nanti Anda menemukan error seperti ini :
#1071 - Specified key was too long; max key length is 767 bytes
Solusinya adalah :

Ubah INNODB utf8mb4 VARCHAR(191) menjadi INNODB utf8 VARCHAR(255)

Penjelasan :

767 / 4 ~= 191
767 / 3 ~= 255

Sekian dan terima kasih

Setting Barracuda Database Moodle / INNODB File Format Barracuda / MariaDB

Install JIBAS 3.9 di Linux Ubuntu

Seperti yang kita ketahui bahwa JIBAS telah merilis versi terbaru mereka versi 3.9. Pada versi terbaru ini ada penambahan fitur yaitu JIBAS CBE untuk lebih jelas tentang fitur tersebut silahkan Anda coba install dengan cara berikut.

Sama seperti tutorial saya sebelumnya disini https://kaktheo.blogspot.com/2017/01/install-jibas-di-ubuntu.html langkah yang membedakan hanya :

wget http://www.jibas.net/res/jibas/jibas.education.community.src-3.8.7z

diganti dengan

wget http://www.jibas.net/res/jibas/jibas.education.community.src-3.9.7z


Sekian dan terima kasih, semoga tutorialnya bermanfaat.

Oprek Semua (All) HP Android dengan @kaktheobot Telegram

Bot ini merupakan sarana untuk mengekspresikan apa yang saya pikirkan daripada "ngruntel/nggedibal" di otak dan membuat stress, jadi lebih baik saya menuangkan apa yang saya pikirkan disini.

Program ini dapat membantu Anda untuk mencari informasi seputar media video & audio, informasi seputar teknologi terbaru, dan informasi mengenai cara oprek/custom smartphone beserta file-file pendukungnya.

Caranya :
  1. Buka aplikasi Telegram
  2. Kemudian lakukan pencarian dengan ketik keyword : @kaktheobot
Terima kasih


prek Semua (All) HP Android dengan @kaktheobot Telegram

Membuat @DownloadYoutubeKuBot - Download Youtube Dengan Bot Telegram

Bot ini digunakan untuk download berbagai macam format video maupun audio dari Youtube.

Cara menggunakannya cukup mudah (pastikan Anda mempunyai aplikasi Telegram Android/iOS), caranya. Anda hanya cukup ketik/copy paste url Youtube ke dalam @DownloadYoutubeKuBot.

Contoh : https://www.youtube.com/watch?v=V_XeIX-DTNs
Contoh : https://www.youtube.com/watch?v=m7u7L6_-3KM

Kemudian klik tombol send/kirim maka bot akan membalas pesan Anda.

Selamat mencoba.

Membuat @DownloadYoutubeKuBot - Download Youtube Dengan Bot Telegram

Membuat @DownloadYoutubeKuBot - Download Youtube Dengan Bot Telegram

Membuat @CekResiKuBot - Cek Resi Menggunakan Bot Telegram

Bot ini digunakan untuk pengecekan secara otomatis nomor resi untuk 8 ekspedisi pengiriman, diantaranya : JNE, TIKI, Pos Indonesia, Pandu Logistics, Pahala, Wahana, PCP Express, SiCepat.

Kode Ekspedisi :

1. jne untuk ekspedisi JNE
2. sicepat untuk ekspedisi SiCepat
3. wahana untuk ekspedisi Wahana
4. pcp untuk ekspedisi PCP Express
5. jnt untuk ekspedisi J & T Express
6. pos untuk ekspedisi Pos Indonesia
7. tiki untuk ekspedisi TIKI
8. pandu untuk ekspedisi Pandu Logistics

Cara menggunakannya cukup mudah (pastikan Anda mempunyai aplikasi Telegram Android/iOS), caranya :

Ketik [NO_RESI]*[KODE_EKSPEDISI]
Contoh : 8880xxx37892*jnt
Contoh : 04134000xxx3918*jne

Kemudian klik tombol send/kirim maka bot akan membalas pesan Anda.

Selamat mencoba.

Membuat @CekResiKuBot - Cek Resi Bot Telegram

Membuat @CekResiKuBot - Cek Resi Bot Telegram

Membuat @CekResiKuBot - Cek Resi Bot Telegram

Membuat @CekResiKuBot - Cek Resi Bot Telegram

Membuat @ShortUrlKuBot - Short URL Menggunakan Bot Telegram

Bot ini digunakan untuk memperpendek URL menggunakan engine Google.

Cara menggunakannya cukup mudah (pastikan Anda mempunyai aplikasi Telegram Android/iOS), caranya. Anda hanya cukup ketik/copy paste URL yang akan diperpendek ke dalam @ShortUrlKuBot.

Contoh : https://kaktheo.blogspot.com
Contoh : https://www.youtube.com/

Kemudian klik tombol send/kirim maka bot akan membalas pesan Anda.

Selamat mencoba.

Membuat @ShortUrlKuBot - Short URL Bot Telegram

Membuat @ShortUrlKuBot - Short URL Bot Telegram

Masalah style=page-break-before:always CMS SLIMS Akasia Cetak Katalog Buku

Saya menggunakan CMS SLIMS Akasia untuk mengelola perpustakaan di tempat kami dan mengintegrasikannya dengan JIBAS, kemarin dapat laporan bahwa katalog buku ngacak ketika akan dicetak.
Masalah style="page-break-before:always; CMS SLIMS Akasia Cetak Katalog Buku

Menurut saya masalah tersebut terjadi karena kompabilitas dari browser (karena browser sering update) sehingga membuat settingan yang dibuat tidak berjalan dengan baik. Solusinya, saya menambahkan beberapa baris di kode slims xxx/slims/admin/modules/bibliography/printed_card.php

Pertama, saya membuat script untuk mendeteksi browser. Sebetulnya di tempat kami hanya memakai 2 browser saja, yaitu Chrome dan Mozilla Firefox.
function getBrowser()
{
    $u_agent = $_SERVER['HTTP_USER_AGENT'];
    $bname = 'Emboh';
    $platform = 'Emboh';
    $version= "";
    if (preg_match('/linux/i', $u_agent)) {
        $platform = 'linux';
    }
    elseif (preg_match('/macintosh|mac os x/i', $u_agent)) {
        $platform = 'mac';
    }
    elseif (preg_match('/windows|win32/i', $u_agent)) {
        $platform = 'windows';
    }
 
    if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent))
    {
        $bname = 'Internet Explorer';
        $ub = "MSIE";
    }
    elseif(preg_match('/Firefox/i',$u_agent))
    {
        $bname = 'Mozilla Firefox';
        $ub = "Firefox";
    }
    elseif(preg_match('/Chrome/i',$u_agent))
    {
        $bname = 'Google Chrome';
        $ub = "Chrome";
    }
    elseif(preg_match('/Safari/i',$u_agent))
    {
        $bname = 'Apple Safari';
        $ub = "Safari";
    }
    elseif(preg_match('/Opera/i',$u_agent))
    {
        $bname = 'Opera';
        $ub = "Opera";
    }
    elseif(preg_match('/Netscape/i',$u_agent))
    {
        $bname = 'Netscape';
        $ub = "Netscape";
    }
 
    $known = array('Version', $ub, 'other');
    $pattern = '#(?<browser>' . join('|', $known) .
    ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#';
    if (!preg_match_all($pattern, $u_agent, $matches)) {
    }
 
    $i = count($matches['browser']);
    if ($i != 1) {
        if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){
            $version= $matches['version'][0];
        }
        else {
            $version= $matches['version'][1];
        }
    }
    else {
        $version= $matches['version'][0];
    }
 
    if ($version==null || $version=="") {$version="?";}
 
    return array(
        'userAgent' => $u_agent,
        'name'      => $bname,
        'version'   => $version,
        'platform'  => $platform,
        'pattern'    => $pattern
    );
Kemudian ubah kode ini
$katalog .= "<tr ".$set_break."><td class=kotak>
<table border=0 width=470 height=270 cellpadding=0 cellspacing=0>
<tr><td class=data>&nbsp;</td><td align=center colspan=2 rowspan=2>"; 
Menjadi
$ua=getBrowser();
if ($ua['name'] == "Mozilla Firefox") {
  $katalog .= "<tr ".$set_break."><td class=kotak>
<table border=0 width=470 height=270 cellpadding=0 cellspacing=0>
<tr><td class=data>&nbsp;</td><td align=center colspan=2 rowspan=2>";
} else {
  $katalog .= "<tr><td><div></div><div ".$set_break."></div>
<table class=kotak border=0 width=470 height=270 cellpadding=0 cellspacing=0>
<tr><td class=data>&nbsp;</td><td align=center colspan=2 rowspan=2>";
}
Sekian dan terima kasih.

Membuat Statistik Pengunjung Bot Telegram

Hari ini saya membuat fitur menampilkan statistik di bot telegram @SKKKSurakartaBot, fitur yang saya buat terdiri dari 3 bagian.
  1. Menampilkan pengunjung hari ini
  2. Menampilkan pengunjung per bulan
  3. Menampilkan pengunjung per tahun
Membuat Statistik Pengunjung Bot Telegram
Membuat Statistik Pengunjung Bot Telegram

Cara Mengirim Media (Photo, Audio, Document, Video) di Bot Telegram

Melanjutkan tulisan saya disini, hari ini saya menambahkan fitur kirim media ke @SKKKSurakartaBot Telegram. Isi dari bot Telegram diambil dari website https://skkksurakarta.sch.id dimana website tersebut memakai engine Drupal.

Saya menggabungkan fitur content types Drupal dengan menambahkan 4 field, silahkan lihat gambar :
Cara Mengirim Media (Photo, Audio, Document, Video) di Bot Telegram
Hasilnya akan seperti ini, silahkan lihat gambar :
Cara Mengirim Media (Photo, Audio, Document, Video) di Bot Telegram

Jadi, alamat media tersebut cukup dimasukkan ke dalam field content types yang sudah kita buat tadi dan hasilnya seperti ini.
Cara Mengirim Media (Photo, Audio, Document, Video) di Bot Telegram
Cara Mengirim Media (Photo, Audio, Document, Video) di Bot Telegram

Sekian dan terima kasih.

Bot Lainnya :
  1. Membuat @DownloadYoutubeKuBot - Download Youtube Dengan Bot Telegram
  2. Membuat @CekResiKuBot - Cek Resi Menggunakan Bot Telegram
  3. Membuat @ShortUrlKuBot - Short URL Menggunakan Bot Telegram


Kontrol Mikrotik Jarak Jauh Dengan freedns.afraid.org

Kontrol Mikrotik jarak jauh disini bisa menggunakan dua mode :
  1. Mikrotik sebagai bridge
  2. Mikrotik dibelakang ISP
Dalam kasus ini saya memakai Mikrotik dibelakang ISP, yang perlu kita lakukan tentu saja adalah registrasi di freedns.afraid.org. 
  • Saya mengambil Dynamic DNS : kaktheo.uk.to
  • Masuk Mikrotik -> System -> Script
  • Kemudian masukkan script dan kemudian simpan dengan nama afraid
# Update DNS on Freedns.afraid.org
:global host "freedns.afraid.org"
:global url "http://freedns.afraid.org/dynamic/update.php?YndLTzNob1NROFI4bE5neWl9U01TTkpqOjE3MjAyMDQ1"
/tool fetch url=$url host=$host
  • Kemudian tambahkan scheduler. Mikrotik -> System -> Scheduler
  • Masukkan name : afraid
  • Interval 00:05:00
  • On Event : afraid
Untuk mendapatkan global url : http://freedns.afraid.org/dynamic/update.php?YndLTzNob1NROFI4bE5neWl9U01TTkpqOjE3MjAyMDQ1 Anda harus klik Dynamic DNS Anda kemudian pilih Direct url.

Kemudian silahkan Anda buka alamat kaktheo.uk.to. Sekian dan terima kasih.