Envoi de SMS en PHP : Bibliothèques API pour une intégration rapide
L'envoi de messages SMS reste l'un des moyens les plus fiables pour notifier les utilisateurs : confirmation de commande, authentification à deux facteurs, rappels d'événements. Pour PHP, il existe de nombreuses bibliothèques prêtes à l'emploi qui simplifient le travail avec les fournisseurs de SMS via leur API. Dans cet article, nous examinerons les solutions populaires, leurs méthodes d'installation et des exemples de code pour envoyer des messages.
Pourquoi utiliser une bibliothèque pour envoyer des SMS ?
Travailler manuellement avec les requêtes HTTP vers l'API de la passerelle SMS nécessite d'écrire une grande quantité de code standard : création des en-têtes, gestion des erreurs, manipulation du JSON/XML, vérification des statuts. Une bibliothèque prête à l'emploi prend en charge ces tâches, offrant une interface orientée objet propre. Cela accélère le développement et réduit le risque d'erreurs.
Bibliothèques populaires pour l'envoi de SMS en PHP
Le choix de la bibliothèque dépend du fournisseur de SMS utilisé. Examinons deux options populaires :
- Twilio PHP SDK – la bibliothèque officielle pour travailler avec Twilio. Prend en charge l'envoi de SMS, les appels vocaux, la vérification de numéro.
- SMS Aero PHP SDK – la bibliothèque pour le service russe SMS Aero. Permet d'envoyer des messages, de vérifier le solde, d'obtenir des statistiques.
Installation via Composer
La plupart des bibliothèques PHP modernes s'installent via Composer. Exécutez dans le terminal :
composer require twilio/sdkPour SMS Aero :
composer require sms-aero/sms-aero-phpAprès l'installation, incluez l'autoloader dans votre script :
require_once 'vendor/autoload.php';Exemple d'envoi de SMS via Twilio
Pour travailler avec Twilio, vous aurez besoin de votre Account SID et de votre Auth Token (disponibles dans la console Twilio). Exemple de code :
<?phprequire_once 'vendor/autoload.php';
use Twilio\\Rest\\Client;
$sid = "votre_account_sid";$token = "votre_auth_token";$twilio = new Client($sid, $token);
$message = $twilio->messages ->create( "+71234567890", // numéro du destinataire [ "from" => "+12345678901", // numéro de l'expéditeur (acheté chez Twilio) "body" => "Bonjour ! Ceci est un SMS de test depuis PHP." ] );
echo "Message envoyé. ID : " . $message->sid;?>En cas de succès, la méthode create() retourne un objet contenant les informations sur le message. En cas d'erreur, une exception TwilioException est levée.
Exemple d'envoi de SMS via SMS Aero
Pour le service russe SMS Aero, vous aurez besoin de votre email et de votre clé API. Exemple :
<?phprequire_once 'vendor/autoload.php';
use SmsAero\\SmsAeroClient;
$client = new SmsAeroClient('votre_email@example.com', 'votre_cle_api');
try { $response = $client->sendSms( '71234567890', 'Texte du message', 'NOM_EXPEDITEUR' // nom de l'expéditeur enregistré dans le service ); echo "SMS envoyé. ID : " . $response->id;} catch (Exception $e) { echo "Erreur : " . $e->getMessage();}?>La méthode sendSms() retourne un objet de réponse contenant le statut de livraison, l'ID du message et le solde.
Fonctionnalités principales des bibliothèques
- Envoi de SMS individuels et en masse – possibilité d'envoyer un seul message ou une liste de numéros.
- Vérification du statut de livraison – demande de statut par ID du message.
- Gestion des expéditeurs – enregistrement et choix du nom de l'expéditeur.
- Travail avec des modèles – pour certains fournisseurs, possibilité d'utiliser des modèles de messages prédéfinis.
- Solde et statistiques – obtention du solde actuel et des rapports
Aussi dans la bibliothèque
Planificateur de tâches sur Node.js (node-cron, node-schedule, Bull)
Bibliothèque kotlinx.serialization pour le traitement JSON en Kotlin
Rate Limiting dans Node.js : Guide complet pour protéger les API et gérer la charge
Travailler avec Excel en Go (Golang) : bibliothèques Excelize, xlsx, tealeg