...
- une authentification "basic"
- les paramètres passées en GET ou en POST (application/x-www-form-urlencoded)
Exemples simple d'envoi de SMS
| Bloc de code |
|---|
curl -u user:xxx 'https://sms.univ.fr/esup-smsuapi/?action=SendSms&phoneNumber=0601010101&message=foo'
curl -u user:xxx 'https://sms.univ.fr/esup-smsuapi/?action=SendSms&phoneNumber=0601010101&phoneNumber=0601010102&message=foo'
# ou équivalent :
curl --get -u user:xxx https://sms.univ.fr/esup-smsuapi/ --data 'action=SendSms' --data 'message=foo' --data 'phoneNumber=0601010101' --data 'phoneNumber=0601010102'
# en POST :
curl -u user:xxx https://sms.univ.fr/esup-smsuapi/ --data 'action=SendSms' --data 'message=foo' --data 'phoneNumber=0601010101' --data 'phoneNumber=0601010102' |
Exemple d'envoi de SMS puis consultation du statut de l'envoi
...
puis vous pouvez consulter l'état de l'envoi 123 :
| Bloc de code |
|---|
curl -u user:xxx 'https://sms.univ.fr/esup-smsuapi/?action=MessageInfos&id=123' |
...
| Bloc de code |
|---|
{"nbDestTotal":1,"nbDestBlackList":1,"nbSentSMS":0,"nbProgressSMS":0,"nbErrorSMS":1,"listNumErreur":["0601010101"]} |
Envoi en masse
Les paramètres GET ne permettent pas l'envoi à de très nombreux numéros de téléphone. Dans ce cas utiliser une requête POST :
| Bloc de code |
|---|
curl -u user:xxx https://sms.univ.fr/esup-smsuapi/ --data 'action=SendSms' --data 'message=foo' --data 'phoneNumber=0601010101' --data 'phoneNumber=0601010102' |
En java
Le plus simple est d'utiliser le jar esup-smsu-api disponible sur le repository maven. Ce jar contient la classe org.esupportail.smsuapi.services.client.HttpRequestSmsuapiWS.
...
| Bloc de code |
|---|
Int id = httpRequestSmsuapiWS.sendSms(null, "0601010101", "foo"); ... if (id != null) trackInfos = httpRequestSmsuapiWS.messageInfos(id); |
En nodejs
Exemple : https://github.com/EsupPortail/esup-otp-api/blob/master/transports/sms.js