Page 1 sur 1

Extraire une variable d'un dummy pour l'importer dans un script

Publié : 23 janv. 2017, 17:23
par nissart
Bonjour,
j'aurais certainement plus de chances ici.

J'utilise MPD pour la musique du salon.

Je souhaiterais pouvoir utiliser un dummy dimmer qui correspondrait au volume de MPD

comment extraire le "Level" de mon dummy "volume" et l'intégrer dans un script ?

voilà où j'en suis:

Code : Tout sélectionner

commandArray = {}
if (devicechanged['volume']) then  
	Level = tonumber(volume['Level']) //ici il faut aller chercher la variable Level de l'idx 1691
  
  os.execute('mpc -h 192.168.xxx.xxx volume '..Level..')
end

return commandArray
Merci ;)

Re: Extraire une variable d'un dummy pour l'importer dans un script

Publié : 23 janv. 2017, 18:51
par Guillaume86
Sans grande expérience sur les Dimmers, me semble que ton code n'est pas correct.

Code : Tout sélectionner

commandArray = {}
	if (devicechanged['volume']) then
		Level = otherdevices_svalues['volume']
	end
end
Je pense que ce sera plus efficace. Le tonumber doit pouvoir être effectivement utilisé cela-dit. ;)
Pour la partie discussion avec mpc, je ne saurais te dire, je n'ai pas joué avec ça.

Par contre attention, ça te donne un niveau de ton dimmer et pas un %. Si le dimmer ne va pas de 0 à 100 (ce qui n'existe pas il me semble), tu risques d'avoir des blagues.
Je te conseille de coller un p'ti print dans l'histoire histoire de vérifier la valeur relevée.
Je ne serais pas surpris qu'il faille faire un petit calcul pour sortir une info en % (ou un db suivant le soft derrière) pour piloter ça convenablement.

Re: Extraire une variable d'un dummy pour l'importer dans un script

Publié : 24 janv. 2017, 09:16
par nissart
Merci pour ces explications.
Concernant la ligne de commande, le volume de MPD va de 0 à 100 et le dimmer de 0 à 99 donc je ne chipoterai pas pour le 1% restant ;)

je teste le code et je reviens faire le point ici.

Re: Extraire une variable d'un dummy pour l'importer dans un script

Publié : 24 janv. 2017, 10:30
par Guillaume86
Tu saurais dire le pas du Dimmer et lequel tu as sélectionné pour le créer ?

J'aimerais bien grouper un peu le pilotage de mon matos multimédia et ça pourrait bien m'aider.

Re: Extraire une variable d'un dummy pour l'importer dans un script

Publié : 24 janv. 2017, 15:06
par nissart
Alors voila le script final qui fonctionne

Code : Tout sélectionner

local ip = '192.168.xxx.xxx'      -- ip du serveur mpd
local port = '6600'            -- port du serveur mpd

commandArray = {}
	if (devicechanged['volumeMPD']) then
		volume = (tonumber(otherdevices_svalues['volumeMPD'])+1)
		os.execute('MPD_HOST='..ip..' MPD_PORT='..port..' mpc volume '..volume..'&')
	end
return commandArray
Le pas du dimmer est de 1 tout simplement et j'ai rajouté +1 à ma variable pour aller chercher le 100% ;)

Pour l'ajouter en dummy tu vas sur
Réglages > Matériel > Créer capteur virtuels > type de capteur : interrupteur
puis tu retournes dans tes interrupteurs > tu édites ton inter que tu viens de créer et tu passes le type d'interrupteur en dimmer

Re: Extraire une variable d'un dummy pour l'importer dans un script

Publié : 24 janv. 2017, 15:33
par Guillaume86
Merci pour l'info' !
J'étais toujours passé par l'onglet Switch pour créer mes Dummy Switch, du coup j'étais un peu paumé dans le choix "un peu large".