|  Download PHP SMS GATEWAYSPHP class for sms gateways, using same codebase and implementation to send sms in Vonage & ClickSend  sms gateways. AVAILABLE SMS PROVIDERS
Vonage: To use Vonage as provider, install the library `composer require vonage/client`
ClickSend To use ClickSend as provider, install the library `composer require clicksend/clicksend-php`
 Installation Guide via Composer: composer require nanoblocktech/php-sms-gateways
 UsagesInitialize classes  use \Luminova\ExtraUtils\Sms\Gateway;
use \Luminova\ExtraUtils\Sms\Providers\Vonage;
use \Luminova\ExtraUtils\Sms\Providers\ClickSend;
use \Luminova\ExtraUtils\Sms\Exceptions\SmsException;
 Initialize SMS Client using Vonage use Luminova\ExtraUtils\Sms\Providers\Vonage;
$client = new Vonage("KEY", "SECRETE");
 Initialize SMS Client using ClickSend use Luminova\ExtraUtils\Sms\Providers\ClickSend;
$client = new ClickSend("USERNAME", "KEY");
 Initialize SMS gateway $gateway = new Gateway($client);
$gateway->setPhone('000000000');
$gateway->setFrom('000000000');
$gateway->setMessage('Hello your verification code is 1234');
try {
    if($gateway->send()){
        echo "Message sent successfully";
    }else{
        $response = $gateway->getResponse();
        echo $response->getError();
    }
} catch (SmsException $e){
    echo $e->getMessage();
}
 Send sms using modem serial port  use Luminova\ExtraUtils\Sms\SerialGateway;
try{
    $serial = new SerialGateway('COM4', 'en_US');
    $serial->send('000000000', 'Hello your verification code is 1234', function($data){
        echo "Message sent successfully";
    });
} catch (SmsException $e){
    echo $e->getMessage();
}
 Configuring your serial  use Luminova\ExtraUtils\Sms\SerialGateway;
$to = '9999999999';
$message = 'Hello your verification code is 1234';
try{
    $serial = new SerialGateway('COM4', 'en_US');
    $serial->setBaudRate(9600);
    $serial->setParity('none');
    $serial->setCharacterLength(8);
    $serial->setStopBits(1);
    $serial->setFlowControl('none');
    if($serial->openDevice()){
        $serial->sendMessage("AT+CMGF=1\n\r"); 
        $serial->sendMessage("AT+cmgs=\"{$to}\"\n\r");
        $serial->sendMessage("{$message}\n\r");
        $serial->sendMessage(chr(26));
        sleep(7);
        $read = $serial->readPort(0);
        $serial->closeDevice();
        echo "Message was sent successfully";
    }
} catch (SmsException $e){
    echo $e->getMessage();
}
 Response methods   $response = $gateway->getResponse();
/
 * Get response status 
*/
$response->getStatus();
/
 * Get gateways response status 
*/
$response->getOriginalStatus();
/
 * Check if sms message was sent
*/
$response->isSuccess();
/
 * Get api response body
*/
$response->getContent();
/
 * Get error if any 
*/
$response->getError();
 |