Le modeste SMS a du punch.

Les gens consultent leur téléphone en permanence et 98 % des textes sont lus dans les trois minutes, contre 20 % pour les courriels.

Vous pouvez doubler les avantages de la messagerie texte en reprogrammant les SMS pour qu’ils soient envoyés à une date et une heure spécifiques. En d’autres termes, vous pouvez programmer les messages pour qu’ils soient prêts à être envoyés et oubliés – et votre équipe vous remerciera d’avoir réduit son temps d’administration.

Vous pouvez facilement mettre en place vos messages texte programmés grâce à notre API SMS. Il s’agit d’un moyen rapide d’envoyer des messages partout dans le monde par des voies directes et fiables.

Bonne nouvelle pour les développeurs, notre API prend en charge de nombreux langages de programmation, y compris PHP. Grâce à notre API REST, vous pouvez envoyer jusqu’à 1 000 SMS par appel API ou envoyer des SMS à une liste de 20 000 abonnés par appel API pour des campagnes plus importantes. Découvrez comment utiliser notre API REST pour envoyer des SMS programmés en PHP.


Pourquoi programmer des SMS ?

Vous n’êtes pas obligé de programmer des messages pour ces cas d’utilisation spécifiques, mais voici des exemples de messages qui fonctionnent mieux lorsque vous les paramétrez pour qu’ils soient envoyés automatiquement.

  • Campagnes promotionnelles : Par exemple, vous pouvez programmer vos textes du vendredi noir ou du lundi cybernétique plusieurs mois à l’avance.
  • Messages d’anniversaire : Les clients les apprécient et vous pouvez les envoyer chaque année.
  • Notifications post-événement : Programmez-les vingt-quatre heures après l’événement pour obtenir un retour d’information ou pour promouvoir le prochain événement.
  • Rappels de réservation/rendez-vous : Programmez l’envoi de ces rappels plusieurs fois avant un événement afin de réduire les absences.

Comment envoyer des SMS programmés en PHP

Notre documentation sur l’API SMS propose des instructions simples pour intégrer les SMS dans votre application PHP. Pour mettre en œuvre des messages programmés en PHP à l’aide de notre API, suivez les étapes ci-dessous. Vous pouvez trouver un exemple d’application ici si nécessaire.

Créez un compte ClickSend gratuit

Si vous ne l’avez pas encore fait, vous devez ouvrir un compte.

Une fois que vous vous serez inscrit, nous vous enverrons un code PIN d’activation par SMS afin de confirmer que vous êtes bien le propriétaire du numéro de téléphone mobile que vous avez fourni lors de l’inscription.

Saisissez le code PIN d’activation sur la page de vérification, puis cliquez sur le bouton Soumettre. Vous pourrez accéder au tableau de bord de votre compte ClickSend une fois que vous aurez été vérifié :

Capture d'écran du tableau de bord ClickSend

Une fois inscrit, vous aurez accès à toute une série d’outils et à des crédits gratuits à utiliser pour les tests.

Copiez votre clé API

Ensuite, copiez votre clé API dans la zone ” API Credentials”. Vous avez besoin de la clé API pour valider votre compte avant d’utiliser l’un de nos outils ou l’une de nos API.

Pour récupérer vos identifiants API, accédez à l’option déroulante Développeurs de votre tableau de bord et cliquez sur Identifiants API. Les clés API accessibles pour chaque utilisateur de votre compte seront affichées sur la page Sous-comptes:

Capture d'écran du tableau de bord ClickSend de la page des sous-comptes pour la clé API

Installez la bibliothèque PHP

Nous proposons une bibliothèque PHP qui peut être utilisée pour intégrer des services dans votre application PHP. Assurez-vous d’avoir installé PHP 5.5 ou une version ultérieure avant de commencer.

Exécutez la commande suivante dans le terminal à l’intérieur du répertoire de votre projet PHP pour installer la bibliothèque via Composer :

composer require clicksend/clicksend-php

La commande installera également toutes les dépendances nécessaires à la bibliothèque PHP :

Info from https://repo.packagist.org: #StandWithUkraine
Using version ^5.0 for clicksend/clicksend-php
- composer.json has been created
- Running composer update clicksend/clicksend-php
- Loading composer repositories with package information
- Updating dependencies
- Lock file operations: 9 installs, 0 updates, 0 removals
  - Locking clicksend/clicksend-php (v5.0.75)
  - Locking guzzlehttp/guzzle (7.4.3)
  - Locking guzzlehttp/promises (1.5.1)
  - Locking guzzlehttp/psr7 (2.3.0)
  - Locking psr/http-client (1.0.1)
  - Locking psr/http-factory (1.0.1)
  - Locking psr/http-message (1.0.1)
  - Locking ralouphie/getallheaders (3.0.3)
  - Locking symfony/deprecation-contracts (v2.5.1)
