Coucou
vil1driver a écrit :Salut,
Regardes le script mis en demo dans le dossier lua

Oui merci , je l'avais déjà remarqué ce script...
mais je crois que j'y suis arrivé .... ça marche
voici le script en question , je me suis inspiré de ce que j ai pu trouvé sur le net , j ai pioché à gauche à droite ....testé , débuggé , et validé ...
Code : Tout sélectionner
-- script_device_Porte_Frigo.lua
-- Ce script verifie l 'etat de fermeture de la prte du Frigo
-- Si la porte est restée ouverte plus de 1 minute , notifiactions sur freeboxserver V6 par voix et envoie sms et Mail
------------------------------------------------------------------------------------------------------------
----------------------------------
----- Variables à éditer ---------
----------------------------------
emailAddress = "machin@gmail.com" --Adresse Email du destinatiare
bodytext = string.format(" !!! Attention, Cela fait plus de 1 minute que la porte du Frigo est ouverte !!! ")
local objet = " Porte du Frigo ouverte Le "
local voice = " attention le frigo est resté ouvert "
--------------------------------------
t1 = os.time()
s = otherdevices_lastupdate['PorteFrigo']
-- returns a date time like 2016-10-17 17:23:12
year = string.sub(s, 1, 4)
month = string.sub(s, 6, 7)
day = string.sub(s, 9, 10)
hour = string.sub(s, 12, 13)
minutes = string.sub(s, 15, 16)
seconds = string.sub(s, 18, 19)
--Mode deboggage (affichage des messages)
debug=true
--Initialise la commande de retour finale
commandArray = {}
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
difference = (os.difftime (t1, t2))
----------------------------------------------------------------
-- Fonctions -
----------------------------------------------------------------
--- Function SMS ---
--------------------
function notification_SMS(sms)
-- Premiére compte freemobile
local user1 = 'XXXXXX' -- A remplacer par identifiant Free Mobile
local pass1 = 'XXXXXX' -- A remplacer par la clé d'identification au service SMS Free
-- SMS
local Message = '!!! Attention, Cela fait plus de 1 minute que la porte du Frigo est ouverte !!!'
-- Envois Sms à user1
command1 = "curl -s 'https://smsapi.free-mobile.fr/sendmsg?user="..user1.."&pass="..pass1.."&msg="..Message.."'"
os.execute(command1)
print("<font color='#f3031d'>---------------- Envoie SMS DOM !!</font>");
end
--- Function MAILS ---
function notification_MAIL(mail)
DateMail = os.date('%d/%m/%Y à %H:%M:%S', os.time()) -- (09/16/98 à 23:48:10)
commandArray['SendEmail']=objet..DateMail.."#"..bodytext.."#"..emailAddress
print ("<font color='#f3031d'>---------------- Envoie Mail pour Dom </font>");
end
--- Function VOIX ---
function notification_VOICE(voice)
os.execute("/volume1/@appstore/domoticz/var/scripts/bash/Play-Text.bash attention le frigo est ouvert")
print("<font color='#f3031d'>---------------- Notification Voix</font>");
end
---------------------------------------------------------------
-- Fin Fonctions -
---------------------------------------------------------------
if (otherdevices['PorteFrigo'] == 'Open' and difference > 60) then
print ("<font color='#f3031d'>script_device_Porte_Frigo.lua</font>");
-- envoi SMS
-- Ici pour DOM
notification_SMS(sms)
-- envoi un mail
notification_MAIL(mail)
-- envoi notification voix sur freeboxserver V6
notification_VOICE(voice)
end
return commandArray
Voilou , si ça peut servir tant mieux
Minos