Tutorial Bot telegram dengan Laravel

Assalamu’alaikum. malam ini saya mau mencatat bagaimana membangun aplikasi bot telegram menggunakan laravel. saya rencananya mau mengganti sms-gateway aplikasi customer saya ke bot laravel. karena keluhan dari customer saya, menggunakan sms-gateway sangat menguras biaya dan sangat ribet. kebetulan customer saya adalah korporasi, jadi untuk pendanaan receh seperti pulsa akan menambah pekerjaan bagi purchasing, it dan financial mereka. bener-bener tidak mudah. kalau menggunakan bot telegram, saya kira sudah dapat ditangani dengan tagihan internet korporet. πŸ™‚

oke, udahan dulu curhatnya. berikut tahapan yang akan dan sedang dilakukan oleh saya.

  1. mendaftar bot

nah, sebelum kemana-mana, kita mesti mendaftar dulu ke telegram agar dapat token yang nantinya akan selalu digunakan oleh aplikasi kita. cara daftarnya gampang, tinggal chat aja dengan “botfather”. silahkan cari di bilik pencarian. nanti kita akan seakan ngirim pesan /start silahkan chatingan dengan botfather untuk mendapatkan tokennya. ingat, jika sudah mendapatkan token, harap di simpan baik-baik jangan sampai ada orang lain yg tahu. itu rahasia anda sendiri. πŸ™‚

  1. fresh install new project laravel danΒ  library bot telegram

langkahnya hanya “laravel new namaproject”, kalau di saya “laravel new telegram”. selanjutnya cd ke direktory project. di saya “cd telegram”.Β  lalu “composer require irazasyed/telegram-bot-sdk ^2.0”. ini langkah untuk install library saja. selanjutnya konfigurasi. refer ke sini aja. https://telegram-bot-sdk.readme.io/docs untuk konfigurasinya. πŸ™‚

  1. berkenalan dengan bot telegram

saya sudah sedikit mengantuk ini, udahan dulu ya. πŸ˜€

#anggep aja ini serial 1001 malam. πŸ˜€

workflow persiapan alat kerja web development saya

selamat malam, kali ini saya mau berbagi apa yang mesti disiapkan untuk alat-alat saya dalam proses development website.

saat ini saya sedang install os baru di leptop saya. berhubung sepertinya sering kebingunan untuk proses install apa saja yang mesti disiapkan, maka lebih baik saya share saja apa saja yang saya install di leptop saya ini. πŸ™‚

berikut yang semestinya saya lakukan dan semestinya lakukan untuk pekerjaan saya ini.

1. install os. kali ini saya menggunakan xubuntu. ubuntu dengan tampilan xfce. jangan tanyakan kenapa menggunakan ini. karena sebenernya saya asal pilih saja. kali ini xubuntu yang beruntung. πŸ™‚
2. install apache2, mariadb-server dan php7.0
3. install composer
4. install hirak/prestissimo, ini untuk mempercepat kerja composer, kalau tidak pakai ini, saya merasa performa composer sangat rendah. πŸ™‚
5. install laravel/installer, saya pengguna framework laravel. mesti ini. πŸ™‚
6. install barryvdh/laravel-debugbar.
7. daftarkan vendor/bin composer ke path.
8. chown /var/www/html ke user:group user saat ini
9. install vim, sublime
10. install plugin sublime: control sublime, phpcompanio, code complice, laravel. untuk vim, saya buat gayak-gayaan aja. πŸ˜€
11. install google chrome. entah kenapa, saya lebih suka chrome daripada firefox bawaan xubuntu.

persenjataan saya sudah lengkap. πŸ˜€

 

note: sampai saat ini saya belum tertarik belajar apalagi mendalami front end. oleh karena itu, dalam workflow saya dalam persiapan peralatan saya tidak ditemukan konfigurasi semacam bower, gulp dkk. saya lebih nyaman pakai template AdminLTE saja. πŸ™‚

QT5, Mengatasi “QMYSQL driver not loaded”

  1. cd /opt/Qt5.6.0/5.6/gcc_64/plugins/sqldrivers
  2. ldd libqsqlmysql.so
  3. jika ktemu “libmysqlclient_r.so.16 => not found“, pindah ”
    cd /usr/lib/x86_64-linux-gnu"
  4. cp libmysqlclient_r.so.18 libmysqlclient_r.so.16
  5. ulangi langkah 1 hingga 2, jika ketemu “libssl.so.10 => not found”, lanjutkan ke langkah 3. lalu, “sudo ln -s libssl.so.1.0.0 libssl.so.10”.
  6. ulangi langkah 1-2, jika ketemu “libcrypto.so.10 => not found”, lanjutkan ke langkah 3, lalu, “sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10”.

