Page 3 sur 3

Re: Niveau batterie sur dashboard

Publié : 14 août 2022, 16:28
par samourai47
hello
Je deterre un peu le sujet mais je galère un peu ^pour l'intégration

L'ecoute des devices se fait bien mais j'ai une erreur sur le sendmail à priori ligne 34

Code : Tout sélectionner

  2022-08-14 16:33:00.275 Status: LUA: Batterie low /!\ $Température Douche : 38%
2022-08-14 16:33:00.437 Status: LUA: Batterie low /!\ Sensor garage : 83%
2022-08-14 16:33:00.275 Error: EventSystem: in Script #2: [string "..."]:34: attempt to concatenate a nil value (global 'admin')
2022-08-14 16:33:00.437 Error: EventSystem: in Script #2: [string "..."]:34: attempt to concatenate a nil value (global 'admin') 
le code installé

Code : Tout sélectionner

-- chargement des modules
dofile('/home/pi/domoticz/scripts/lua/modules.lua')

debug = true  -- true pour voir les logs dans la console log Dz ou false pour ne pas les voir
commandArray = {} 

local lowBat = 87	-- niveau de batterie en deçà duquel il y a déclenchement de l'alerte

local capteurs = {}

-- liste de modules à contrôler
capteurs['0']='$Température Douche'
capteurs['1']='Sensor garage'
--capteurs['2']='salle serveur'
--capteurscapteurs['3']='douche'
--capteurscapteurscapteurs['4']='chambre'
--capteurscapteurscapteurs['5']='piscine'
--capteurscapteurscapteurscapteurs['6']='thomas'
--capteurs['7']='salon'



if (heure == '16:26') then
	for i, module in pairs(capteurs) do
		local capteur = jsonInfos(module)
		if (capteur.BatteryLevel >= lowBat) then
			log('Batterie Ok '..module..' : '..capteur.BatteryLevel..'%',debug)
			commandArray[#commandArray+1]={['lowBat_'..module]='Off'}
		else
			warn('Batterie low /!\\ '..module..' : '..capteur.BatteryLevel..'%')
			commandArray[#commandArray+1]={['lowBat_'..module]='On'}	
			if (jour == 'dimanche') then
				commandArray[#commandArray+1]={['SendEmail']='Battery Low:#'..module..' (Level: Low)#'..admin}
			end			
		end
	end
end

return commandArray
J'ai mis mis dans modules.lua les valeur de user et mdp

merci pour l'aide

Re: Niveau batterie sur dashboard

Publié : 14 août 2022, 18:07
par Chrominator
Est-que ton script positionne une valeur pour admin ?
On dirait que l'erreur vient de là.

Re: Niveau batterie sur dashboard

Publié : 14 août 2022, 22:26
par samourai47
en effet cette ligne me met en erreur
mais je ne comprends pas a quoi correspond cet admin
j'ai essaye un email mais erreur aussi

Re: Niveau batterie sur dashboard

Publié : 15 août 2022, 07:38
par Chrominator
admin représente l’e-mail du destinataire du mail, la syntaxe est décrite ici.
Tu pourrais essayer d'ajouter une ligne au début de ton script, du genre :

Code : Tout sélectionner

local admin = 'ton_adresse_mail@domaine.com'
en remplaçant ton_adresse_mail@domaine.com par ton adresse mail bien sûr. ;)

Re: Niveau batterie sur dashboard

Publié : 15 août 2022, 11:20
par samourai47
hello
J'ai fait comme tu m'as dit
ca a l'air de marcher

Par contre dans mon cas, j'ai un capteur inferieur necesitant l'envoi d'un mail
et en fait il m'envoi 11 mails pour ce meme capteur....

bizarre