Bonjour, bienvenue dans la documentation de la bibliothèque API Spryng PHP. Ce guide contient des guides d’utilisation de la bibliothèque. Le PHPDOC complet peut être trouvé ce référentiel.

Installation et initialisation

Utilisation de Composer

La façon la plus simple d’installer la bibliothèque est d’utiliser un compositeur :

composer require spryng/spryng-api-http-php

Quand l’installation est terminée, vous pouvez initialiser Spryng comme cela :

require ( 'vendor/autoload.php' );
 use SpryngApiHttpPhp\Client;
 $spryng = new Client('username', 'password', 'My Company');

Sans compositeur

Si vous n’utilisez pas encore de compositeur, vous pouvez utiliser l’autochargeur :

$ git clone https://github.com/spryng/SpryngApiHttpPhp.git
require ( 'SpryngApiHttpPhp/src/Spryng/Api/Autoloader.php' );
 use SpryngApiHttpPhp\Client;
 $spryng = new Client( 'username', 'password', 'My Company' );

Envoyer un SMS

Pour envoyer un SMS, vous devrez utiliser la méthode$spryng->sms->send() Avec les paramètres suivants :

  • $recipient Numéro de téléphone avec lequel vous envoyez les SMS.
  • $body Corps du SMS.
  • $options Des paramètres supplémentaires comme “allowlong” et “route”.

Options

Il y a de nombreuses options que vous pouvez spécifier avec vos propres requêtes. Les conditions pour ces options sont disponibles dans la documentation générale.

    • route Entrer la route assignée à votre compte.
    • reference Une référence facultative pour les rapports de livraison.
    • allowlong Que vous souhaitiez autoriser des SMS longs ou non. Ecrit par vrai ou faux.

Example concret

require ( 'vendor/autoload.php' );

use SpryngApiHttpPhp\Client;
use SpryngApiHttpPhp\Exception\InvalidRequestException;

$spryng = new Client('username', 'password', 'My Company');

try {
    $spryng->sms->send('33612345678', 'A sample message!', array(
        'route' => 'business',
        'allowlong' => true,
        'reference' => 'ABC123456789')
    );
}
catch (InvalidRequestException $e)
 {
    echo $e->getMessage();
 }

Requête de solde créditeur

En plus de la capacité d’envoyer des SMS, il est aussi possible de demander votre solde créditeur actuel. Cette méthode ne requiert aucun paramètre et peut être utilisée comme cela :

require ( 'SpryngApiHttpPhp/src/Spryng/Api/Autoloader.php' );
use SpryngApiHttpPhp\Client;
$spryng = new Client( 'username', 'password', 'My Company' );
echo 'Huidige balans: ' . $spryng->sms->checkBalance();

API

Le SMS-MT HTTP API de Spryng assiste le HTTP POST avec un type de contenu ‘application/x-www-form-urlencoded’ via HTTPS. Pour plus d’informations sur le SMS-MT HTTP API de Spryng envoyez un mail à notre support technique à info@spryng.fr.

Connexion à la passerelle

Pour soumettre un SMS, une demande HTTP POST peut être réalisée à l’adresse suivante : https://api.spryngsms.com/api/send.php

 

Paramètres

Paramètre
USERNAME Choisi par l’utilisateur lorsqu’il s’inscrit sur http://www.spryng.fr
SECRET Généré par l’utilisateur sur sa page de profil sur https://login.spryngsms.com/portal/account
REFERENCE Référence unique pour les rapports de livraison
DESTINATION Numéro de destinataire
SENDER Adresse de l’expéditeur
BODY Contenu du SMS
SERVICE Etiquette de référence qui peut être ajoutée afin de différencier les utilisateurs finaux
ROUTE Pour sélectionner la route Spryng Business, Spryng Economy ou un route spécial
ALLOWLONG Si vous souhaitez envoyer un SMS long

Username

Choisi par l’utilisateur lorsqu’il s’inscrit sur  http://www.spryng.fr

Option
Requis oui
Type Alphanumerique, Cas sensible
Longueur min 2
Longueur max 32
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple USERNAME=username

Secret

Généré par l’utilisateur sur sa page de profil sur https://login.spryngsms.com/portal/account

Option
Requis oui
Type Alphanumérique et numérique, Cas sensible
Longueur min 6
Longueur max 32
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple SECRET=secret

Reference

Option
Requis Seulement quand vous souhaitez recevoir des rapports de livraison
Type Alphanumerique
Longueur min 1
Longueur max 256
Valeurs <na>
Valeur par défaut <none>
Exemple REFERENCE=abc123
Remarque doit être unique

