Notification sms incluant la valeur d'une variable ?
Notification sms incluant la valeur d'une variable ?
Bonjour,
Je cherche à inclure la valeur d'une variable dans un message envoyé via le service de notification sms de Free Mobile mais je ne trouve pas comment faire.
Concrètement, je voudrais être alerté en cas de gel durant le nuit et avoir dans le sms la température la plus basse qu'il a fait.
A l'aide d'un blockly j'arrive à avoir cette température dans une variable mais je bloque sur l'insertion de celle-ci dans une notification sms.
Je voudrais par exemple, recevoir le matin un sms du style "Cette nuit il a fait -5".
Merci pour votre aide !!
Je cherche à inclure la valeur d'une variable dans un message envoyé via le service de notification sms de Free Mobile mais je ne trouve pas comment faire.
Concrètement, je voudrais être alerté en cas de gel durant le nuit et avoir dans le sms la température la plus basse qu'il a fait.
A l'aide d'un blockly j'arrive à avoir cette température dans une variable mais je bloque sur l'insertion de celle-ci dans une notification sms.
Je voudrais par exemple, recevoir le matin un sms du style "Cette nuit il a fait -5".
Merci pour votre aide !!
Dernière modification par Biocef le 21 janv. 2015, 07:53, modifié 1 fois.
Re: Notification sms incluant la valeur d'une variable ?
On eut faire un truc comme cela
imaginons que ta temperature soit dans un script sh sous le nom de TEMP
ici dans mon exemple j'ai mis "en dur" TEMP="-6.5" mais bien sur toi tu utilises ta variable
et à la fin de l'url tu ajoutes un +$TEMP en fermant les guillemets avant et hop...
#!/bin/sh
TEMP="-6.5"
curl -s -i -k "https://smsapi.free-mobile.fr/sendmsg?u ... &msg=Cette nuit : "+$TEMP
imaginons que ta temperature soit dans un script sh sous le nom de TEMP
ici dans mon exemple j'ai mis "en dur" TEMP="-6.5" mais bien sur toi tu utilises ta variable
et à la fin de l'url tu ajoutes un +$TEMP en fermant les guillemets avant et hop...
#!/bin/sh
TEMP="-6.5"
curl -s -i -k "https://smsapi.free-mobile.fr/sendmsg?u ... &msg=Cette nuit : "+$TEMP
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
Re: Notification sms incluant la valeur d'une variable ?
Bonjour
Sur mon congélateur j'ai mis une notification qui m'envoie un sms quand la température monte au dessus d'un certain seuil. C'est directement depuis le widget du thermomètre.
Si tu veux connaître exactement la plus basse température, il faut aller voir sur le log du thermomètre.
Je ne sais pas si on peut récupérer les valeurs des logs pour les analyser depuis un script mais ça doit bien être quelque part.
A creuser
Sur mon congélateur j'ai mis une notification qui m'envoie un sms quand la température monte au dessus d'un certain seuil. C'est directement depuis le widget du thermomètre.
Si tu veux connaître exactement la plus basse température, il faut aller voir sur le log du thermomètre.
Je ne sais pas si on peut récupérer les valeurs des logs pour les analyser depuis un script mais ça doit bien être quelque part.
A creuser
Hard:Raspberry Pi4 + SSD Arduino Tablette murale Archos
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Re: Notification sms incluant la valeur d'une variable ?
Bonjour
Je n'avais pas compris a la lecture de ton premier message que ta valeur etait stockée dans un variable Domoticz
Il faut donc aller l'extraire avant d'utiliser le script sh que je t'ai donné plus haut
D'abord dans un navigateur tu lances un
http://192.168.1.81:8080/json.htm?type= ... rvariables
qui liste toutes les variables de Domoticz,
tu y reperes l'idx de ta variable a toi
ensuite un /json.htm?type=command¶m=getuservariable&idx=IDX
te donne le contenu de la variable
Ensuite tu peux utiliser un script comme celui que j'ai fait pour recuperer l'etat des batteries
en le modifiant pour qu'il aille chercher "Value' et non pas "BatteryLevel"
changer les offset et longueur pour bien recuperer ta variable avec les -
tu mets la valeur 1 dans debug au tout debut du programme pour voir ce que tu recuperes
puis dans la partie qui se nomme def maj_widget tu remplace les 'http domoticz' par ton url de chez free
Essaye ca et dis nous si ca roule ,
j'essaie de trouver un peu de temps pour refaire un script python propre sinon
Bon Dimanche
Je n'avais pas compris a la lecture de ton premier message que ta valeur etait stockée dans un variable Domoticz
Il faut donc aller l'extraire avant d'utiliser le script sh que je t'ai donné plus haut
D'abord dans un navigateur tu lances un
http://192.168.1.81:8080/json.htm?type= ... rvariables
qui liste toutes les variables de Domoticz,
tu y reperes l'idx de ta variable a toi
ensuite un /json.htm?type=command¶m=getuservariable&idx=IDX
te donne le contenu de la variable
Ensuite tu peux utiliser un script comme celui que j'ai fait pour recuperer l'etat des batteries
en le modifiant pour qu'il aille chercher "Value' et non pas "BatteryLevel"
changer les offset et longueur pour bien recuperer ta variable avec les -
tu mets la valeur 1 dans debug au tout debut du programme pour voir ce que tu recuperes
puis dans la partie qui se nomme def maj_widget tu remplace les 'http domoticz' par ton url de chez free
Essaye ca et dis nous si ca roule ,
j'essaie de trouver un peu de temps pour refaire un script python propre sinon
Bon Dimanche
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
Re: Notification sms incluant la valeur d'une variable ?
Merci pour ton aide, je vais regarder tout ça dès que j'ai un peu de temps !
Par contre après quelques tests je me suis rendu compte que bizarrement, mon blockly ne stockait pas la température mais l'id de mon capteur ...
Par contre après quelques tests je me suis rendu compte que bizarrement, mon blockly ne stockait pas la température mais l'id de mon capteur ...
Re: Notification sms incluant la valeur d'une variable ?
Bonsoir,
Dans l'esprit de cette discussion, je voudrais savoir si on peut passer une variable dans la commande: commandArray['SendNotification'] de lua?
par exemple
je ne trouve pas la syntaxe. ( $temp ça marche en bash mais pas là)
Merci d'avance
Dans l'esprit de cette discussion, je voudrais savoir si on peut passer une variable dans la commande: commandArray['SendNotification'] de lua?
par exemple
Code : Tout sélectionner
temp = uservariables['T_max']
comment l'inserer dans la commande
commandArray['SendNotification']='subject#body#0'
Merci d'avance
Hard:Raspberry Pi4 + SSD Arduino Tablette murale Archos
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Re: Notification sms incluant la valeur d'une variable ?
Bonsoir
Oui on peut faire un truc comme cela
Attention à garder le # puis mettre un body et à mettre les quotes correctement
je pense mais je n'ai pas testé (dépassement de mon quota quotidien)
que ceci devrait fonctionner si je ne me suis pas raté dans les '
commandArray['SendNotification']='La variable= '#ma variable= '..tostring(temp)..
Oui on peut faire un truc comme cela
la notif marche en 2 partie le sujet puis # puis le bodytemp=uservariables['limvar']
print ("temp" .. temp)
commandArray['SendNotification']='variable= '..tostring(temp)..'#ma variable'
Attention à garder le # puis mettre un body et à mettre les quotes correctement
je pense mais je n'ai pas testé (dépassement de mon quota quotidien)
que ceci devrait fonctionner si je ne me suis pas raté dans les '
commandArray['SendNotification']='La variable= '#ma variable= '..tostring(temp)..
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
Re: Notification sms incluant la valeur d'une variable ?
J'ai essayé d'adapter le script de niveau de batterie mais je bloque à l'installation de request, la commande pip ne fonctionne pas, command not found.
Que dois-je faire ?
Et encore un grand merci pour toutes ces infos !!
Que dois-je faire ?
Et encore un grand merci pour toutes ces infos !!
Re: Notification sms incluant la valeur d'une variable ?
Bonjour
un sudo apt-get install python-pip
un sudo apt-get install python-pip
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Objectif : WAF > 1
Re: Notification sms incluant la valeur d'une variable ?
Bonjour
Merci Patrice ça marche bien.
Du coup, voila un petit script en Lua qui envoie une notification (en Prowl chez moi) à 7h30 le matin et qui indique la température la plus basse de la nuit (entre le coucher et le lever du soleil).
A adapter selon les besoins, on peut aussi faire un thermomètre Mini-Maxi que l'on récupère dans Domoticz.
A ce sujet ce serait bien d'avoir un virtual-sensor qui stocke 2 températures; comment peut on faire une suggestion à Domoticz?
Merci Patrice ça marche bien.
Du coup, voila un petit script en Lua qui envoie une notification (en Prowl chez moi) à 7h30 le matin et qui indique la température la plus basse de la nuit (entre le coucher et le lever du soleil).
Code : Tout sélectionner
-- T_ext: temperature exterieure
-- T_mini: uservariable qui stocke la température la plus basse
--à mettre dans ~/domoticz/scripts/lua/script_device_Tmini.lua
commandArray = {}
if (devicechanged['Text'])
then
if (uservariables['T_mini'] > otherdevices_temperature['Text']) and (timeofday['Nighttime'])
then
uservariables['T_mini'] = otherdevices_temperature['Text']
commandArray['Variable:T_mini']= tostring(uservariables["T_mini"])
end
time = os.date("*t")
if time.hour == 7 and time.min == 30
then
commandArray['SendNotification']='Temperature Mini#'..(string.format("%g",tostring(uservariables['T_mini'])))..'°C'
uservariables['T_mini'] = 100
commandArray['Variable:T_mini']= tostring(uservariables["T_mini"])
end
end
return commandArray
A ce sujet ce serait bien d'avoir un virtual-sensor qui stocke 2 températures; comment peut on faire une suggestion à Domoticz?
Hard:Raspberry Pi4 + SSD Arduino Tablette murale Archos
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo
Soft: Domoticz WireGuard vpn Homebridge Tradfri Ikea
Devices:[/colore]Rfxtrx433 DI-O Chacon Sonoff touch Anémomètre, pluviometre, sondes Orégon, capteurs humidité Miflora, téléinfo