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('31612345678', '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 SMS

Le SMS-MT HTTP API de Spryng assiste le GET et le HTTP POST  avec un type de contenu ‘application/x-www-form-urlencoded’ via HTTP et 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 GET ou 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
PASSWORD Choisi par l’utilisateur lorsqu’il s’inscrit sur http://www.spryng.fr
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 une route spécial
ALLOWLONG Si vous souhaitez envoyer un long SMS

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

Password

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

Option
Requis oui
Type Alphanumerique, Cas sensible
Longueur Min 6
Longueur Max 32
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple PASSWORD=password

Reference

Option
Requis Seulement si vous voulez recevoir des rapports de livraison
Type Alphanumerique
Longueur Min 1
Longueur Max 256
Valeurs <na>
Valeur par 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=32441041106,32412345678
Remarques Plus de détail sur la gestion des erreurs dans le chapitre 3 sur les valeurs de résultat

Sender

Adresse de l’expéditeur

Option
Requis oui
Type Numerique ou Alphanumerique
Longueur Min 1
Longueur Max 14 pour Numerique ou 11 pour Alphanumerique
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple SENDER=0032441041106
Remarques Plus de détail sur la gestion des erreurs dans le chapitre 3 sur les valeurs de résultat

Body

Contenu du SMS

Option
Requis oui
Type GSM 7-bit alphabet pour message texte
Longueur Min 1
Longueur Max 160 carac. pour message texte (default : ALLOWLONG=0) 612 chars (ALLOWLONG=1)
Lorsqu’on utilise les longs sms le système divisera automatiquement votre message en message de 153 caractères maximum par SMS.
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple BODY=This%20is%20a%20test%20SMS
Remarques Plus de détails sur les caractères dans le chapitre 5 sur les types de champs

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éfinis
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éfinis
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 utilise les longs sms le système divisera automatiquement votre message, en message 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 long
110 Corps du message trop court
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

Field Types

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

Credit Amount API

https://api.spryngsms.com/api/check.php?username=********&password=********

Installation & Initialisation

Afin d’intégrer le plus simplement notre SMS 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

To use the Spryng HTTP Api you must first create a new instance of the 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[] { "32412345678", "32498765421" },
    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();

SMS API

Le SMS-MT HTTP API de Spryng assiste le GET et le HTTP POST  avec un type de contenu ‘application/x-www-form-urlencoded’ via HTTP et 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 GET ou 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
PASSWORD Choisi par l’utilisateur lorsqu’il s’inscrit sur http://www.spryng.fr
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 long SMS

Username

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

Option
Requis oui
Type Alphanumérique, Cas sensible
Longueur Min 2
Longueur Max 32
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple USERNAME=username

Password

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

Option
Requis oui
Type Alphanumérique, Cas sensible
Longueur Min 6
Longueur Max 32
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple PASSWORD=password

Reference

Option
Requis Seulement si vous souhaitez recevoir les rapports de livraison
Type Alphanumérique
Longueur Min 1
Longueur Max 256
Valeurs <na>
Valeur par défaut <none>
Exemple REFERENCE=abc123
Remaques Doit être unique

Destination

Numéro de destinataire

Option
Requis oui
Type MSISDN-numeric (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=32441041106,32412345678
Remarques Plus de détails sur la gestion des erreurs dans le chapitre 3 sur les valeurs de résultat

Sender

Adresse de l’expéditeur

Option
Requis oui
Type Numérique ou Alphanumérique
Longueur Min 1
Longueur Max 14 pour Numérique ou 11 pour Alphanumérique
Valeur Min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple SENDER=0032441041106
Remarques Plus de détails sur la gestion des erreurs dans le chapitre 3 sur les valeurs de résultat

Body

Contenu du SMS

Option
Requis oui
Type GSM 7-bit alphabet pour les messages
Longueur Min 1
Longueur Max 160 carac. pour les messages (defaut : ALLOWLONG=0) 612 carac. (ALLOWLONG=1)
Lorsqu’on utilise les longs sms le système divisera automatiquement votre message, en message de 153 caractères maximum par SMS.
Valeur min <na>
Valeur Max <na>
Valeurs <na>
Valeur par défaut <none>
Exemple BODY=This%20is%20a%20test%20SMS
Remarques Plus de détail sur les caractères dans le chapitre 5 sur les types de champs

Service

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

Option
Requis non
Type Alphanumérique
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éfinis
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 long SMS

Option
Requis Seulement si vous souhaitez envoyer des longs SMS
Type Prédéfinis
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 utilise les longs sms le système divisera automatiquement votre message, en message 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 de message trop long
110 Corps de message trop court
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:

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

Example: REFERENCE=abc123&STATUS=10

Field Types

Numérique: caractères 0 à 9 Alphanumérique: caractère de l’ISO-8859-1
MSISDN-caractères numériques 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 %80

Credit Amount API

https://api.spryngsms.com/api/check.php?username=********&password=********