Destination

Numéro de destinataire

Option
Requis oui
Type MSISDN-numerique ( format international sans “00” ou
“+”)
Longueur min 1 MSISDN
Longueur max 1.000 MSISDN
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeurs par défaut <none>
Exemple DESTINATION=33641041106,33612345678
Remarques Pour plus de détails sur la gestion des erreurs voyez “Return Values” en bas de cette page

Sender

Adresse de l’expéditeur

Option
Requis oui
Type Numerique ou Alphanumerique
Longueur min 3
Longueur max 14 pour Numerique ou 11 pour Alphanumerique
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeurs par défaut <none>
Exemple SENDER=0033641041106
Remarques Pour plus de détails sur la gestion des erreurs voyez “Return Values” en bas de cette page.

Body

Contenu du SMS

Option
Requis oui
Type GSM 7-bit alphabet pour messages
Longueur min 1
Longueur max 160 carac pour le message (défaut : ALLOWLONG=0) 612 carac (ALLOWLONG=1)
Lorsqu’on on utilise le sms long, le système, divisera automatiquement votre message en messages de 153 caractères maximum par SMS.
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur de défaut <none>
Exemple BODY=This%20is%20a%20test%20SMS
Remarques Pour plus de détails sur les caractères voyez “Field types” en bas de cette page

Service

Une étiquette de référence peut être utilisée pour créer des statistiques de filtrages

Option
Requis non
Type Alphanumerique
Longueur min 1
Longueur max 10
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur de défaut <none>
Exemple SERVICE=Client1

Route

Afin de sélectionner la route Spryng Business, Spryng Economy ou pour utilisateur spécifique.

Option
Requis oui
Type Prédéfini
Longueur min <na>
Longueur max <na>
Valeur min <na>
Valeur max <na>
Valeurs BUSINESS, ECONOMY, 0-9 (utilisateur route spécifique)
Valeur par défaut BUSINESS
Exemple ROUTE=BUSINESS

Allowlong

Si vous souhaitez envoyer un SMS long

Option
Requis Seulement quand vous souhaitez envoyer SMS Long
Type Prédéfini
Longueur min <na>
Longueur max <na>
Valeur min <na>
Valeur max <na>
Valeurs 0,1
Valeur par défaut 0
Exemple ALLOWLONG=1
Remarques Lorsqu’on on utilise le sms long, le système, divisera automatiquement votre message en messages de 153 caractères maximum par SMS.

Return values

Valeur de retour
1 Reçu avec succès
100 Paramètre manquant
101 Nom d’utilisateur trop court
102 Nom d’utilisateur trop long
103 Mot de passe trop court
104 Mot de passe trop long
105 Destinataire trop court
106 Destinataire trop long
107 Expéditeur trop long
108 Expéditeur trop court
109 Corps du message trop court
110 Corps du message trop long
200 Erreur de sécurité
201 Route inconnue
202 Violation d’accès à une route
203 Crédits insuffisants
800 Erreur technique

Delivery reports

Vous pouvez configurer vos rapports de livraisons en vous connectant sur votre compte sur http://www.spryng.fr et en sélectionnant le menu ‘Paramètre’ dans votre tableau de bord SMS. Ici, vous pouvez y entrer l’url de votre script (servlet, php script, perl, etc…) sur lequel vous souhaitez recevoir vos rapports de livraison. Le script a besoin de deux paramètres, ils seront envoyés via un HTTP GET. Si vous voulez un rapports de livraison vous ne devriez pas spécifier  plus d’un DESTINATAIRE dans la demande. Les valeurs de statut suivantes vous seront envoyées :

Valeurs des statuts
10 Délivré
20 Non délivré
30 Envoyé

Exemple : REFERENCE=abc123&STATUS=10

“La requête HTTP effectuée par Spryng doit recevoir une réponse de votre serveur avec un code d’état de 200, ce qui signifie que le message a été accepté avec succès par votre système. Si le serveur HTTP ne peut pas être atteint et renvoie par exemple 500 erreur interne du serveur Spryng suppose que le message n’a pas été accepté avec succès par votre système et la requête sera réessayée une fois par minute. La requête sera effectuée sous une durée de 24 heures.

Field types

Numerique : caractères 0 à 9 Alphanumerique : caractère de l’ISO-8859-1 MSISDN-numerique caractères 0 à 9 GSM 7-bit alphabet (permet les caractères  dans les messages) : Les caractères ‘a‘ à ‘z‘, ‘A‘ à ‘Z‘,
0‘ à ‘9‘, saut de ligne, retour à la ligne et
@£$¥èéùìòÇØøÅå_€ÆæßÉ!”#¤%&'()*+,-./:;<=>?¡ÄÖÑܧ¿äöñüà
Pour utiliser le signe utilisez le %80

