Messente Package for Laravel
, (*1)
Introduction
This is a simple Laravel Service Provider providing access to the Messente API, (*2)
Installation
To install the PHP client library using Composer:, (*3)
composer require jcsofts/laravel-messente
Alternatively, add these two lines to your composer require section:, (*4)
{
"require": {
"jcsofts/laravel-messente": "^1.0"
}
}
Laravel 5.5+
If you're using Laravel 5.5 or above, the package will automatically register the Messente provider and facade., (*5)
Laravel 5.4 and below
Add Jcsofts\LaravelMessente\MessenteServiceProvider to the providers array in your config/app.php:, (*6)
'providers' => [
// Other service providers...
Jcsofts\LaravelMessente\MessenteServiceProvider::class,
],
If you want to use the facade interface, you can use the facade class when needed:, (*7)
use Jcsofts\LaravelMessente\Facade\Messente;
Or add an alias in your config/app.php:, (*8)
'aliases' => [
...
'Messente' => Jcsofts\LaravelMessente\Facade\Messente::class,
],
Using Laravel-Messente with Lumen
laravel-messente works with Lumen too! You'll need to do a little work by hand
to get it up and running. First, install the package using composer:, (*9)
composer require jcsofts/laravel-messente
Next, we have to tell Lumen that our library exists. Update bootstrap/app.php
and register the MessenteServiceProvider:, (*10)
$app->register(Jcsofts\LaravelMessente\MessenteServiceProvider::class);
Finally, we need to configure the library. Unfortunately Lumen doesn't support
auto-publishing files so you'll have to create the config file yourself by creating
a config directory and copying the config file out of the package in to your project:, (*11)
mkdir config
cp vendor/jcsofts/laravel-messagete/config/messente.php config/messente.php
At this point, set MESSENTE_API_USERNAME and MESSENTE_API_PASSWORD in your .env file and it should
be working for you. You can test this with the following route:, (*12)
try{
$mid=Messente::send('Hello word', '+8618903859445');
echo $mid;
}catch(Exception $e){
echo $e->getMessage();
}
Configuration
You can use artisan vendor:publish to copy the distribution configuration file to your app's config directory:, (*13)
php artisan vendor:publish
Then update config/messente.php with your credentials. Alternatively, you can update your .env file with the following:, (*14)
MESSENTE_API_USERNAME=API Username
MESSENTE_API_PASSWORD=API Password
MESSENTE_SENDER=
Usage
To use the Messente Client Library you can use the facade, or request the instance from the service container:, (*15)
try{
$messageId=Messente::send('Hello word', '+8618903859445');
echo $messageId;
}catch(Exception $e){
echo $e->getMessage();
}
Or, (*16)
$messente = app('Messente');
$messageId=$messente->send('Hello word', '+8618903859445');