sekian terima kasih. semoga membantu. πŸ™‚

Membuat CDN lokal

ini adalah kelanjutan dari post ini. jadi jangan bingung dengan domain cdn.dev. πŸ™‚

karena rencana sebelumnya saya memang mau make bower maka saya mesti install bower. karena mesti install bower ya mau tak mau saya mesti install node js.

[persiapan]

install nodejs. klik aja link ini. saya pisah biar mudah nyarinya.

install bower.

npm install -g bower

test dengan

bower -v

mestinya akan menampilkan nomer versi dari bowernya.

 

[ngisi library ke domain cdn.dev]

ke direktory CDN

cd /var/www/html/CDN

lalu install komponent-komponet yan dibutuhkan.

saya membutuhkan bootstrap dan angularjs.

bower install bootstrap angularjs

semua file bootstrap dan angularjs akan ada di direktory bower_components.

akan ikut terinstall jquery. karena bootstrap membutuhkan jquery.

untuk menggunakannya, setiap file development atau testing Β saya akan menggunakan cdn ini. cukup panggil aja dari htmlnya:

<link rel=”stylesheet” href=”http://cdn.dev/bootstrap/dist/css/bootstrap.min.css”&gt;
http://cdn.dev/jquery/dist/jquery.min.js
http://cdn.dev/bootstrap/dist/js/bootstrap.min.js
http://cdn.dev/angular/angular.min.js

sip, sudah. cdnnya gak mesti ol lagi. πŸ˜€

install OCI8 di linux mint.

  1. download instant client dan SDK di sini:Β http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
  2. extract instant client letakan semua file yang ada di folder hasil extract ke /opt/oci8lib. (sebenernya terserah mau diletakkan dimana).
  3. extract sdknya. buka folder hasil extrak. di sana ada folder sdk.
  4. copy file folder sdk(perhatikan, folder sdk, buka folder hasil extract) ke /opt/oci8lib. ini menyesuaikan dengan tahapan point 2. alias di copy ke folder library oci8 kita.
  5. buka terminal.
  6. lalu run command berikut:

    #menambah path
    echo ‘export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/oci8lib’ >> ~/.profile
    source ~/.profile
    #pindah ke tempat librarynya
    cd /opt/oci8lib
    echo /opt/oci8lib >> /etc/ld.so.conf
    ldconfig
    #buat link
    ln -s libclntsh.so.* libclntsh.so
    #install beberapa komponen
    sudo apt-get install php-pear
    sudo apt-get install php5-dev
    sudo apt-get install libaio-dev
    sudo apt-get install php-pear

    #install oci8-nya

    pecl install oci8-2.0.10

    #jika ditanyatanyain untuk nginput path, enter sajalah. πŸ™‚

  7. testing.
    buat file phpinfo().

composer, git dan laravel: ketiga tools ini penting untuk ngehosin laravel.

mungkin kejadian ini sangat bodoh. tapi, saya harus menulisnya di sini karena mungkin akan sangat berguna bagi saya nantinya. sebatas hanya sebuah catatan. mengingat saya memang orangnya pelupa.

saya menggitin sebuah project ke github. projectnya saya bangun dari laravel5. nah, di laravel ini memang sudah ada config2 untuk versioning dengan gitnya. beberapa banyak di set ignore, terutama pada folder vendor. tentu termasuk dengan autoloadnya. πŸ˜€ di sini lah yang membuat saya sedikit terkecoh.

saya hanya ngeclone dari github untuk install laravelnya. tanpa menginstall dari composer. selesai di clone ternyata saya kebingungan karena menampilkan blank page. nah, saya kira masalah permissionnya. saya otak atik dengan chown dan chmod. keduanya tidak berpengaruh sama sekali.

usut punya usut, ketika saya coba tampilin errornya dari public/index.php, maka saya menemukan sebuah error gak bisa ngeload autoload.php. nah, saya jadi yakin karena belum ada apa2nya. πŸ˜€ pasti hanya code saya yang tersedia ini. :-#

langkah solusinya hanya install composer lalu jalankan composer install pada root projectnya. udah, beres. πŸ˜€ gitu aja.

oia, ada orang kenalan barusan, saya catet di sini nama2nya. takutnya besok saya sudah lupa namanya. πŸ˜€

hendra tinggi, baju hijau dan pakai kacamata, tias yang saya ledekin mirasih(modus biar inget sama namanya), dan mega yg berkerudung.