Credit amount API

POST https://api.spryngsms.com/api/check.php

Installation & Initialisation

Afin d’intégrer le plus simplement notre API à votre environnement C#/.NET, utilisez notre bibliothèque C#. Rendez-vous directement ici.
Vous pouvez utiliser NuGet pour installer rapidement la bibliothèque :

Install-Package SpryngApiHttpDotNet

Pour utiliser le HTTP API de Spryng vous devriez d’abord créer un nouvelle exemple de SpryngHttpClient :

SpryngHttpClient client = new SpryngHttpClient(username, password);

 

Envoyer un SMS

Pour envoyer un SMS, vous devez créer un objet SmsRequest. Vous pouvez en créer un comme ceci :

SmsRequest request = new SmsRequest()
{
    Destinations = new string[] { "33612345678", "33698765421" },
    Sender = "Spryng",
    Body = "This is a Test SMS."
};

Vous pouvez maintenant envoyer un SMS utilisant le client :

try
{
    client.ExecuteSmsRequest(request);
    Console.WriteLine("SMS has been send!");
}
catch (SpryngHttpClientException ex)
{
    Console.WriteLine("An Exception occured!\n{0}", ex.Message);
}

L’API fournit également une mise en oeuvre Async qui peut être utilisée de la même façon qu’un API synchrone :

await client.ExecuteSmsRequestAsync(request);

Options requête sms

Il y a de nombreuses propriétés disponibles dans le SmsRequest qui peuvent être changés.

  • Destinations Tableau de série de numéros de téléphone auquel vous envoyez des SMS.
  • Body Corps du sms.
  • Sender Adresse d’origine, telle que votre nom d’entreprise.
  • Route Indique si il faut utiliser la Spryng Businees, Spryng Economy ou une route personnalisée. Fait défaut à business.
  • Reference Une option facultative pour les rapports de livraisons.
  • AllowLong Indique si vous souhaitez permettre les SMS long ou non. Fait défaut à False.

 

Requête de solde créditeur

Il est aussi possible de demander le compte de solde créditeur utilisé par le client. Cette méthode est disponible synchrone et asynchrone.

// Synchronous
double remainingCredits = client.GetCreditAmount();

// Asynchronous
double remainingCredits = await client.GetCreditAmountAsync();

 

API

Le SMS-MT HTTP API de Spryng assiste le HTTP POST avec un type de contenu ‘application/x-www-form-urlencoded’ via HTTPS. Pour plus d’informations sur le SMS-MT HTTP API de Spryng envoyez un mail à notre support technique à info@spryng.fr.

Connexion à la passerelle

Pour soumettre un SMS a une demande HTTP POST peut être réalisé à l’adresse suivante : https://api.spryngsms.com/api/send.php

 

Paramètres

Paramètre
USERNAME Choisi par l’utilisateur lorsqu’il s’inscrit sur http://www.spryng.fr
SECRET Généré par l’utilisateur sur sa page de profil sur https://login.spryngsms.com/portal/account
REFERENCE Référence unique pour les rapports de livraison
DESTINATION Numéro de destinataire
SENDER Adresse de l’expéditeur
BODY Contenu du SMS
SERVICE Etiquette de référence qui peut être ajoutée afin de différencier les utilisateurs finaux
ROUTE Pour sélectionner la route Spryng Business, Spryng Economy ou un route spécial
ALLOWLONG Si vous souhaitez envoyer un SMS long

Username

Choisi par l’utilisateur lorsqu’il s’inscrit sur http://www.spryng.fr

Option
Requis oui
Type Alphanumerique, Cas sensible
Longueur min 2
Longueur mac 32
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple USERNAME=username

Secret

Généré par l’utilisateur sur sa page de profil sur https://login.spryngsms.com/portal/account

Option
Requis oui
Type Alphanumérique et numérique, Cas sensible
Longueur min 6
Longueur max 32
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur de défaut <none>
Exemple SECRET=secret

Reference

Option
Requis Seulement si vous souhaitez recevoir les rapports de livraison
Type Alphanumerique
Longueur min 1
Longueur max 256
Valeurs <na>
Valeur de défaut <none>
Exemple REFERENCE=abc123
Remarques doit être unique

Destination

Numéro de destinataire

Option
Requis oui
Type MSISDN-numerique (format international  sans “00” ou
“+”)
Longueur min 1 MSISDN
Longueur max 1.000 MSISDN
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple DESTINATION=33641041106,33612345678
Remarques Pour plus de détails sur la gestion des erreurs voyez “Return Values” en bas de cette page.

