fredokl Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 Bonjour à tous, Voici un QuickApp pour pouvoir envoyer des sms avec un compte Free Mobile. Le code est adapté de celui de @Krikroff pour la HC2. Je me suis fait aider par mon neveu qui maitrise le code beaucoup mieux que moi. Il fonctionne parfaitement. Il est libre de modification et d'amélioration. Code: -- FREESMS pour Fibaro HC3 -- Le code suivant a été adapté sur celui-ci de Krikroff du forum www.domotique-fibaro.fr -- Adaptation par fredokl pour www.domotique-fibaro.fr -------------------------------------------------------- -- Paramètres utilisateur -------------------------------------------------------- local username = "IDENTIFIANT FREE" local password = "CLÉ IDENTIFICATION" -------------------------------------------------------- -- Paramètrages des boutons avec les messages à envoyer -------------------------------------------------------- function QuickApp:uimsg1OnR(event) self:debug("Message 1") self:sendmsg("Hello World!") end function QuickApp:uimsg2OnR(event) self:debug("Message 2") self:sendmsg("Salut le Monde!") end function QuickApp:uimsg3OnR(event) self:debug("Message 3") self:sendmsg("Tout va bien?") end function QuickApp:uimsg4OnR(event) self:debug("Message 4") self:sendmsg("Moi ça va.") end function QuickApp:uimsg5OnR(event) self:debug("Message 5") self:sendmsg("Bye bye!") end -------------------------------------------------------- -- Ne rien modifier sous cette ligne -------------------------------------------------------- function QuickApp:sendmsg(message) self:debug("Envoi du message") self:setVariable("FreeSMS", message) self:updateProperty("value", true) local query = string.format("user=%s&pass=%s&msg=%s", username, password, message) self:sendCommand(query) end function QuickApp:sendCommand(query) local message = self:getVariable("FreeSMS") local url = "https://smsapi.free-mobile.fr/sendmsg" url = url .. "?" .. query self:debug("Envoi de la commande:", url) self.http:request(url, { options= { headers= { ["Connection"] = "keep-alive", }, method = "POST" }, success = function(response) self:controle_status(response.status) end, error = function(message) self:debug("error:", message) end }) self:debug("Fin de commande") end -------------------------------------------------------- -- Liste des codes retour HTTP de Free Mobile -------------------------------------------------------- local code_retour = { [200]=" - Le SMS a été envoyé sur votre mobile", [400]=" - Un des paramètres obligatoires est manquant", [402]=" - Trop de SMS ont été envoyés en trop peu de temps", [403]=" - Le service n’est pas activé sur l’espace abonné, ou login / clé incorrect", [500]=" - Erreur côté serveur. Veuillez réessayez ultérieurement" } -------------------------------------------------------- -- Fonction contrôle du code retour HTTP Free Mobile -------------------------------------------------------- function QuickApp:controle_status(status) if Contains(code_retour, tonumber(status)) then self:debug(os.date() .. ' - status = ' .. status .. (code_retour[tonumber(status)])) end end function Contains(table, valeur) for key,value in pairs(table) do if (key == valeur) then return true end end return false end function QuickApp:onInit() self.http = net.HTTPClient({ timeout = 2000 }) self:setVariable("FreeSMS","") self:debug("onInit") end Utilisation: Remplir les champs par identifiant Free Mobile et votre clé d'identification ----------------------------------------------------- -- Paramètres utilisateur ----------------------------------------------------- local username = "IDENTIFIANT FREE" local password = "CLÉ IDENTIFICATION" Créer autant de boutons que souhaité ----------------------------------------------------- -- Paramètrages des boutons avec les messages à envoyer ----------------------------------------------------- function QuickApp:uimsg1OnR(event) self:debug("Message 1") self:sendmsg("Hello World!") end Voilà, c'est mon premier code officiel sur le forum je crois. Soyez indulgent. Je vous joints le fichier complet à adapter en fonction de vos besoins. FreeSMS.fqa 3
mprinfo Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 Merci pour ta contribution dommage que je sois chez REDEnvoyé de mon BLA-L29 en utilisant Tapatalk
fredokl Posté(e) le 8 mai 2020 Auteur Signaler Posté(e) le 8 mai 2020 Oui dommage. Sfr ne propose pas ce genre de service?
mprinfo Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 Non faut que j'arrive à utiliser l api de mon routeur 4g pour le moment je récupère les infosPar contre impossible à envoyer un smsEnvoyé de mon BLA-L29 en utilisant Tapatalk
fredokl Posté(e) le 8 mai 2020 Auteur Signaler Posté(e) le 8 mai 2020 Si ce n'est pas possible il y a toujours l'option d'un abonnement free à deux euros. 1
jjacques68 Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 c'est intéressant ça ! je suppose je bouygues ne propose pas ce genre de service ? si ?
fredokl Posté(e) le 8 mai 2020 Auteur Signaler Posté(e) le 8 mai 2020 Je ne sais si bouygues propose ce genre de service. Bouygues propose un service d'envoi de sms directement sur l'espace abonné: https://www.assistance.bouyguestelecom.fr/mobiles/sms-mms-mobile/envoi-sms-gratuitement-internet
mprinfo Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 Pour moi le mieux c'est un routeur 4g avec api comme cela on n'est plus dépendant d'un fournisseur Envoyé de mon BLA-L29 en utilisant Tapatalk 1
jjacques68 Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 ben j'ai un routeur 4g Mikrotik avec une SIM Bouygues... maintenant je sais pas pour son API...
jjacques68 Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 ah ben si j'ai trouvé ! Mais problème bête, ce routeur est en cas de secours si l'adsl plante. il est connecté sur le routeur principale de la maison, et celui-ci est configuré en fail over. Et du coup si. l'adsl fonctionne, je n'accède pas au routeur 4g... c'est pourri ça... j'avais oublié ce cas de figure... 1
mprinfo Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 Je sais pas comment tu as configurer celaMoi j'ai accès au routeur 4g même si j'ai de l adsl. Mon routeur principal est un edge routeur 6pEnvoyé de mon BLA-L29 en utilisant Tapatalk
jjacques68 Posté(e) le 8 mai 2020 Signaler Posté(e) le 8 mai 2020 j'ai un UTM multiwan de chez netgear, un vieux truc... vieux sujet...
Messages recommandés