SMS Sender
Adalah library untuk mengirim SMS teks ke suatu nomor handphone. Module ini tidak bisa bediri sendiri, dibutuhkan module sender yang bertugas menghubungkan aplikasi dengan pihak pengirim SMS.
Jika terdapat beberapa library sender, maka semua library tersebut akan dipanggil
sampai ada library yang mengembalikan nilai true
, proses pengiriman sms akan
dihentikan di sini.
Instalasi
Jalankan perintah di bawah di folder aplikasi:
mim app install lib-sms
Penggunaan
Module ini menambahkan satu libray yang bisa digunakan aplikasi untuk mengirim SMS
dengan nama LibSms\Library\Sms
.
use LibSms\Library\Sms;
$phone = '0857100111111';
$message = 'Message to send';
if(!Sms::send($phone, $message))
deb(Sms::lastError());
Jika ingin membatasi pengiriman SMS hanya menggunakan suatu library atau beberapa library saja, maka tambahkan parameter ketiga list library yang akan digunakan:
use LibSms\Library\Sms;
$phone = '0857100111111';
$message = 'Message to send';
$libs = ['zenziva', 'twilio'];
if(!Sms::send($phone, $message, $libs))
deb(Sms::lastError());
Perintah di atas akan mengirimkan SMS menggunakan library zenziva
, dan hanya jika
module tersebut mengembalikan nilai false, maka library twilio
akan digunakan.
SMS Sender
Module sender harus memiliki satu library untuk digunakan oleh module ini
untuk mengirim SMS. Library tersebut harus mengimplementasikan interface
LibSms\Iface\Sender
. Library tersebut harus memiliki method sebagai berikut:
send(string $phone, string $message): bool
lastError(): ?string
lastErrno(): ?int
Konfigurasi
Masing-masing library sender harus mendaftarkan library mereka didalam konfigurasi module/aplikasi dengan cara seperti di bawah:
return [
'libSms' => [
'senders' => [
'$name' => '$class',
'zenziva' => 'LibSmsZenziva\\Library\\Sender'
]
]
];