The MessageCloud Send PHP SDK provides a convenient way to interact with the MessageCloud Send API for sending SMS messages.
To use the MessageCloud Send PHP SDK in your project, follow these steps:
Install Composer if you haven't already:
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Create a composer.json file in your project directory and add the following dependency:
{
"require": {
"messagecloud/send-api-php": "^1.0"
}
}
Run Composer to install the dependencies:
composer install
If you already have composer in your project then it's as simple as this:
composer require messagecloud/send-api-php
To use the SDK, you need to create an instance of the Authentication class with your username and password:
use MessageCloud\Send\Authentication;
$authentication = new Authentication('your-username', 'your-password');
To send an SMS message using the SDK, create an instance of the Sms class and pass the required parameters:
use MessageCloud\Send\Sms;
$message = new Sms('1234567890', 'sender', 'Hello, world!');
Then, create an instance of the Client class and send the SMS:
use MessageCloud\Send\Client;
$client = new Client($authentication);
$response = $client->send($message);
if ($response->wasSuccessful()) {
echo "SMS sent successfully. ID: " . $response->getId();
} else {
echo "Failed to send SMS. Status: " . $response->getStatus();
}
To run unit tests for the SDK, you can use PHPUnit. Make sure you have PHPUnit installed:
composer require --dev phpunit/phpunit
Then, you can run the tests:
vendor/bin/phpunit
This project uses PHPStan and PHP CS Fixer for code quality checks. You can run them using the following commands:
To analyze code with PHPStan:
vendor/bin/phpstan analyse
To fix coding standards violations with PHP CS Fixer:
vendor/bin/php-cs-fixer fix --dry-run --stop-on-violation
If you find a bug or would like to contribute to this SDK, feel free to open an issue or submit a pull request.
This SDK is open-source software licensed under the BSD-2-Clause License. See the LICENSE file for more information.