- Writing lock file
- Installing dependencies from lock file (including require-dev)
- Package operations: 9 installs, 0 updates, 0 removals
  - Downloading guzzlehttp/psr7 (2.3.0)
  - Downloading guzzlehttp/guzzle (7.4.3)
  - Downloading clicksend/clicksend-php (v5.0.75)
  - Installing symfony/deprecation-contracts (v2.5.1): Extracting archive
  - Installing psr/htto-message (1.0.1): Extracting archive
  - Installing psr/http-client (1.0.1): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing sr/http-factory (1.0.1): Extracting archive
  - Installing guzzlehtto/psr7 (2.3.0): Extracting archive
  - Installing guzzlehttp/promises (1.5.1): Extracting archive
  - Installing guzzlehttp/auzzle (7.4.3): Extracting archive
  - Installing clicksend/clicksend-pho (v5.0.75): Extracting archive
- 2 package suggestions were added by new dependencies, use
  "composer suggest"
  to see details.
- Generating autoload files
- 4 packages you are using are looking for funding.
  Use the
  composer fund' command to find out more!

Ecrivez le code PHP pour l’envoi de messages SMS

Une fois la bibliothèque installée, créez un fichier PHP nommé schedule.php dans le répertoire de votre projet. Vous utiliserez notre API pour programmer un message dans ce fichier.

Ajoutez le code suivant au fichier PHP, conformément à la documentation:

<?php
require_once(__DIR__ . '/vendor/autoload.php');  // #1

// Configure HTTP basic authorization: BasicAuth  #2 
$config = ClickSend\Configuration::getDefaultConfiguration()
    ->setUsername('USERNAME')
    ->setPassword('API KEY');

$apiInstance = new ClickSend\Api\SMSApi(new GuzzleHttp\Client(), $config);  // #3

$message = new \ClickSend\Model\SmsMessage();  // #4
$message->setBody("We have a new offer for the upcoming holiday season. Visit our website to view the offers of various products you can buy.");  // #5
$message->setTo("0451111111");  // #6
$message->setSchedule("1655206230");  // #7

// \ClickSend\Model\SmsMessageCollection | SmsMessageCollection model
$sms_messages = new \ClickSend\Model\SmsMessageCollection();  // #8
$sms_messages->setMessages([$message]);

try {  // #9
    $result = $apiInstance->smsSendPost($sms_messages);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling SMSApi->smsSendPost: ', $e->getMessage(), PHP_EOL;
}
?>

Le code ci-dessus effectue les opérations suivantes, en fonction des numéros de commentaires :

  1. Inclut le fichier autoloader de Composer qui chargera la bibliothèque que vous avez installée.
  2. Configure l’authentification de base en saisissant votre nom d’utilisateur et votre clé API, que vous avez obtenus précédemment et que vous devez placer dans le code.
  3. Instancie un nouvel objet API pour se connecter à l’API ClickSend et traiter les demandes d’API.
  4. Crée un nouvel objet message à planifier à l’aide de la méthode SmsMessage().
  5. Définit le corps du message que vous souhaitez programmer.
  6. Définit le numéro de téléphone pour l’envoi du SMS. Le numéro ci-dessus est l’un des nombreux exemples de numéros de téléphone que vous pouvez utiliser.
  7. Définit la date et l’heure du SMS programmé, qui doivent être au format Unix. ClickSend utilise ce format car il s’agit du temps universel, qui est donc le même pour tout le monde, quel que soit le fuseau horaire.
  8. Crée un nouveau tableau d’éléments SmsMessage et affecte l’objet message que vous avez créé au nouveau SmsMessageCollection.
  9. Envoie le message en utilisant l’instance de l’API. S’il est exécuté avec succès, il renvoie le résultat au format JSON ; dans le cas contraire, il renvoie un message d’exception.

Exécutez le code

Exécutez la commande suivante dans le terminal lorsque vous êtes dans le répertoire du projet pour exécuter le code PHP dans le fichier schedule.php:

php schedule.php

Évaluer les résultats

