mprinfo 3 331 Signaler ce message Posté(e) 25 décembre 2014 Ce script consiste a envoyer un SMS via le plugin freesms de notre amis Krikroff que je remercie au passage pour son super boulot. A chaque ouverture ou fermeture d'une porte vous recevrez un Sms (Service Gratuit chez FREEMobile) Ce script peu bien sur être adapter pour d'autres modules 1 - Installation du plugin 2 - créé une instance et ajouter vos identifiant (il faut que le service soit activé sur votre compte freemobile c'est gratuit) 3 - faire un test pour voir si tout fonctionne parfaitement 4 - Crée un variable global FreeSmsID avec commme valeur l'ID de l'instance (J'utilise cette solution car a chaque mise a jour il faut ré installer le plugin puis re crée l'instance comme je suis pas trés courageur j' ai pas envie de modifier l'id dans toutes les scripts je modifie donc la variable global a chaque nouvelle installation du plugin, si vous avez plusieurs forfait il suffit d'utilisé un variable global par instance) 5 - Crée une nouvelle Scème LUA et ajouter ce code %% properties 35 value 39 value 152 value %% globals --]] local OrigineDeclenchement = fibaro:getSourceTrigger() -- on demande au système de récupérer (get) l'origine (Source) du déclenchement de la scène (Trigger) if OrigineDeclenchement['type'] == 'property' then -- si l'origine du déclenchement de la scène est la modification d'une propriété d'un module surveillée dans l'entête alors local id = OrigineDeclenchement['deviceID'] -- Récuperation de l'id du déclencheur local Name = fibaro:getName(id) -- Récuperation Nom du module déclencheur local MaPorte = fibaro:getValue(id, 'value' ) -- récuperation de la valeur de l'id déclencheur local IdSMS = fibaro:getGlobalValue("FreeSmsID") -- récuperation de la variable global instance freesms local MessageSms = ('La ' ..Name) fibaro:debug('id module = '..id) fibaro:debug('Nom du module = '..Name) fibaro:debug( 'ID Plugin SMS = ' .. IdSMS) fibaro:debug( 'value = ' .. MaPorte) if (MaPorte == '0') then fibaro:call(IdSMS, "send", MessageSms .." est Fermee") fibaro:debug( 'Fermer' ) else fibaro:call(IdSMS, "send", MessageSms .." est Ouverte") fibaro:debug( 'Ouverte' ) end elseif OrigineDeclenchement['type'] == 'other' then -- sinon si l'origine du déclenchement de la scène est autre alors fibaro:debug('La scène a été lancée manuellement') end - 6 Ajouter l id des modules pour lesquels vous voulez recevoir un SMS ex : pour un détecteur d'ouverture id 100 on peut en ajout comme bon vous semble . --[[ %% properties 100 value %% globals --]] C'est mon premier script que je post donc je demande a Mr Moicphil de bien vouloir être indulgent si j'ai mal posté mon post merci 3 Partager ce message Lien à poster Partager sur d’autres sites
Sakkhho 467 Signaler ce message Posté(e) 26 décembre 2014 merci pour le partage - je testerai cela. 1 Partager ce message Lien à poster Partager sur d’autres sites
mprinfo 3 331 Signaler ce message Posté(e) 9 janvier 2015 En attendent que l'on puisse a nouveau utiliser le plugin freeSMS Voici je choisi d'envoyer les messages par PUSH Car pour utilisé l'API FreeSMS c'est un peux compliquer --[[ %% properties 17 value 33 value %% globals --]] local OrigineDeclenchement = fibaro:getSourceTrigger() -- on demande au système de récupérer (get) l'origine (Source) du déclenchement de la scène (Trigger) if OrigineDeclenchement['type'] == 'property' then -- si l'origine du déclenchement de la scène est la modification d'une propriété d'un module surveillée dans l'entête alors local id = OrigineDeclenchement['deviceID'] -- Récuperation de l'id du déclencheur local Name = fibaro:getName(id) -- Récuperation Nom du module déclencheur local MaPorte = fibaro:getValue(id, 'value' ) -- récuperation de la valeur de l'id déclencheur local IdSMS = fibaro:getGlobalValue("FreeSmsID") -- récuperation de la variable global instance freesms local MessageSms = ('La ' ..Name) fibaro:debug('id module = '..id) fibaro:debug('Nom du module = '..Name) fibaro:debug('ID Plugin SMS = ' ..IdSMS) fibaro:debug('value = ' ..MaPorte) if (MaPorte == '0') then fibaro:call(IdSMS, "sendPush", MessageSms .." est Fermee") fibaro:debug( 'Fermer' ) else fibaro:call(IdSMS, "sendPush", MessageSms .." est Ouverte") fibaro:debug( 'Ouverte' ) end elseif OrigineDeclenchement['type'] == 'other' then -- sinon si l'origine du déclenchement de la scène est autre alors fibaro:debug('La scène a été lancée manuellement') end il faut bien sur crée une variable globale : FreeSmsID avec comme valeur l' ID du téléphone qui doit recevoir la notification Partager ce message Lien à poster Partager sur d’autres sites
mprinfo 3 331 Signaler ce message Posté(e) 11 avril 2015 Voici une solution temporaire donner par KriKroff pour les SMS FreeMobile dans l'attente de pourvoir utiliser son plugin --[[ %% globals FreeSms --]] local username = "xxxxxxxxx" local password = "xxxxxxxxx" local message = fibaro:getGlobalValue("FreeSms") local http = net.HTTPClient({ timeout = 2000 }) fibaro:debug("Message a Envoyer : " ..message) http:request('https://smsapi.free-mobile.fr/sendmsg?'..string.format("user=%s&pass=%s&msg=%s", username, password, message), { options = { method = 'POST', headers = { ["Content-Type"] = "application/x-www-form-urlencoded" } }, success = function(data) print('At ' .. os.date() .. ' - status = ' .. data.status) end, error = function(err) print('error = ' .. err) end }) fibaro:setGlobal("FreeSms", "") http://www.domotique-fibaro.fr/index.php/topic/2003-plugin-free-mobile-sms/page-6 1 Partager ce message Lien à poster Partager sur d’autres sites
Janus 6 Signaler ce message Posté(e) 30 avril 2015 Merci Krikroff…………………………………………... Des heures de galère pour essayer d'envoyer ces p... de SMS avec le plugin qui ne marche pas. Tout marche désormais, et j'ai commencé àen mettre partout.C'est franchement plus sûr que les notifications PUSH, qui marchent quand elles ont le temps. Oufff… J'avais mis au moins 10 posts sur le forum àce sujet, sans effet. Ça a été la meilleure nouvelle de la journée… Tu imagines... Partager ce message Lien à poster Partager sur d’autres sites
Janus 6 Signaler ce message Posté(e) 30 avril 2015 … et merci àmprinfo de l'avoir passé ici…... Partager ce message Lien à poster Partager sur d’autres sites