smsgate / client
PHP Client for using SMS Gate HTTP API.
Installs: 2 684
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 2
Forks: 1
Open Issues: 0
Requires
- php: >=5.6
- php-http/client-implementation: ^1.0
- php-http/guzzle6-adapter: ^1.0
- zendframework/zend-diactoros: ^1.3
Requires (Dev)
- phpunit/phpunit: ^5.7
This package is not auto-updated.
Last update: 2024-04-28 18:10:13 UTC
README
This library requires a minimum PHP version of 5.6
Installation
To install the PHP client library to your project, we recommend using Composer.
composer require smsgate/client
If you're new to Composer, here are some resources that you may find useful:
- Composer's Getting Started page from Composer project's documentation.
- A Beginner's Guide to Composer from the good people at ScotchBox.
Send SMS
//use composer's autoload require 'vendor/autoload.php'; //make sure to set the real URL for bulk gate $gate = new SMSGate\Client('http://localhost:9000/bulk_server'); $sms = new SMSGate\SMSRequest; $sms ->setType(SMSGate\Client::TYPE_TEXT) ->setAuthUsername('test') ->setAuthPassword('test') ->setSender('Test Sender') ->setReceiver('41587000201') ->setText('Hello there!') ////make sure to set the real URL for your webhook handler ->setDlrUrl('http://localhost:8000/dlr.php') ->setDlrMask(SMSGate\Client::DLR_MASK_STANDARD); try { $response = $gate->send($sms); } catch (\Exception $exc) { echo "Error sending SMS with code: " . $exc->getCode() . " and message: " . $exc->getMessage(); exit; } echo "SMS sent with ID: " . $response->msgId . " and num of parts: " . $response->numParts;
Receive DLRs
//use composer's autoload require 'vendor/autoload.php'; $gate = new SMSGate\Client(''); $dlr = $gate->parseDeliveryReport(); if(!isset($dlr)){ error_log("Cannot parse DLR from the request"); exit; } error_log("Received DLR: " . json_encode($dlr));
Check examples
directory for more details.
To run examples locally run from the command line
cd examples
./run_srv.sh
and then open http://localhost:8000/