Application FreemobileSMS
Publié : mar. 12/mars/2019 10:20
Bonjour a tous,
Application pour les heureux possesseurs d'un forfait Freemobile.
Cet utilitaire permet d'envoyer un SMS sur son mobile ou celui d'un proche dont on connait le login/pass
Les exécutables et les sources sont disponibles ici
Pour l'instant, seul l'utilitaire mode console est disponible.
Une interface graphique est en cours.
CAGE
Application pour les heureux possesseurs d'un forfait Freemobile.
Cet utilitaire permet d'envoyer un SMS sur son mobile ou celui d'un proche dont on connait le login/pass
Les exécutables et les sources sont disponibles ici
Pour l'instant, seul l'utilitaire mode console est disponible.
Une interface graphique est en cours.
CAGE
Code : Tout sélectionner
;
;************************************************************************
;Titre : freemobilesms.pb
;Auteur : (C) 2019 CAGE
;Date : 2019/03/12
;Version PB : PureBasic 5.70 LTS (Windows - x86)
;Version PB : PureBasic 5.70 LTS (Windows - x64)
;Compiler Options
;Compiler Options : Executable format: Console
;Compile/Run : Create temporary executable in the source directory
;
;Libairies: aucune
;
;************************************************************************
;
EnableExplicit
OnErrorGoto(?ErrorHandler)
Define count
Define user$, pass$, msg$, rcode$
Define AppName$ = GetFilePart(ProgramFilename(), #PB_FileSystem_NoExtension)
Define Syntaxe$ = #CRLF$+"Syntaxe: "+AppName$+" <user> <pass> <"+Chr(34)+"msg"+Chr(34)+">"+#CRLF$
Procedure Display(msg$)
OpenConsole()
PrintN(msg$) : Debug msg$
CloseConsole()
EndProcedure
count = CountProgramParameters() : Debug "Paramètres: " + count
Select count
Case 0
user$ = "" ;; entrez votre login Freemobile
pass$ = "" ;; entrez votre clé d'itenfication au service "Notification par SMS" de Free Mobile
msg$ = "Indiquez votre message ici" ;; longueur max du message inconnu
Case 3
user$ = ProgramParameter(0) : Debug "Paramètre 1: " + user$
pass$ = ProgramParameter(1) : Debug "Paramètre 2: " + pass$
msg$ = ProgramParameter(2) : Debug "Paramètre 3: " + msg$
Default
Display(Syntaxe$) : Debug Syntaxe$
End 0
EndSelect
If user$ = #Null$ Or pass$ = #Null$
Display(Syntaxe$)
End 0
EndIf
msg$ = URLEncoder(msg$, #PB_Ascii)
Define urlSMS$ = "https://smsapi.free-mobile.fr/sendmsg?user="+user$+"&pass="+pass$+"&msg="+msg$
If InitNetwork()
Define agent$ = "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"
Define host$ = "smsapi.free-mobile.fr"
Define cache$ = "no-cache"
NewMap Header$()
Header$("Pragma") = cache$
Header$("Cache-Control") = cache$
Header$("Connection") = "keep-alive"
Header$("Host") = host$
Header$("User-Agent") = agent$
Define HttpRequest = HTTPRequest(#PB_HTTP_Post, urlSMS$, "", 0, Header$())
If HttpRequest
Define RCode$ = HTTPInfo(HTTPRequest, #PB_HTTP_StatusCode)
Debug "RCode: " + RCode$
Select RCode$
Case "200" : msg$ = "Le SMS a été envoyé sur votre mobile."
Case "400" : msg$ = "Un des paramètres obligatoires est manquant."
Case "402" : msg$ = "Trop de SMS ont étés envoyés en trop peu de temps."
Case "403" : msg$ = "Le service n'est pas activé sur l'espace abonné ou login / clé incorrect"
Case "500" : msg$ = "Erreur côté serveur. Veuillez réessayer ultérieureent."
Default : msg$ = "Erreur inconnue."
EndSelect
FinishHTTP(HTTPRequest)
Display(msg$) : Debug msg$
Else
msg$ = "Impossible de créer la requête."
Display(msg$) : Debug msg$
RCode$ = "0"
EndIf
EndIf ;; If InitNetwork()
ErrorHandler:
End Val(RCode$)