PHP code example of aristide / nimbasms
1. Go to this page and download the library: Download aristide/nimbasms library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
aristide / nimbasms example snippets
use Nimbasms\Nimbasms\Facades\Nimbasms;
use Nimbasms\Nimbasms\Exceptions\NimbaSmsException;
try {
$account = Nimbasms::account();
} catch (NimbaSmsException $exception) {
report($exception);
}
$account = Nimbasms::account();
$account['sms_balance'];
$account['whatsapp_balance'];
Nimbasms::sendSms('624000000', 'Bonjour depuis Nimba SMS');
Nimbasms::sendSms(['624000000', '625000000'], 'Message groupé', 'MASOCIETE');
Nimbasms::sendWhatsApp('624000000', 'commande_confirmee', [
'Fodé',
'45 000 GNF',
]);
Nimbasms::messages()->send([
'channel' => 'whatsapp',
'to' => ['624000000'],
'template_name' => 'commande_confirmee',
'template_variables' => [
'body' => [
'1' => 'Fodé',
'2' => '45 000 GNF',
],
],
]);
Nimbasms::messages()->get('11111111-1111-1111-1111-111111111111');
$verification = Nimbasms::verifications()->request(
to: '624000000',
message: 'Votre code de vérification est <1234>',
expiryTime: 5,
attempts: 3,
codeLength: 4,
channels: ['sms', 'whatsapp'],
language: 'fr',
);
$result = Nimbasms::verifications()->check(
$verification['verificationid'],
'1234',
);
$result['status']; // approved, expired, too_many_attemps, ...
Nimbasms::contacts()->list(limit: 50, offset: 0);
Nimbasms::contacts()->create([
'name' => 'Utilisateur Test',
'numero' => '624000000',
'groups' => ['TestGroup'],
]);
Nimbasms::groups()->list();
Nimbasms::senderNames()->list();
Nimbasms::purchases()->list();
$extensions = Nimbasms::extensions();
$extension = $extensions->create([
'name' => 'Acme',
'category' => 'communication',
'description' => 'Intégration Acme',
'base_api_url' => 'https://api.acme.com',
'auth_type' => 'none',
'is_paid' => false,
]);
$extensions->updateLogo($extension['extensionid'], storage_path('app/logo.png'));
$extensions->publish($extension['extensionid']);
$actions = $extensions->actions($extension['extensionid']);
$actions->create([
'name' => 'Send',
'method' => 'POST',
'endpoint' => '/send',
'description' => 'Envoyer un message',
]);
use Illuminate\Http\Request;
use Nimbasms\Nimbasms\Facades\Nimbasms;
Route::post('/webhooks/nimbasms', function (Request $request) {
$payload = Nimbasms::parseWebhook($request->all());
// $payload->messageId, $payload->status, $payload->contact
return response()->json(['status' => 'OK']);
});
use Illuminate\Support\Facades\Http;
use Nimbasms\Nimbasms\Facades\Nimbasms;
Http::fake([
'https://api.nimbasms.com/v1/messages' => Http::response([
'messageid' => '11111111-1111-1111-1111-111111111111',
'message_cost' => 1,
'url' => 'https://api.nimbasms.com/v1/messages/11111111-1111-1111-1111-111111111111',
], 201),
]);
Nimbasms::sendSms('624000000', 'Test');
Http::assertSentCount(1);
bash
php artisan vendor:publish --tag="nimbasms-config"