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. πŸ˜€

Advertisements

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. πŸ™‚

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.

[Laravel5.2] mengatasi error “Session store not set on request”

setikit kaget ketika memulai project baru, nyoba bikin authentikasi ternyata ketemu error “Session store not set on request”. dan solusinya adalah, cukup dengan memindahkan route authentikasi ke route web midleware. jadi, kira2 semacam ini:
Route::group([‘middleware’ => [‘web’]], function () {

Route::get(‘login’, ‘Auth\AuthController@getLogin’);
Route::post(‘login’, ‘Auth\AuthController@postLogin’);
Route::get(‘logout’, ‘Auth\AuthController@getLogout’);
Route::get(‘register’, ‘Auth\AuthController@getRegister’);
Route::post(‘register’, ‘Auth\AuthController@postRegister’);
});

kesimpulannya, simpulkan sendiri. saya juga gak ngerti kenapa-kenapanya. belum paham betul dengan laravel.

[Laravel5] Bermain-main dengan Pivot

kondisi:

table order dan table produk memiliki relasi many to many.

selain relasi tersebut, dibutuhkan order quantiti.

tahapan persiapan:

1. membuat table order_product dengan coloum:

[order_id][product_id][quantiti]

2. membuat relation belongHasMany pada kedua model:

return $this->belongsToMany(“App\Product”)->withPivot(“quantity”);//pada order, begitupun pda Product.

penggunaan:

$product = App\Product::find(1); //mengambil produk dulu

$order = App\Order::create();

$order->products()->attach($produk);

Β $order->products->find(1)->pivot->quantity=12;