Vous devriez voir le résultat suivant dans le terminal, formaté comme une chaîne JSON :

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "Messages queued for delivery.",
  "data": {
    "total_price": 0.1225,
    "total_count": 1,
    "queued_count": 1,
    "messages": [
      {
        "direction": "out",
        "date": 1654770216,
        "to": "+255737161310",
        "body": "We have a new offer for the upcoming holiday season. Visit our website to view the offers of various products you can buy.",
        "from": "ClickSend",
        "schedule": "1655206230",
        "message_id": "14B6C1C7-262F-4E63-91C4-7265F0E78EE7",
        "message_parts": 1,
        "message_price": "0.1225",
        "from_email": null,
        "list_id": null,
        "custom_string": "",
        "contact_id": null,
        "user_id": 335017,
        "subaccount_id": 380390,
        "country": "TZ",
        "carrier": "Tanzania Telecom",
        "status": "SUCCESS"
      }
    ],
    "_currency": {
      "currency_name_short": "USD",
      "currency_prefix_d": "$",
      "currency_prefix_c": "¢",
      "currency_name_long": "US Dollars"
    }
  }
}

Dans le résultat ci-dessus, "http_code": 200 et "response_code": "SUCCESS" indiquent que la requête a été complétée avec succès. Le response_msg vous indique que les messages sont en file d’attente et le reste de la chaîne indique les données qui ont été soumises lors de l’exécution du code PHP.

Annuler le message SMS programmé

Si vous souhaitez annuler un message texte planifié parce qu’un événement prévu est passé ou qu’une vente est terminée, vous pouvez le faire facilement.

Pour ce faire, vous devez fournir l’ID du message dans la méthode smsCancelByMessageIdPut(). Créez un fichier PHP appelé cancel.php et ajoutez le code suivant :

<?php
require_once(__DIR__ . '/vendor/autoload.php');  // #1

// Configure HTTP basic authorization: BasicAuth  #2 
$config = ClickSend\Configuration::getDefaultConfiguration()
    ->setUsername('USERNAME')
    ->setPassword('API_KEY');

$apiInstance = new ClickSend\Api\SMSApi(new GuzzleHttp\Client(), $config);  // #3
$message_id = "14B6C1C7-262F-4E63-91C4-7265C0E78JE7";  // #4

try {
    $result = $apiInstance->smsCancelByMessageIdPut($message_id);  // #5
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling SMSApi->smsCancelByMessageIdPut: ', $e->getMessage(), PHP_EOL;
}
?>

Le code ci-dessus effectue les opérations suivantes, en fonction du numéro de commentaire :

  1. Inclut le fichier autoloader de Composer qui chargera la bibliothèque que vous avez installée.
  2. Configure l’authentification de base en entrant votre nom d’utilisateur et votre clé API.
  3. Instancie un nouvel objet API pour se connecter à l’API ClickSend afin de traiter les demandes.
  4. Ajoute l’ID du message que vous souhaitez annuler sous forme de chaîne de caractères.
  5. Annule le SMS programmé en utilisant la méthode smsCancelByMessageIdPut().

Après avoir ajouté votre nom d’utilisateur, votre clé API et votre ID de message au code, exécutez la commande suivante dans le terminal :

php cancel.php

Les résultats seront affichés au format JSON après l’exécution du code PHP, indiquant que la demande d’annulation du SMS programmé a abouti :

{
  "http_code": 200,
  "response_code": "SUCCESS",
  "response_msg": "Scheduled SMS message has been cancelled.",
  "data": []
}

Configuration facile pour les messages “set-and-forget” (fixer et oublier)

Les messages programmés sont utiles pour aider les entreprises à interagir avec leur public et à augmenter la productivité des équipes internes. Nous aimons travailler avec les développeurs et notre documentation API très appréciée facilite la mise en place et la programmation.

De plus, nous nous intégrons à plus de 900 applications commerciales parmi les plus utilisées au monde, y compris Zapier, Salesforce, Shopify et WordPress. Inscrivez-vous pour découvrir à quel point il est facile d’ajouter des SMS personnalisés et programmés à vos systèmes basés sur PHP.


A propos de l’auteur

Davis David auteur

Davis David 🇹🇿
Twitter : @Davis_McDavid

Davis David est un data scientist chez Dlab avec une formation en informatique. Il est passionné par l’intelligence artificielle, l’apprentissage automatique, l’apprentissage profond et le développement de logiciels. Davis est le coorganisateur de rencontres, d’ateliers et d’événements sur l’IA dans le but de construire une communauté de scientifiques de données en Tanzanie pour résoudre les problèmes locaux. Il est également rédacteur de contenu sur des plateformes telles que Medium, Hackernoon et FreecodeCamp.