Les développeurs s’intéressent le plus souvent aux providers des SMS internationaux comme Nexmo, Twillo ou que sais-je encore. Pourtant les providers locaux comme Orange dispose de Orange SMS API, une API ouverte aux développeurs permettant d’envoyer et recevoir les SMS aux opérateurs locaux.

Je vous montre dans la suite de ce billet comment envoyer les SMS à travers Orange SMS API. Comme langage, je veux utiliser PHP mais vous pouvez vous servir de votre langage de programmation préféré. Le plus important est que vous sachiez comment consommer une API REST.

Pourquoi Orange SMS API ?

Oui, vous avez en tout cas le choix en ce qui concerne les providers des SMS car ils en existent nombreux. L’API SMS d’Orange est local, c’est-à-dire l’utiliser c’est pour envoyer les SMS qu’aux numéros locaux. I’API est disponible à ce jour dans les pays suivants :

  • Botswana
  • Cameroun
  • Côte d’ivoire
  • Egypte
  • Guinée Conakry
  • Jordan
  • Mali
  • Niger
  • République Démocratique du Congo
  • Sénégal
  • Tunisie

orange sms afrique

Si vous utilisez par exemple l’API Orange SMS de la République Démocratique du Congo, vous n’aurez à envoyer les SMS qu’aux numéros des opérateurs de la RDC.

S’il faut revenir à la question sur pourquoi utiliser Orange comme provider des SMS, hormis le fait que vous ayez besoin d’envoyer les SMS qu’aux numéros locaux, il y a aussi :

  • Le Coût
  • La qualité
  • Le mode de paiement

Le coût trop compétitive

Envoyer un SMS avec Nexmo par exemple à destination de la RDC coûte 0.0663$. Avec Orange, c’est 40u pour 20 SMS. 40u équivaut à 0.4375$ en RDC. Ce qui avec un peu de mathématique fait 0.4375$ / 20 SMS qui équivaut à 0.021875$.

Partant de cette logique et du pays, voici la différence de coût de différents providers et leurs coûts par rapport à celui de l’API d’Orange pour les SMS :

Nb sms150100
Orange0.0219$1.09$2.19$
Nexmo0.0663$3.31$6.63$
Twillo0.0900$4.50$9.00$

Vous pouvez vérifier le coût de l’API Orange SMS (ici) et essayez de comparer selon votre pays.

La qualité au rendez-vous

J’ai eu à utiliser Nexmo dans un projet. J’avais du mal à savoir si c’était mon code qui avait des bugs car certains SMS arrivaient à destination et d’autres non.

En contactant le support de nexmo, je n’avais pas eu une explication claire sur la raison qui faisait que certains SMS n’arrivent pas à destination.

J’avais vite compris que cela peut être expliqué par l’utilisation perpétuelle et massive des providers internationaux à travers le monde causant ainsi parfois des surcharges de serveur. Pendant qu’avec Orange ou je dirais plutôt un provider local, ce genre de cas n’a que peu de chance de survenir.

Le mode de paiement de bundle accessible

Pour acheter par exemple les SMS Nexmo depuis la RDC, l’utilisateur ne pourrait payer que par virement bancaire et cela  commence à partir de 100$.

Avec Orange, vous pouvez acheter les SMS avec les unités disponible dans votre numéro de téléphone, vous pouvez utiliser Orange money si votre pays le permet ou payer avec PayPal.

Comment envoyer SMS avec l’API Orange

Comme j’avais dit plus haut, je veux utiliser PHP pour envoyer les SMS avec Orange API.

La première de chose à faire avant quoi que ce soit, vous devriez d’abord créer un compte Orange Developer.

Après que le compte soit créé, l’étape suivante consiste à créer une application. Rendez-vous dans la liste d’application et créez une nouvelle application.

 

orange developer api

Enfin, il reste juste à dire quels sont les API que l’application va utiliser. Dans notre cas, nous voulons nous servir de l’API SMS.

Pour cela, depuis la liste d’application, accédez dans l’application que vous venez de créer et descendez dans la section Subscribed APIs et cliquez sur Add an api. pour configurer l’API que vous voulez utiliser.

Et enfin, vous n’avez qu’à choisir dans la liste des API, celle qui correspond à ce que vous souhaitez utiliser. J’ai choisi l’API SMS DR Congo, vous savez ce que vous choisirez par rapport à votre cas.

Après avoir souscrit à l’API donnée, c’est le tour de le configurer. La configuration dans notre cas consiste à acheter les SMS. Il va falloir acheter les SMS. Cliquez sur le bouton configurer de l’application et suivez les étapes.

Enfin, le code !

Pour communiquer avec les API d’Orange, il va falloir s’authentifier d’abord en premier. Orange prend en charge l’authentification à deux pattes (2-legged oauth). Il se passe en deux temps :

  1. Effectuer la première requête d’authentification dans le endpoint https://api.orange.com/oauth/v2/token pour récupérer l’acces_token.
  2. Et enfin, à chaque requête effectuée dans l’API, par exemple lors de l’envoie d’un SMS, il faut envoyer l’entête d’autorisation avec l’accès token récupéré dans l’étape une.

Vous pouvez vous servir de CURL pour effectuer les requêtes HTTP avec PHP ou utiliser le package GuzzleHttp.

Dans le cadre de ce tutoriel, je veux utiliser un SDK PHP que j’ai développé. Il effectue toutes les opérations nécessaires pour envoyer un SMS. Libre à vous de faire selon ce que vous voulez.

Pour envoyer un SMS avec l’API Orange :

  1. Installer le SDK dans votre projet via composer
    composer require informagenie/orange-sms
  2. Après, vous avez besoin du client id et le client secret à retrouver dans les détails de l’application que vous avez créée juste avant.
    <?php
    require_once __DIR__.'/vendor/autoload.php';
    
    use Informagenie\OrangeSDK;
    $credential = array(
        'client_id' => 'Client ID',
        'client_secret' => 'Client Secret'
    );
    
    $sms = new OrangeSDK($credential);
    
    $response = $sms->message('Hello world !')
         ->from(24380000000)
         ->as('Informagenie')
         ->to(243970000000)
         ->send();
  3. Le destinataire reçoit instantanément le message une fois la requête traitée.

Vous pouvez envoyer jusqu’à 5 messages simultanés par seconde.

Les API SMS sont très pratiques pour la communication. Il fait parti des outils pratiques pour faire son marketing. Il est même plus pratique pour effectuer sa campagne électorale. Vous pouvez atteindre votre audience en faisant moins d’effort.

Et prend fin ce post. Des questions ou précisons ? Vous pouvez laisser un commentaire.

Catégorisé: