Icones selecteur

Posez ici vos questions d'utilisation, de configuration de DomoticZ, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramétrage.
Des forums spécifiques sont ouverts ci-dessous pour regrouper les différents sujets.
patatrak
Messages : 58
Inscription : 25 avr. 2018, 16:09

Icones selecteur

Message par patatrak »

Salut tout le monde
Je sais que le sujet à déjà été évoqué ici mais je relance la question car je m'en sors pas:
Le but est de changer l'icone en fonction du niveau actif.
J'ai essayé ce script lua mais rien ne change:

Code : Tout sélectionner

return {
	on = {
		devices = {'Sèche-Serviette'}
	},
	execute = function(domoticz, device)
		if device.level == 10 -- Off
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=Sèche-Serviette&description=&switchtype=18&customimage=28&used=true"')		   		   
		elseif device.level == 20 -- Auto 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=Sèche-Serviette&description=&switchtype=18&customimage=21&used=true"')		   
		elseif device.level == 30 -- Confort
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=Sèche-Serviette&description=&switchtype=18&customimage=22&used=true"')		   		              
           elseif device.level == 40 -- Eco
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=Sèche-Serviette&description=&switchtype=18&customimage=23&used=true"')		   		              
		
	
		end -- if
		                                                                          
end -- function

}
En mettant ça directement dans les actions du sélecteur dans sa config (bouton modifier) rien n'y fait non plus

Code : Tout sélectionner

http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=seche&description=&switchtype=18&customimage=22&used=true
ça fonctionne uniquement quand je claque çà directement dans le navigateur donc pour moi le code est bon

J'ai essayé de lancer le script avec un blockly sans succès
On dirait que la requête n'est jamais exécutée.

Qu'est ce que je fais pas bien????
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Icones selecteur

Message par vil1driver »

Salut,

Dans ton code dzvent tu mets

Code : Tout sélectionner

name=Sèche-Serviette
Puis tu evoques dans l'url

Code : Tout sélectionner

name=seche
Peut-être une piste ?

Ps: enlève description= ou met en une..
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Icones selecteur

Message par denis_brasseur »

patatrak a écrit : 10 juin 2019, 22:58
En mettant ça directement dans les actions du sélecteur dans sa config (bouton modifier) rien n'y fait non plus

Code : Tout sélectionner

http://192.168.1.40:8080/json.htm?type=setused&idx=1519&name=seche&description=&switchtype=18&customimage=22&used=true
ça fonctionne uniquement quand je claque çà directement dans le navigateur donc pour moi le code est bon
J'utilise la même chose pour un selector, la ligne fonctionne dans le navigateur, et fonctionne également dans les actions du selector.
Fonctionne même avec un caractère accentué, mais n'aime pas les espaces, à moins de les remplacer par %20
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
patatrak
Messages : 58
Inscription : 25 avr. 2018, 16:09

Re: Icones selecteur

Message par patatrak »

Vil1driver
effectivement mais se sont 2 requêtes différentes qui ne sont pas utilisées simultanément
j'avais simplifié l'url pour essai direct dans les actions du selecteur en enlevant en particulier l'accent.
mais mème si on change name cela à pour effet de changer l'intitulé du widget et n'affecte pas le fonctionnement.
j'ai essayé d'enlever la description = pas mieux
Dernière modification par patatrak le 11 juin 2019, 07:13, modifié 1 fois.
patatrak
Messages : 58
Inscription : 25 avr. 2018, 16:09

Re: Icones selecteur

Message par patatrak »

Denis

Alors je comprends pas pourquoi çà marche pas chez moi
Pour info les espaces peuvent être remplacer aussi par un +
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Icones selecteur

Message par denis_brasseur »

A part vérifier si Événements (Lua/Blockly/Scripts) et dzVents sont bien activé dans Réglage/paramètres/autres, je ne vois pas.

viewtopic.php?f=17&t=7136&start=100
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
patatrak
Messages : 58
Inscription : 25 avr. 2018, 16:09

Re: Icones selecteur

Message par patatrak »

Oui oui c'est bien activé d'ailleurs mes autres script et blockly fonctionnent
Je comprends pas
Jmrios
Messages : 13
Inscription : 25 mars 2020, 17:50

Re: Icones selecteur

Message par Jmrios »

Bonjour a tous


Script pour changer les icones des 8 phases de la lune avec un sélecteur

Code : Tout sélectionner

return {
	on = {
		devices = {268
			
		}
	},
	execute = function(domoticz, device)
		if device.level == 10 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=31&used=true"')		   		   
		elseif device.level == 20 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=32&used=true"')		   		   
		elseif device.level == 30 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=33&used=true"')		   		   
		elseif device.level == 40 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=34&used=true"')		   		   
		elseif device.level == 50 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=35&used=true"')		   		   
		elseif device.level == 60 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=36&used=true"')		   		   
		elseif device.level == 70  
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=37&used=true"')		   
		elseif device.level == 80 
		then
           os.execute('curl -s -i -H "Accept: application/json" "http://192.168.0.107:8080/json.htm?type=setused&idx=268&name=Sélecteur+Mode&description=&switchtype=18&customimage=38&used=true"')		   		              
		end -- if

                                                                          
end -- function

}
J'ai integre ce script proposé par Datawolf et cela fonctionne a moitié, c'est a dire

il me faut rafraîchir la page après avoir sélectionne un de mes huit boutons pour avoir le changement d''icone
Idem si je rentre l'url dans mon navigateur

Mes icones ont été enregistrées manuellement dans le Dossier domoticz/www/images et les textes dans le fichier switch_icons.txt
Sur le forum je vois qu'il faut les enregistrer via l'onglet "icones personnalisées" de domotiz, mais quand j'essaye d'envoyer un fichiers Zip cela m'affiche une ERREUR pourtant ce sont les fichiers pris sur le site gitbus

Est ce la raison?

Mon installation sur Raspberry PI3 connecter a un disque dur SSD avec Rasbian Buster et la dernière version de domoticz V2020.1

Si quelqu'un a une idée ? Merci d'avance
Répondre