PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Quelqu'un utilise TWILIO pour envoyer des SMS?
Quelqu'un utilise TWILIO pour envoyer des SMS?
Débuté par Gaétan Boudreau, 04 mar. 2015 19:36 - 6 réponses
Posté le 04 mars 2015 - 19:36
Bonjour,

J'aimerais utiliser TWILIO pour envoyer des SMS, mais je ne sais pas trop par ou commencer pour utiliser leur API. Il y a des exemples avec d'autres langages, mais évidemment par WinDev ou Webdev....

Merci,

Gaétan
Posté le 05 mars 2015 - 14:57
Je dois transcrire l'exemple suivant de "CURL" en WinDev :

$ curl -XPOST https://api.twilio.com/2010-04-01/Accounts/AC5ef8732a3c49700934481addd5ce1659/Messages \
-d "Body=Jenny%20please%3F%21%20I%20love%20you%20<3" \
-d "To=%2B15558675309" \
-d "From=%2B14158141829" \
-d "MediaUrl=

" \
-u 'AC5ef8732a3c49700934481addd5ce1659:{AuthToken}'

Si j'essais avec :
SI HTTPEnvoieFormulaire("frmEtape1", cURL_Test,httpPost) ALORS
La requête fonctionne mais le serveur me retourne évidemment une erreur d'authentification car je n'ai pas fourni le Account et Token.

Si j'essais avec :
SI PAS HTTPEnvoieFormulaire("frmEtape1", cURL_Test,httpPost,"","","",lcAccount,lcToken) ALORS
La requête ne fonctionne pas.

Voici mon code WinDev:


lcAccount est une chaîne = "1234567890BLABLABLA" // fourni par twilio
lcToken est une chaîne = "1234567890BLABLABLA" // fourni par twilio
cURL_Test est une chaîne = "https://api.twilio.com/2010-04-01/Accounts/" + lcAccount + "/Messages"

HTTPParamètre(httpParamètreMode,0)

HTTPCréeFormulaire("frmEtape1")
HTTPAjouteParamètre("frmEtape1","To","14180000000") // numéro validé par twilio
HTTPAjouteParamètre("frmEtape1","From","+15147002202") // Mon numéro fourni par twilio
HTTPAjouteParamètre("frmEtape1","Body","Ceci est un SMS de test.")

//SI PAS HTTPEnvoieFormulaire("frmEtape1",cURL_Test,httpPost,"","","application/x-www-form-urlencoded",lcAccount,lcToken)
//SI PAS HTTPEnvoieFormulaire("frmEtape1", cURL_Test,httpPost,"","","",lcAccount,lcToken) ALORS

SI HTTPEnvoieFormulaire("frmEtape1", cURL_Test,httpPost) ALORS
pcResultatReq=HTTPDonneRésultat(httpRésultat)
Info(pcResultatReq)
SINON
INFO(ErreurInfo())
FIN

Vous avec une idée?

Merci Gaétan
Posté le 06 mars 2015 - 20:15
J'ai trouvé ma réponse, si je peux vous faire sauver quelques heures...

pcResultatReq est une chaîne
lcAccount est une chaîne = "AC9a5MONACCOUNT_BLABLABLA" // USERNAME
lcToken est une chaîne = "1e1caaeMONTOKEN_BLABLABLA" // PASSWORD
cURL est une chaîne = "https://api.twilio.com/2010-04-01/Accounts/" + lcAccount + "/Messages"
cMessage est une chaîne = "CECI EST UN TEST PAR SMS"

HTTPParamètre(httpParamètreMode,0)
HTTPCréeFormulaire("frmSMS")
HTTPAjouteParamètre("frmSMS","From","15141234567")
HTTPAjouteParamètre("frmSMS","To","+14181234567")
HTTPAjouteParamètre("frmSMS","Body",cMessage)
cAuthorization est une chaîne = Crypte(lcAccount+":"+lcToken,"",compresseAucun,encodeBASE64)
cAuthorization = Remplace(cAuthorization,CRLF,"") // Lorsqu'il y a plus de 72 caractères, la fonction ajoute automatique un retour de chariot. Il faut l'enlever. Bug de la fonction??? Ça aussi dans d'autres language de programmation (https://developer.appcelerator.com/question/120731/xhr-authentication-with-restful-api)
cAuthorization = "Authorization: Basic " + cAuthorization
SI HTTPEnvoieFormulaire("frmSMS", cURL,httpPost,"",cAuthorization,"application/x-www-form-urlencoded")
HTTPAnnuleFormulaire("frmSMS")
pcResultatReq=HTTPDonneRésultat(httpRésultat)
Info(pcResultatReq)
...
SINON
// Erreur
info(ErreurInfo())
...
FIN
Membre enregistré
33 messages
Posté le 12 septembre 2016 - 15:44
Sympa, utile et efficace.
Merci !
Posté le 20 avril 2017 - 21:20
Super,
Merci
Posté le 20 avril 2017 - 22:12
Bonjour Gaétan,

Pour le code Twilio, as tu fait une partie qui récupéré une réponse au SMS ?

Dans le style "..... serez-vous pressent ? , veuillez répondre oui ou non

et on récupere ce message en pouvant l'associer a l'envoi original

Merci encore pour le code partagé
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 08 avril 2022 - 16:25
Bonjour,

Désole de déterrer ce post, mais avez-vous développé d'autres modules avec Twilio, notamment la visio ou la téléphonie ?

Cordialement,
François