goldspecdigital / voodoo-sms-sdk
An SDK to interact with the Voodoo SMS API.
Requires
- php: >=7.2
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- codedungeon/phpunit-result-printer: ^0.4.4
- phpunit/phpunit: ^6.5
- psy/psysh: ^0.8.16
- slevomat/coding-standard: ^4.1
- squizlabs/php_codesniffer: ^3.2
- vlucas/phpdotenv: ^2.4
This package is auto-updated.
Last update: 2024-10-28 00:31:07 UTC
README
PHP SDK for communicating with the Voodoo SMS API.
Getting Started
These instructions will get you up and running on your local machine and a development environment.
Prerequisites
- PHP: >=7.2
Installing
Simply pull in the package in with composer:
$ composer require goldspecdigital/voodoo-sms-sdk
Examples
Send an SMS
<?php use GoldSpecDigital\VoodooSmsSdk\Client; $client = new Client('username', 'password', 'CompanyName'); $response = $client->send('This is a test message', '07712345678'); var_dump($response); /* { "result": 200, "resultText": "200 OK", "reference_id": ["A3dads..."] } */
Get the Delivery Status for an SMS
<?php use GoldSpecDigital\VoodooSmsSdk\Client; $client = new Client('username', 'password', 'CompanyName'); $response = $client->getDeliveryStatus('A3dads...'); var_dump($response); /* { "result": "200 OK", "reference_id": "A3dads...", "message": "This is a test message", "delivery_status": "Delivered", "delivery_datetime": "2017-12-28 00:06:09" } */
Running the tests
To run the test you will need to have Voodoo SMS credentials stored in a .env
file placed in the project root. An example file is provided for you with the keys required: .env.example
.
You can run the tests in an environment running PHP >=7.2 with PHP Unit:
$ vendor/bin/phpunit
And coding style tests
This project follows PSR1 and PSR2 coding standards as well as enabling strict types on all PHP files.
Before making any commits, make sure your code passes the linter by running:
$ vendor/bin/phpcs
Built With
Contributing
Feel free to issue a pull request, although any requests that fail PHPUnit or the linter will be automatically rejected.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
License
This project is licensed under the MIT License - see the LICENSE.md file for details