/advantasms

PHP STK for AdvantaSMS Bulk SMS API, which is 100% compatible with the latest Laravel version as well.

Primary LanguagePHPMIT LicenseMIT

Very short description of the package

Latest Version on Packagist Build Status Quality Score Total Downloads

The PHP SDK for the AdvantaSMS BulkSMS API

Requirements

  • PHP ^7.1
  • PHP json extension
  • PHP Curl extension

Installation

You can install the package via composer:

composer require savannabits/advantasms

Usage

Credentials

Ensure you have thhe following required credentials from AdvantaSMS:

  • apiKey
  • Partner ID (e.g 2030)
  • Shortcode (e.g SAVBITS)

Sending SMS

use \Savannabits\Advantasms\Advantasms;
$apiKey = "";
$partnerId = "";
$shortcode = "";
$mobile = "254xxxxxxxxx";
//instantiate
$sms = new Advantasms($apiKey,$partnerId,$shortcode);

//Send and receive response
$response = $sms->to($mobile)->message("Your message right here...")->send();

//Schedule sms to be sent at a specific time
$time = "2020-10-01 18:00"; // Y-m-d H:i
$response = $sms->to($mobile)->message("Your message right here")->schedule($time);

If you don't like instantiating class into variables, you can use the init static method instead:

use \Savannabits\Advantasms\Advantasms;
$apiKey = "";
$partnerId = "";
$shortcode = "";
$mobile = "254xxxxxxxxx";

//Send and receive response
$response = Advantasms::init($apiKey,$partnerId,$shortcode)->to($mobile)->message("Your message right here...")->send();

//Schedule sms to be sent at a specific time
$time = "2020-10-01 18:00"; // Y-m-d H:i
$response = Advantasms::init($apiKey,$partnerId,$shortcode)->to($mobile)->message("Your message right here...")->schedule($time);

Sample responses

Error

{
  "success":false,
  "message":"Low credit units to send message, Current balance 0.00, Required 1",
  "payload":[
        {
          "response-code":1004,
          "response-description":"Low credit units to send message, Current balance 0.00, Required 1",
          "mobile":"0708467001"
        }
     ],
  "code":1004
}

Success

{
  "success":true,
  "message":"Success",
  "payload":[
        {
            "respose-code": 200,
            "response-description": "Success",
            "mobile": 254712345678,
            "messageid": 8290842,
            "networkid": "1"
        }
    ],
  "code":200
}

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email maosa.sam@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.