Webradio

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: Webradio

Message par thier »

j'ai un interrupteur par webradio. chacun lance le même script device lua. dans ce script je mets à jour la variable radio avec l'adresse internet du flux de la radio.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
le belge
Messages : 346
Inscription : 12 déc. 2016, 19:02

Re: Webradio

Message par le belge »

salut ,
ha ok ; c'est un script lua ....

moi j'ai ça :

Code : Tout sélectionner

#!/bin/bash
 #echo virginradio
sudo  killall mplayer 
mplayer -noconsolecontrols http://mp3lg4.tdf-cdn.com/9243/lag_164753.mp3 &
en ssh ça fonctionne nickel ... mais pas directement sur domoticz
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: Webradio

Message par thier »

dans ta solution tu as un bash par radio. je suis en déplacement toute la journée je peux te mettre mon script ce soir. si tu veux rester avec ta solution tu peux créer un interrupteur par radio et dans les propriétés des interrupteurs tu met pour On le chemin d'accès à ton bash.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
le belge
Messages : 346
Inscription : 12 déc. 2016, 19:02

Re: Webradio

Message par le belge »

pas de souci ,
disons que je ne veux que 2 radios , donc j'ai créé un dummy selector avec off/virginradio/rtl
à chaque level une radio

mais j'ai l'impression qu'il y a un problème de droit , peut etre qu'avec un script ça ira mieux ...

Merci à toi
Mike
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: Webradio

Message par thier »

tout d’abord le script device lua qui gère les radios

Code : Tout sélectionner

--[[
script qui gère la sélection de la radio
pour gérer le son avec un slider -> amixer cset numid=3 10% - amixer cset numid=3 20% etc ...
pour monter le son par palier de 5% -> amixer sset Master 5%+
pour baisser le son par palier de 5% -> amixer sset Master 5%-

--]]


commandArray = {}
----------------------------------------------------------------------------------------------
--Action si l'une des radios est allumée
-------------------------------------------------------------------------------------------------
if (devicechanged['France Bleue la Rochelle']== 'On') then	
	radio = 'http://direct.francebleu.fr/live/fblarochelle-midfi.mp3'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|France Bleue La Rochelle'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['France Info']== 'On') then	
	radio = 'http://direct.franceinfo.fr/live/franceinfo-midfi.mp3'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|France Info'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['Rmc']== 'On') then	
	radio = 'http://chai5she.cdn.dvmr.fr/rmcinfo'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|RMC'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['France Inter']== 'On') then	
	radio = 'http://direct.franceinter.fr/live/franceinter-midfi.mp3'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|France Inter'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['Rtl 2']== 'On') then	
	radio = 'http://streaming.radio.rtl2.fr:80/rtl2-1-44-128'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|RTL 2'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['Rires et Chansons']== 'On') then	
	radio = 'http://cdn.nrjaudio.fm/audio1/fr/30401/mp3_128.mp3?origine=fluxradios'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Rire et Chansons'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['Virgin']== 'On') then	
	radio = 'http://mp3lg4.tdf-cdn.com/9243/lag_164753.mp3'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|virgin Radio'}  -- renseigne le virtuel text avec la radio en cours d'écoute
elseif (devicechanged['Nostalgie']== 'On') then	
	radio = 'http://cdn.nrjaudio.fm/audio1/fr/30601/mp3_128.mp3?origine=fluxradios'
    --print ('radio: '..radio)
    os.execute('bash /home/pi/domoticz/scripts/sh/radio.sh "'..radio..'" &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Nostalgie'}  -- renseigne le virtuel text avec la radio en cours d'écoute
end
----------------------------------------------------------------------------------------------
--Action si l'une des radios est éteinte
-------------------------------------------------------------------------------------------------
--if (devicechanged['Arret radio']== 'On' or (( devicechanged['France Bleue la Rochelle']== 'Off' or devicechanged['France Info']== 'Off' or devicechanged['France Inter']== 'Off' or devicechanged['Rtl 2']== 'Off'or devicechanged['Rires et Chansons']== 'Off' or devicechanged['Virgin']== 'Off' or devicechanged['Nostalgie']== 'Off' or devicechanged['Rmc']== 'Off' ) and  otherdevices['Arret radio']== 'Off') ) then	
    if (devicechanged['Arret radio']== 'Off' ) then    
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}  -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}  -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}  -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute
    os.execute('bash /home/pi/domoticz/scripts/sh/radiokill.sh &')
    commandArray[#commandArray + 1]={['UpdateDevice'] = '982|1|Radio éteinte'}   -- renseigne le virtuel text avec la radio en cours d'écoute

end
----------------------------------------------------------------------------------------------
--Actions pour monter ou baisser le volume
-------------------------------------------------------------------------------------------------
if (devicechanged['volume raspberry plus']== 'On' or devicechanged['volume raspberry plus']== 'Off') then	
    os.execute('bash /home/pi/domoticz/scripts/sh/volumeplus.sh &')
elseif (devicechanged['volume raspberry moins']== 'On' or devicechanged['volume raspberry moins']== 'Off') then	
    os.execute('bash /home/pi/domoticz/scripts/sh/volumemoins.sh &')

end

return commandArray
Ensuite le script qui gère la baisse du volume sonore

Code : Tout sélectionner

#!/bin/sh
amixer set Master 5%- > /dev/null
le script qui gère l'augmentation du volume

Code : Tout sélectionner

#!/bin/sh
amixer set Master 5%+ > /dev/null
le script qui éteint la radio

Code : Tout sélectionner

#!/bin/sh
sudo killall vlc > /dev/null # /tmp/mon_log_vlc.txt
pour finir le script qui lance les radios

Code : Tout sélectionner

#!/bin/sh

radio="$1"
pactl unload-module module-loopback >/dev/null
sudo killall vlc > /dev/null #        >  /tmp/mon_log_vlc.txt #  /dev/null
sleep 2
sudo -u pi cvlc "$radio"  > /dev/null #>> /tmp/mon_log_vlc2.txt    #  /dev/null #2>&1 &
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
le belge
Messages : 346
Inscription : 12 déc. 2016, 19:02

Re: Webradio

Message par le belge »

salut et merci pour tes scripts ...

je patauge complètement ... mais il faut que j'y arrive !

je te tiens au courant si vraiment je n'y arrive pas !

sont chiants les débutants .....

Mike
le belge
Messages : 346
Inscription : 12 déc. 2016, 19:02

Re: Webradio

Message par le belge »

Yessss !!!!

problème résolu ...
j'ai juste ajouter root en adduser sur pulse-access

trop bien !

merci pour tes liens mais j'ai gardé la config que j'avais

Mike
Répondre