Page 1 sur 3
Script lecture mp3
Publié : 16 janv. 2016, 18:13
par poopeye
Salut,
J'essaye de mettre en place un script LUA qui activerait une bande son enuite à un changement d'état d'un capteur d'ouverture de porte.
Je précise que la lecture de sons mp3 depuis la raspberry avec mplayer marche nikel.
Etant en phase de test, je souhaite le faire sur 1 passage à on d'un bouton virtuel (nommé Test Bande sonore) depuis domoticz.
Pour cela, j'ai fait le script suivant:
commandArray = {}
if (devicechanged['Test Bande sonore'] == 'On') then
os.execute('mplayer /home/pi/Sons/FEDER.mp3')
print('BP birtuel test sonore vient de passer a on')
end
return commandArray
Mais rien ne se passe et dans log j'ai le message suivant toutes les minutes:
Error: EventSystem: [string "-- ..."]:29: attempt to index global 'devicechanged' (a nil value)
Si quelqu'un a une idée ou une piste de réflexion...
Re: Script lecture mp3
Publié : 16 janv. 2016, 18:18
par vil1driver
alors, depuis mes brouilles avec l'éditeur de script,... je suis obligé de demander, tu utilises l'éditeur intégré ? le log me le fait penser..
si oui essai dans un fichier
sinon qui dit script, dit nom correct, sinon ça ne va pas, quel est son nom ?
Re: Script lecture mp3
Publié : 16 janv. 2016, 19:10
par poopeye
J'utilise l'éditeur de script. Je vais donc essayer direct dans le dossier script de la raspberry.
Le nom de mon script est :
script_device_bouton_test_son.lua
Ca parait correct?
Re: Script lecture mp3
Publié : 16 janv. 2016, 19:27
par vil1driver
oui device est ok sinon pas d'accès à la table devicechanged
http://easydomoticz.com/point-scripts-lua/
Re: Script lecture mp3
Publié : 20 janv. 2016, 18:35
par poopeye
Ca marche en mettant le script direct dans le dossier de la raspberry. Le problème semblait donc venir de l'éditeur de script..
Merci!
Re: Script lecture mp3
Publié : 12 mars 2016, 11:52
par Cubitusfr
bonjour a tous et a toutes
je viens vers vous car en voyant comment il faut procéder pour obtenir des résultats cela me décourage car je comprend rien, si vous le permettez j'aimerai vous expliquer.
voila j'ai tout bien installer pour écouter du son sur mon raspberry, wav et mp3
j'ai mis des fichiers mp3 dans un répertoire style salonon.mp3 quand je met url dans un navigateur style
http://192.168.0.45:8080/dom/media/salonon.mp3 j'entends sur Windows le son.
Par contre quand dans le raspberry je met le chemin et le son je l'entends, mais dans domoticz ou il est indiqué Script sur les interrupteur j'indique http et l'adresse pourtant rien simplement rien.
Comment je peux résoudre ce problème,
Merci de votre grande patience.
Re: Script lecture mp3
Publié : 12 mars 2016, 12:43
par vil1driver
il ne suffit pas de mettre une url pour lire le son, il faut faire un script qui va lancer un lecteur audio qui va lire ton fichier.
c'est ce qui se passe sur ton pc en fait, mais le lecteur audio est intégré à ton navigateur sous forme de plugin
et tout est transparent pour toi mais ton navigateur récupère le ficher,
cherche comment l'ouvrir et te le lit (s'il ne trouve pas de plugin utilisable il te propose de l'ouvrir avec un logiciel externe)
pour domoticz il faut créer cette petite routine et ça roule
donc créer un petit script de ce genre (ex: ton_script.sh)
Code : Tout sélectionner
#!/bin/sh
mpg321 -q /home/pi/domoticz/www/dom/media/salonon.mp3 &
bien sûre il te faudra installer mpg321 (lecteur audio)
et donner les droits d'exécution à ton script
dans actionOn de ton interrupteur il te restaras plus qu'à indiquer le chemin vers ce script
Re: Script lecture mp3
Publié : 13 mars 2016, 00:25
par Cubitusfr
bonjour a tous...
voila après lecture de tes informations cela ne marche pas aucune lecture du fichier
donc j'ai bien créer un fichier
aqua01.sh et j'ai mis dedans :
#!/bin/sh
mpg321 -q /home/pi/domoticz/www/dom/media/aqua01_on.mp3 &
et je l'ai mis dans home/pi/domoticz/scripts
j'ai tester directement la commande dans putty
mpg321 -q /home/pi/domoticz/www/dom/media/aqua01_on.mp3
et le son est lu
est-ce que deja c'est correcte ?
mpg321 est bien installé deja avant
puis dans la console avec putty j'ai bien copier ceci
sudo chmod +x aqua01.sh mais ce n'a pas fonctionné j'ai du me mettre dans le répertoire domoticz/scripts
j'ai refait la commande et a donné les droits
Est-correcte ?
Puis quand dans domoticz sur les interrupteurs on je met script://home/pi/domoticz/scripts
est-ce que a la suite je dois marqué /aqua01.sh ?
Est-ce correcte
car pour l'instant j'entends pas le son lorsque l'on active l'interrupteur.
Merci
Re: Script lecture mp3
Publié : 13 mars 2016, 10:18
par georges.attali
Bonjour,
Oui, en effet, le nom complet de ton script est :
/home/pi/domoticz/scripts/aqua01.sh
Pour etre sur que ton script est bien une commande (on utilise le nom complet) :
sudo chmod +x /home/pi/domoticz/scripts/aqua01.sh
il faut tester avec putty, se logguer, puis taper la commande
/home/pi/domoticz/scripts/aqua01.sh
et la tu devrais entendre le son.
Quand ca fonctionne, tu peux le déclarer sur l'interrupteur (comme tu as dit) :
script://home/pi/domoticz/scripts/aqua01.sh
(script:/ pour dire à domoticz que c'est un script + nom complet pour dire ou il se trouve).
Attention, il y a bien "//" au début comme dans les adresses http.
A+
GD
Re: Script lecture mp3
Publié : 13 mars 2016, 16:40
par Cubitusfr
georges.attali a écrit :Bonjour,
Oui, en effet, le nom complet de ton script est :
/home/pi/domoticz/scripts/aqua01.sh
*************** Voila c'est fait ******************.
Pour etre sur que ton script est bien une commande (on utilise le nom complet) :
sudo chmod +x /home/pi/domoticz/scripts/aqua01.sh
**************** voila c'est fait . ********************
il faut tester avec putty, se logguer, puis taper la commande
/home/pi/domoticz/scripts/aqua01.sh
et la tu devrais entendre le son.
******************** Non j'ai du mettre //home/pi/domoticz/scripts/aqua01.sh et oui j'ai entendu le son *****************
Quand ca fonctionne, tu peux le déclarer sur l'interrupteur (comme tu as dit) :
script://home/pi/domoticz/scripts/aqua01.sh
(script:/ pour dire à domoticz que c'est un script + nom complet pour dire ou il se trouve).
**************************** voila j'ai mis script://home/pi/domoticz/scripts/aqua01.sh *********************
et rien pas de son
j'ai même redémarrer le serveur même résultat
Attention, il y a bien "//" au début comme dans les adresses http.
A+
GD