Recherche


imprimer pdf
Http To Sms : envoi de SMS depuis une adresse http

Principe de fonctionnement


Si vous possédez un compte SMS chez OVH, vous pouvez émettre des SMS depuis votre navigateur web préféré, directement depuis l'url, à l'aide de wget...

Pour envoyer un SMS par cette méthode il vous faudra créer un utilisateur SoAPI :
- Manager -> SMS -> Gérer les utilisateurs


Envoyer un SMS


Pour envoyer un SMS, c'est simple et rapide, il suffit d'envoyer une requête HTTPS avec ses paramètres à l'adresse suivante :
https://www.ovh.com/cgi-bin/sms/http2sms.cgi?

Les paramètres doivent être séparé par des '&' et sont les suivants :
  • account = Compte SMS à utiliser (format sms-nic-X)
  • login = Utilisateur SMS à utiliser sur le compte associé
  • password = Mot de passe de l'utilisateur
  • from = Votre numéro d'expéditeur à utiliser, parmi les numéros déclarés sur votre compte SMS (format international 00336X...)
  • to = Numéro de téléphone du destinataire du message, en cas de destinataires multiples il est possible de rajouter les numéros supplémentaires, séparés par une virgule "," (les numéros étant toujours au format international)
  • message = Votre message

Viennent ensuite des champs facultatifs, tels que :

  • noStop = 1 pour ne pas afficher 'STOP au XXXXX' dans le message dans le cas d'un SMS non commercial
  • deferred = Pour définir la date d'envoi différée (par défaut les messages sont envoyés tout de suite sinon), au format hhmmjjMMAAAA (pour un envoi le 25/08/2011 à 12h30 : 123025082011)
  • class = Type de classe du SMS, au format N (1 chiffre) parmi les 4 disponibles (classe 1 par défaut) :

- classe 0 : Le message est directement affiché à l’utilisateur sur l’écran du mobile à la réception. Le message n’est enregistré ni dans la mémoire du téléphone ni dans la carte SIM. Il est effacé dès que l’utilisateur a validé la visualisation.
- classe 1 : Le message est enregistré dans la mémoire du téléphone et si cette mémoire est pleine, dans la carte SIM par défaut.
- classe 2 : Le message est enregistré sur la carte SIM.
- classe 3 : Le message est transféré sur un équipement externe connecté au mobile (PDA, PC portable…)

  • tag = Une chaîne de maximum 20 caractères vous permettant de marquer les messages envoyés.
  • contentType = Vous pouvez choisir le type de la réponse. Elle peut être de type : text/xml, application/xml, text/json, application/json, text/plain,text/html (par défaut en text/plain).
  • Faire un saut de ligne le message envoyé = Ajouter %0d pour effectuer un saut de ligne dans le SMS envoyé
  • Définir l'encodage d'un SMS = Par défaut l'encodage se fait sur 7bit. Si vous souhaitez modifier l'encodage il faut suffit d'ajouter le paramètre smscoding ou smsCoding. 1 pour l'encodage sur 7bit ou 2 pour l'encodage sur 8bit (UTF8). Si vous modifiez l’encodage pour l'UTF8, votre SMS fera 70 caractères maximum contre 160 sur l'encodage 7bit.

Réponse

Pour les 4 formats précédents les réponses sont de la forme suivante :
pour xml :
en cas de succès :
<?xml version="1.0" encoding="UTF-8" ?><response><status>100</status><creditLeft>1007</creditLeft><smsIds><smsId>10867690</smsId></smsIds></response>


en cas d'échec :
<?xml version="1.0" encoding="UTF-8" ?><response><status>201</status><message>Missing message. For more informations : http://guides.ovh.com/httpToSms</message></response>





pour json :
en cas de succès :
{"status":100,"creditLeft":"1007","SmsIds":["10867690"]}


en cas d'échec :
{"status":201,"message":"Missing message. For more informations : http//:guides.ovh.com/httpToSms"}





pour html :
en cas de succès :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<title>HTTP2SMS</title>
</HEAD>
<BODY>
OK<br>
1007<br>
10867690<br>
</BODY>
</HTML>


en cas d'échec :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<title>HTTP2SMS</title>
</HEAD>
<BODY>
KO<br>Missing message. For more informations : http://guides.ovh.com/httpToSms<br>
</BODY>
</HTML>





pour text/plain :
en cas de succès :
OK
1007
10867690


en cas d'échec :
KO
Missing message. For more informations : http://guides.ovh.com/httpToSms


Un status supérieur à 100 et inférieur à 200 indique que le message a bien été envoyé.
Lors d'un échec, la cause est inscrite dans le champs message pour le json ou le xml et sur la deuxième ligne pour le html et le text/plain.


Exemple d'url :
https://www.ovh.com/cgi-bin/sms/http2sms.cgi?smsAccount=sms-xxxx-1&login=monUserSms&password=leMotDePasse&from=0033612345678&to=0033665432100,003369876543&contentType=text/xml&message=Hello World.



Restriction


Pour gérer les ip autorisées, il vous suffit de vous connecter à votre manager et d'aller dans la catégorie "Sms".
Cliquez sur "Gérer les utilisateurs" puis sélectionnez l'utilisateur désiré.
Une fois l'utilisateur sélectionné, cliquez sur le bouton "Utilisateurs", puis "Restrictions par IP pour http2sms".

Vous aurez la possibilité d'entrer 5 ip (ou range d'ip) différentes.
Ces champs correspondent aux ip qui seront autorisées à utiliser le service.
Si les champs sont vide, la restriction sera alors inactive.

Codes de retour de l'API


Voici la liste des codes de retour de l'API :
100 ou 101 : Requête traitée
201 : Un paramètre est manquant (exemples : Missing login. Missing password.)
202 : Un paramètre est incorrecte (exemples : Invalid tag: is too long, Invalid deferred time.)
401 : Not authorized ip found.