Page 1 sur 1

DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 18 nov. 2020, 18:47
par denis_brasseur
Bonsoir à toutes et tous,

depuis un script LUA, je sais effacer les logs (d'un capteur texte) avec une commande json :

Code : Tout sélectionner

/json.htm?type=command&param=clearlightlog&idx=id
Je souhaite faire la même chose depuis un code en dzvents, y a t il une commande pour le faire, ou bien dois je envoyer la même commande en json ?
Je n'ai rien trouvé de tel dans la doc dzvents.
Je sais que je peux modifier le nombre de jours de log dans Paramètre, mais cela concernerait l'ensemble des devices.
Une idée ?
Je rafraichis la valeur de device texte toutes les 5 minutes, mais l'historique de ces capteurs ne m'intéresse pas, je ne souhaite conserver que la valeur affichée.
Merci d'avance pour les spécialiste dzvents.

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 18 nov. 2020, 22:41
par Keros
Je lancerai cette action depuis l'URL. Je ne sais pas s'il existe une fonction Dzvents pour ça. Pour moi la différence serai seulement un bout de code plus simple.
Maintenant tu peux aussi créer une fonction > l'adresse url serait en haut et ton script serait peut-être un peu plus lisible (sans la grosse chaine url en plein milieu).

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 19 nov. 2020, 05:32
par denis_brasseur
C'est effectivement la méthode que j'ai utilisé en LUA, fonction dans mon module.lua et appel de la fonction à la demande via deleteLogtext(idx).
Je vais reproduire la même fonction, je n'ai pas trouvé de fonctionnalité permet de le faire directement.
Merci

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 21 nov. 2020, 07:20
par denis_brasseur
Voici la fonction LUA transcrit en DZVENTS :

Code : Tout sélectionner

--jsonAPI('type=command&param=clearlightlog&idx=idx')
function jsonAPI(apiCall)
	domoticzIP = '127.0.0.1'
	domoticzPORT = '8080'
	domoticzUSER = 'pi'     -- nom d'utilisateur
	domoticzPSWD = 'djgdjgjqgdjgc'       -- mot de passe
	domoticzURL = 'http://'..domoticzIP..':'..domoticzPORT
	curl = '/usr/bin/curl -m 15 '   -- ne pas oublier l'espace à la fin
	--print(curl..'-u '..domoticzUSER..':'..domoticzPSWD..' "'..domoticzURL..'/json.htm?'..apiCall..'" &')
	os.execute(curl..'-u '..domoticzUSER..':'..domoticzPSWD..' "'..domoticzURL..'/json.htm?'..apiCall..'" &')
end
L'appel à la fonction se fait avec :

Code : Tout sélectionner

jsonAPI('type=command&param=clearlightlog&idx=3741')
Il est évidement possible d'envoyer d'autres syntaxes.
Source d'inspiration :
dzVents: Interact with all switches and sensors using JSON with an optional delay argument

EDIT 07h42 : ajout de domoticzUSER et domoticzPSWD

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 21 nov. 2020, 07:32
par Keros
Merci Denis, je vais mettre cette fonction de coté, je pense qu'elle va servir ;)

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 06 sept. 2021, 18:06
par inter-rupteur
Bonjour à tous,

j'ai un switch On/Off. Comment je pourrais en utilisant ce script, effacer seulement les "Off" et ne garder que les "On" dans les logs de ce switch ?

Code : Tout sélectionner


--jsonAPI('type=command&param=clearlightlog&idx=idx')
function jsonAPI(apiCall)
	domoticzIP = '127.0.0.1'
	domoticzPORT = '8080'
	domoticzUSER = 'pi'     -- nom d'utilisateur
	domoticzPSWD = 'djgdjgjqgdjgc'       -- mot de passe
	domoticzURL = 'http://'..domoticzIP..':'..domoticzPORT
	curl = '/usr/bin/curl -m 15 '   -- ne pas oublier l'espace à la fin
	--print(curl..'-u '..domoticzUSER..':'..domoticzPSWD..' "'..domoticzURL..'/json.htm?'..apiCall..'" &')
	os.execute(curl..'-u '..domoticzUSER..':'..domoticzPSWD..' "'..domoticzURL..'/json.htm?'..apiCall..'" &')
end

jsonAPI('type=command&param=clearlightlog&idx=3741&Status=Off')


j'ai essayé cette combinaison mais cela ne marche pas...


Merci à vous pour votre aide.

Inter-Rupteur

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 06 sept. 2021, 18:20
par Neutrino
Bonjour,
Malheureusement, ce n'est pas possible.
Et depuis la dernière maj il ne conserve dans l'historique que le premier ordre. Si tu envoies 4 on, il n'affichera que le premier avec en dernier maj l'heure du dernier.
A voir quel est ton besoin...

Re: DZVENTS : Comment effacer les logs d'un capteur texte

Publié : 06 sept. 2021, 18:31
par inter-rupteur
Salut Neutrino,

merci pour ton retour. ;)

Je me tire les cheveux (malgré le peu qui me reste...) à essayer de créer un script mais en vain... Je vais créer un nouveau post pour exposer ainsi qu'expliquer mon souci et ne pas polluer celui là ...


Inter-Rupteur