Aucun résultat

Installation

Composer

Le moyen le plus simple d'installer bulkgate/php-sdk dans un projet consiste à utiliser Composer en ligne de commande.

composer require bulkgate/php-sdk

Une fois le paquet installé, il suffit d'inclure l'autoloader.

require_once __DIR__ . '/vendor/autoload.php'; use BulkGate\Sdk\Connection\ConnectionStream; use BulkGate\Sdk\MessageSender; use BulkGate\Sdk\Scheduler\Simple; use BulkGate\Sdk\Configurator\ViberConfigurator;

Pour envoyer des messages, vous avez besoin d'une instance de la classe BulkGate\Sdk\MessageSender, qui dépend d'une instance de la classe BulkGate\Sdk\Connection\Connection. Découvrez comment obtenir les données d'accès à l'API.

$connection = new ConnectionStream(/*application_id: */ 451, /*application_token:*/ 'NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj'); $sender = new MessageSender($connection);

Vous êtes maintenant prêt à envoyer un message.

$message = new Sms('420777777777', 'test message'); $sender->send($message);

La méthode send() envoie le message $message.

Le résultat de l'envoi

La méthode send() renvoie le même message, avec son statut renseigné. Vous lisez le résultat dans ses propriétés publiques :

$message = $sender->send(new Sms('420777777777', 'test message')); $message->status; // 'accepted', 'sent', 'scheduled' ou 'error' $message->message_id; // ID du message $message->part_id; // ID des différentes parties du message $message->error; // description de l'erreur, sinon null

Pour un message groupé, le statut est renseigné séparément pour chaque message — parcourez-le avec une boucle foreach.

Gestion des erreurs

L'envoi peut se terminer par une exception. Toutes héritent de BulkGate\Sdk\SdkException :

Exception Quand elle se produit
ConnectionException L'API n'a pas pu être jointe
ApiException L'API a renvoyé une erreur (par exemple des identifiants d'accès invalides)
SenderException Un type de message inconnu a été transmis à l'expéditeur
InvalidStateException Une valeur invalide — par exemple un code ISO de pays ou une unité du planificateur
ChannelException Une erreur dans la configuration des canaux d'un message multicanal
try { $sender->send($message); } catch (BulkGate\Sdk\SdkException $e) { // journaliser $e->getMessage() }

Configuration facultative

$sender->setTag('your identificator');

Si vous souhaitez utiliser des numéros de téléphone au format national, vous devez définir un pays par défaut.

$sender->setDefaultCountry('sk');

Vous pouvez ajouter des configurateurs à l'expéditeur.

$viber_configurator = new ViberConfigurator('Sender'); $sender->addSenderConfigurator($viber_configurator);

Pour la planification, vous pouvez ajouter une instance de BulkGate\Sdk\Scheduler\Scheduler.

$scheduler = new Simple(new DateTime('2022-05-14 20:00:00')); $sender->setScheduler($scheduler);
Cette page vous a-t-elle été utile ?