Sender

Adresse de l’expéditeur

Option
Requis oui
Type Numerique ou Alphanumerique
Longueur min 3
Longueur max 14 pour Numerique ou 11 pour Alphanumerique
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple SENDER=0033641041106
Remarques Pour plus de détails sur la gestion des erreurs voyez “Return Values” en bas de cette page.

Body

Contenu du SMS

Option
Requis oui
Type GSM 7-bit alphabet pour messages de texte
Longueur 1
Max length 160 carac par messages (défaut : ALLOWLONG=0) 612 carac (ALLOWLONG=1)
Lorsqu’on on utilise le sms long, le système, divisera automatiquement votre message en messages de 153 caractères maximum par SMS.
Valeur min <na>
Valeur max <na>
Valeur <na>
Valeur par défaut <none>
Exemple BODY=This%20is%20a%20test%20SMS
Remarques Pour plus de détails sur les caractères voyez “Field types” en bas de cette page.

Service

Une étiquette de référence peut être utilisée pour créer des statistiques de filtrages

Option
Requis non
Type Alphanumerique
Longueur min 1
Longueur max 10
Valeur min <na>
Valeur max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple SERVICE=Client1

Route

Afin de sélectionner la route Spryng Business, Spryng Economy ou pour utilisateur spécifique.

Option
Requis oui
Type Prédéfini
Longueur min <na>
Longueur max <na>
Valeur min <na>
Valeur max <na>
Valeurs BUSINESS, ECONOMY, 0-9 (utilisateur route spécifique)
Valeur par défaut BUSINESS
Exemple ROUTE=BUSINESS

Allowlong

Si vous souhaitez envoyer un SMS long

Option
Requis Seulement si vous souhaitez envoyer un SMS long
Type Prédéfini
Longueur min <na>
Longueur max <na>
Valeur min <na>
Valeur max <na>
Valeurs 0,1
Valeur par défaut 0
Exemple ALLOWLONG=1
Remarques Lorsqu’on on utilise le sms long, le système, divisera automatiquement votre message en messages de 153 caractères maximum par SMS.

Return values

Valeur de retour
1 Reçu avec succès
100 Paramètre manquant
101 Nom d’utilisateur trop court
102 Nom d’utilisateur trop long
103 Mot de passe trop court
104 Mot de passe trop long
105 Destinataire trop court
106 Destinataire trop long
107 Expéditeur trop long
108 Expéditeur trop court
109 Corps du message trop court
110 Corps du message trop long
200 Erreur de sécurité
201 Route inconnue
202 Violation d’accès à une route
203 Crédits insuffisants
800 Erreur technique

Delivery reports

Vous pouvez configurer vos rapports de livraisons en vous connectant sur votre compte sur http://www.spryng.fr et en sélectionnant le menu ‘Paramètre’ dans votre tableau de bord SMS. Ici, vous pouvez y entrer l’url de votre script (servlet, php script, perl, etc…) sur lequel vous souhaitez recevoir vos rapports de livraison. Le script a besoin de deux paramètres, ils seront envoyés via un HTTP GET. Si vous voulez un rapports de livraison vous ne devriez pas spécifier plus d’un DESTINATAIRE dans la demande. Les valeurs de statut suivantes vous seront envoyées :

Valeurs des statuts
10 Délivré
20 Non délivré
30 Envoyé

Exemple : REFERENCE=abc123&STATUS=10

“La requête HTTP effectuée par Spryng doit recevoir une réponse de votre serveur avec un code d’état de 200, ce qui signifie que le message a été accepté avec succès par votre système. Si le serveur HTTP ne peut pas être atteint et renvoie par exemple 500 erreur interne du serveur Spryng suppose que le message n’a pas été accepté avec succès par votre système et la requête sera réessayée une fois par minute. La requête sera effectuée sous une durée de 24 heures.

Field types

Numérique : caractères 0 à 9 Alphanumérique : caractères de l’ISO-8859-1 MSISDN-numerique caractères 0 à 9 GSM 7-bit alphabet (permet les caractères dans les messages) : Les caractères ‘a‘ à ‘z‘, ‘A‘ à ‘Z‘,
0‘ à ‘9‘, Saut de ligne, retour à la ligne et
@£$¥èéùìòÇØøÅå_€ÆæßÉ!”#¤%&'()*+,-./:;<=>?¡ÄÖÑܧ¿äöñüà
Pour utiliser le signe € utilisez le %80

Credit amount API

POST https://api.spryngsms.com/api/check.php