Kirim Pesan Dengan Zenziva SMS Gateway Di Laravel

Kirim Pesan Dengan Zenziva SMS Gateway Di Laravel

Admin
Admin・ 14 Oktober 2020
4 min read ・ 2790 views

Zenziva SMS Gateway - Setelah di artikel sebelumnya Saya menuliskan mengenai cara membuat sms gateway dengan nexmo di laravel, di artikel kali ini Saya akan menuliskan mengenai cara membuat sms gateway dengan zenziva di laravel. Di percobaan kali ini, Saya akan menggunakan zenziva versi free (credit 10). Langsung saja ke langkah-langkahnya:

1. Yang pertama kita harus mendaftar atau register terlebih dahulu di website resmi zenziva.

Saya pilih layanan sms masking. Sebelumnya, apa sih perbedaan sama reguler dengan sms masking ? Jika dilansir dari zenziva.id/harga/, perbedaan sms reguler dengan sms masking adalah sms reguler sistem kerjanya semi 2 arah dengan nomor pengirim nomor GSM acak dari zenziva. Sedangkan sms masking sistem kerjanya 1 arah dengan nomor pengirim alphanumeric customize. SMS masking bersifat one way atau satu arah sehingga sms tidak bisa di balas.

2. Setelah kita berhasil register sms masking, selanjutnya kita harus email ke support@zenziva.id untuk meminta credit sebagai uji coba kita. Dalam email tersebut, jelaskan kalau kita minta credit untuk uji coba dan pastikan mencantumkan ID zenziva kita.

Kita tunggu saja email balasan dari support zenziva (biasanya responenya sangat lama).

3. Setelah kita diberi credit oleh zenziva, selanjutnya kita ke project untuk uji coba sms masking dengan zenziva di laravel.

4. Buka project kita. Masuk ke terminal dan jalankan comman di bawah ini.

composer require guzzlehttp/guzzle

5. Jika sudah berhasil menjalankan command di atas, selanjutnya buka controller untuk mengirimkan pesan. Karena di percobaan kali ini, saya memakai project nexmo yang pernah saya buat jadi file controller yang saya buka adalah NexmoController.php

Di function store, beri comment terlebih dahulu kode yang digunakan untuk mengirim sms dengan nexmo seperti di bawah ini.

sms gateway dengan zenziva di laravel

Kemudian tambahkan kode di bawah ini untuk mengirimkan sms dengan zenziva di laravel pada function store.

$client = new \GuzzleHttp\Client();
 $userkey = "userkey kamu";
 $passkey = "passkey kamu";
 $nohp = '+62'.(int) $request->no_hp;
 $pesan = $request->pesan;
 $response = $client->request('POST', $endpoint, [
 'form_params' => [
 'userkey' => $userkey,
 'passkey' => $passkey,
 'nohp' => $nohp,
 'pesan' => $pesan
 ]
 ]);
 $statusCode = $response->getStatusCode();
 $content = $response->getBody();

*NOTE: userkey dan passkey bisa dilihat di SMS Setting/API Setting atau di link ini https://alpha.zenziva.net/apps/api.php.

Sehingga secara keseluruhan, kode NexmoController yang digunakan untuk mengirimkan sms gateway dengan zenziva di laravel akan seperti di bawah ini.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class NexmoController extends Controller

{

    /**

     * Display a listing of the resource.

     *

     * @return \Illuminate\Http\Response

     */

    public function index()

    {

        return view('nexmo');

    }

    public function store(Request $request)

    {

    $endpoint = "https://alpha.zenziva.net/apps/smsapi.php";

    $client = new \GuzzleHttp\Client();

    $userkey = "1x0qgm";

    $passkey = "umkmdotonline";

    $nohp = '+62'.(int) $request->no_hp;

    $pesan = $request->pesan;

    $response = $client->request('POST', $endpoint, [

    'form_params' => [

    'userkey' => $userkey,

    'passkey' => $passkey,

    'nohp' => $nohp,

    'pesan' => $pesan

     ]

     ]);

     $statusCode = $response->getStatusCode();

     $content = $response->getBody();

        return redirect()->back();

    }

}


Sekian artikel yang saya tulis kali ini mengenai cara membuat sms gateway dengan zenziva di laravel. Secara harga, harga sms yang ditawarkan zenziva cukup murah. Untuk detail harga, bisa dilihat disini https://www.zenziva.id/harga/.

Tinggalkan Komentar
Loading Comments