[python] TTS et chromecast
Publié : 01 mai 2017, 17:55
Bonjour,
je souhaitais remplacer les notifications sur ma tablette de salon par une solution un peu plus performante au niveau du son notamment.
j'ai un dock iphone 4 pour me servir d'enceinte amplifiée et un chromecast audio qui dort dans un tiroir.
voila donc mon script me permettant d'utiliser les notifications domoticz avec un chromecast
le script chromecast.py à placer dans /home/pi/domoticz/scripts/python/ et à personnaliser avec l'adresse de domoticz et le nom que vous avez défini lors de l'installation de votre chromecast
si vous n'avez pas python 3 d'installé
pour tester en ligne de commande depuis la console
évitez les accents, les ' ...
ensuite dans domoticz réglages > paramètres > notifications > HTTP personnalisé/Action:
il y a environ 10 secondes de latence entre l'envoi de la notification et le message vocal
voila, si cela peut servir.
je souhaitais remplacer les notifications sur ma tablette de salon par une solution un peu plus performante au niveau du son notamment.
j'ai un dock iphone 4 pour me servir d'enceinte amplifiée et un chromecast audio qui dort dans un tiroir.
voila donc mon script me permettant d'utiliser les notifications domoticz avec un chromecast
le script chromecast.py à placer dans /home/pi/domoticz/scripts/python/ et à personnaliser avec l'adresse de domoticz et le nom que vous avez défini lors de l'installation de votre chromecast
Code : Tout sélectionner
#!/usr/bin/python3
from __future__ import print_function
import sys; sys.path.insert(0,'/usr/local/lib/python3.4/dist-packages/')
import time
import pychromecast
from gtts import gTTS
#import sys
URL_DOMOTICZ = 'http://192.168.10.240:8080/' # renseigner l'adresse et le port de votre domoticz
for arg in sys.argv:
print(arg)
tts = gTTS(text=arg, lang='fr', slow=False)
tts.save("/home/pi/domoticz/www/notification.mp3")
chromecasts = pychromecast.get_chromecasts()
[cc.device.friendly_name for cc in chromecasts]
['MonChromecast'] #vous pouvez mettre le nom de plusieurs chromecast separe par une virgule ex: ['douche', 'salon', 'cuisine', 'chambre']
cast = next(cc for cc in chromecasts )
cast.wait()
mc = cast.media_controller
mc.play_media(URL_DOMOTICZ+'notification.mp3', 'audio/mp3')
mc.block_until_active()
mc.pause()
mc.play()ensuite on install pychromecast# install dependencies
sudo apt-get install -y python3
# Domoticz Beta versions since V3.6129 also require...
sudo apt-get install -y python3-dev python3-pip
# credit [https://www.domoticz.com/forum/viewtopi ... 6&p=119747]
et le tts de googlesudo pip3 install pychromecast
Code : Tout sélectionner
sudo pip3 install gtts
Code : Tout sélectionner
python3 /home/pi/domoticz/scripts/python/chromecast.py "bonjour, je voudrais tester mon chromecast"
ensuite dans domoticz réglages > paramètres > notifications > HTTP personnalisé/Action:
Code : Tout sélectionner
script:///home/pi/domoticz/scripts/python/chromecast.py "#MESSAGE"voila, si cela peut servir.