[Altes Modul] GoogleCast (98_GOOGLECAST.pm)

Begonnen von dominik, 10 Dezember 2015, 22:43:49

Vorheriges Thema - Nächstes Thema

JPP88

Okay, mal wieder überlesen, aber dann ist es nicht nur bei mir so.

Auf die Gefahr hinaus, dass dies auch schon gepostet wurde. Folgenden Eintrag habe ich jetzt ab und zu im Logfile:

No handlers could be found for logger "pychromecast.socket_client"

Stört mich jetzt direkt nicht, aber vielleicht interessant zum Debuggen.

dominik

Ich habe mir das gerade nochmals angesehen und bei mir getestet. Habe auch schon erkannt woran es liegt. In pychromecast ist eine initialize_connection Methode mit einer endlos while-Loop.

Werde mal prüfen was ich da im pychromecast Code anpassen kann um diese Loop aufzulösen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

#152
Hier mal eine Version zum Testen. Damit wird 100ms geblockt wenn der Chromecast nicht erreicht erreichbar ist.

Ich überlege noch wie da eine vernünftige Lösung in pychromecast implementieren kann welche wirklich nicht blockt.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Esjay

Hi dominik, du hattest am Anfang des Theard mal gesagt,dass du dir Geschichze mit Spotify mangels Premium Account nicht anschauen kannst.Wärest du bereit,bei bereitstellung eines Accounts bzw. einer Paypal "Spende" über 2 Monate dich der Sache anzunehmen?Ergebnisse kann man nicht versprechen,das ist mir klar,aber ich dachte ich frage mal.
Lg

siggi85

Hey,

ich wollte das Modul nun auch nutzen, da ich 5 Chromecasts zu Hause habe (3 davon Audio). Jedoch bekomme ich beim define folgende Meldungen im Log:
Traceback (most recent call last):
  File "<string>", line 3, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pychromecast/__init__.py", line 15, in <module>
    from .discovery import discover_chromecasts, start_discovery, stop_discovery
  File "/usr/local/lib/python2.7/dist-packages/pychromecast/discovery.py", line 5, in <module>
    from zeroconf import ServiceBrowser, Zeroconf
  File "/usr/local/lib/python2.7/dist-packages/zeroconf.py", line 26, in <module>
    import enum
ImportError: No module named enum
2017.01.31 18:08:49 1: reload: Error:Modul 98_CHROMECAST deactivated:
Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.

2017.01.31 18:08:49 0: Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.


Ich betreibe FHEM auf einem Rasperry Pi 2 und habe vorher von Wheezy auf jessie upgedatet. Danach habe ich alle Requirements nach bestem Gewissen ausgeführt.

Gruß
Siggi

Esjay

Zitat von: siggi85 am 31 Januar 2017, 18:45:12
Hey,

ich wollte das Modul nun auch nutzen, da ich 5 Chromecasts zu Hause habe (3 davon Audio). Jedoch bekomme ich beim define folgende Meldungen im Log:
Traceback (most recent call last):
  File "<string>", line 3, in <module>
  File "/usr/local/lib/python2.7/dist-packages/pychromecast/__init__.py", line 15, in <module>
    from .discovery import discover_chromecasts, start_discovery, stop_discovery
  File "/usr/local/lib/python2.7/dist-packages/pychromecast/discovery.py", line 5, in <module>
    from zeroconf import ServiceBrowser, Zeroconf
  File "/usr/local/lib/python2.7/dist-packages/zeroconf.py", line 26, in <module>
    import enum
ImportError: No module named enum
2017.01.31 18:08:49 1: reload: Error:Modul 98_CHROMECAST deactivated:
Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.

2017.01.31 18:08:49 0: Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.


Ich betreibe FHEM auf einem Rasperry Pi 2 und habe vorher von Wheezy auf jessie upgedatet. Danach habe ich alle Requirements nach bestem Gewissen ausgeführt.

Gruß
Siggi

ImportError: No module named enum <--- hier liegt das Problem..Schau mal in meinen Post 144

Grüße

meddie

Hallo das Modul liest sich schon echt interessant an. In Verbindung mit Plex könnte das eine feine Sache sein. Eine Frage habe ich zu TTS, ich habe ein paar Seiten vorher gelesen dass man über die Google translator API TTS Ausgaben machen kann. Wenn gerade nichts angehört wird ist klar die Chromecasts spielen die Ansage ab und gut ist, aber angenommen man hört gerade einen Radiosender oder eine MP3 Datei an und möchte mitten drin eine TTS Ansage machen, wird dann anschließend die MP3 Datei bzw der Radiosender weiter wiedergegeben oder wird es quasi durch die TTS Ansage unterbrochen und beleibt dann still?

Ich hoffe ich konnte mich verständlich ausdrücken. Hier ein Szenario was ich mit meiner Frage bezwecken wollte: am Abend möchte ich etwas Musik hören, um 20 Uhr wird es dunkel und ich möchte das FHEM mir über alle Lautsprecher kurz bevor die Jalousien heruntergelassen werden eine Info darüber ausgibt "Vorsicht in 10 Minuten schließen die Jalousien". Im Idealfall wäre es dann so, dass die aktuelle Wiedergabe pausiert wird ein kurzes Jingle abgespielt wird dann die Ansage kommt und anschließend wieder die Wiedergabe der Musik fortgesetzt wird.

Danke
Gruß Eddie

Fixel2012

Zitat von: meddie am 31 Januar 2017, 21:33:31
Hallo das Modul liest sich schon echt interessant an. In Verbindung mit Plex könnte das eine feine Sache sein. Eine Frage habe ich zu TTS, ich habe ein paar Seiten vorher gelesen dass man über die Google translator API TTS Ausgaben machen kann. Wenn gerade nichts angehört wird ist klar die Chromecasts spielen die Ansage ab und gut ist, aber angenommen man hört gerade einen Radiosender oder eine MP3 Datei an und möchte mitten drin eine TTS Ansage machen, wird dann anschließend die MP3 Datei bzw der Radiosender weiter wiedergegeben oder wird es quasi durch die TTS Ansage unterbrochen und beleibt dann still?

Ich hoffe ich konnte mich verständlich ausdrücken. Hier ein Szenario was ich mit meiner Frage bezwecken wollte: am Abend möchte ich etwas Musik hören, um 20 Uhr wird es dunkel und ich möchte das FHEM mir über alle Lautsprecher kurz bevor die Jalousien heruntergelassen werden eine Info darüber ausgibt "Vorsicht in 10 Minuten schließen die Jalousien". Im Idealfall wäre es dann so, dass die aktuelle Wiedergabe pausiert wird ein kurzes Jingle abgespielt wird dann die Ansage kommt und anschließend wieder die Wiedergabe der Musik fortgesetzt wird.

Danke
Gruß Eddie
Das geht meine ich so leider nicht.

Nur mit entsprechend eigenen Code.
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

siggi85

Zitat von: Esjay am 31 Januar 2017, 18:47:22
ImportError: No module named enum <--- hier liegt das Problem..Schau mal in meinen Post 144

Grüße

Danke für die schnelle Antwort. Leider hat das alleine nicht zum gewünschten Ergebnis geführt. Das lag aber daran, dass mein pip nicht mehr funktioniert hat und ich keine Module nachladen konnte. Nach einigem Troubleshooting konnte ich es wieder fixen, indem ich es über easy-install erneut installiert habe, danach waren alle erforderlichen Python Module anscheinend bereits dabei und ich konnte meinen ersten Chromecast erfolgreich einbinden. Danke für die Hilfe! :)

siggi85

Kurze Rückmeldung: Auch mit den Audio Chromecasts funktioniert das Modul wunderbar. Danke dafür! :)

Feature Requests meinerseits: Ich würde mich auch über eine Spotify Integration freuen. Und eine Sprachausgabe mit pausierter aktiver Wiedergabe wäre ebenso klasse (auch wenn ich mir vorstellen kann, dass es ggf. nicht möglich ist, alleine schon das Problem wenn der Chromecast gerade vom Tablet oder SMartphone gesteuert wird). Und eine Frage noch: Ist es über die Schnittstelle zum Chromecast möglich PopUp Fenster mit Text zu senden? Also wie das Fenster was aufgeht, wenn man über YouTube zB. ein neues Video in die Playlist packt.

Fixel2012

Zitat von: siggi85 am 03 Februar 2017, 13:14:18
Kurze Rückmeldung: Auch mit den Audio Chromecasts funktioniert das Modul wunderbar. Danke dafür! :)

Feature Requests meinerseits: Ich würde mich auch über eine Spotify Integration freuen. Und eine Sprachausgabe mit pausierter aktiver Wiedergabe wäre ebenso klasse (auch wenn ich mir vorstellen kann, dass es ggf. nicht möglich ist, alleine schon das Problem wenn der Chromecast gerade vom Tablet oder SMartphone gesteuert wird). Und eine Frage noch: Ist es über die Schnittstelle zum Chromecast möglich PopUp Fenster mit Text zu senden? Also wie das Fenster was aufgeht, wenn man über YouTube zB. ein neues Video in die Playlist packt.

Kann mich mit dem Wunsch nach einer Spotify Integration nur anschließen  :)
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

hosimpson

#161
Klasse Idee und folgen Infos von mir:

Es funktioniert, wie beschrieben, mit einem Lautsprecher "Raumfeld One S".

Mit dem "Raumfeld Connector" bekomme ich beim definieren schon folgende Fehlermeldungen ins LOG:
2017.02.05 17:37:41 3: CHROMECAST: wohnzimer initializing...
2017.02.05 17:37:41 1: PERL WARNING: Use of uninitialized value $string in split at ./FHEM/98_CHROMECAST.pm line 132.
2017.02.05 17:37:41 1: PERL WARNING: Use of uninitialized value $name in string at ./FHEM/98_CHROMECAST.pm line 133.


An der Stelle scheint er sich in einer Schleife verfangen, da die beiden Warnings alle 20 Sekunden neu ins LOG geschrieben werden.

Mit dem Chromecast Plugin aus dem Browser (Chrome) lassen sich beide Geräte ohne erkennbaren Unterschied auswählen und bedienen.

VG
Stefan

docb

Moin zusammen,
ich habe jetzt alles installiert, was hier im Thema irgendwo empfohlen wurde (unter Rasperry Jessie):

Zitat
sudo apt-get install python-dev
sudo cpanm Test::Warn --force
sudo cpanm Inline::Python
sudo apt-get install libwww-perl
sudo pip install youtube-dl
sudo pip install git+https://github.com/dominikkarall/pychromecast.git (eine von mir abgeänderte Version)
sudo pip uninstall enum
sudo pip uninstall enum-compat
sudo pip install enum34

Ich nutze die am 24.01. gepostete Version von 98_chromecast.pm.

allerdings bekomme ich beim reload
reload 98_CHROMECAST.pm


Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.


Hat jemand noch eine Idee?
Viele Grüße
doc
I love FHEM!

Esjay

#163
Zitat von: docb am 06 Februar 2017, 16:47:14
Moin zusammen,
ich habe jetzt alles installiert, was hier im Thema irgendwo empfohlen wurde (unter Rasperry Jessie):

Ich nutze die am 24.01. gepostete Version von 98_chromecast.pm.

allerdings bekomme ich beim reload
reload 98_CHROMECAST.pm


Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.


Hat jemand noch eine Idee?
Viele Grüße
doc
sudo pip install git+https://github.com/balloob/pychromecast.git
Vorher ein
sudo pip uninstall pychromecast


docb

Danke für den Tipp - habe ich versucht, Fehler bleibt:
Error -- py_eval raised an exception at /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2/Inline/Python.pm line 177.
BEGIN failed--compilation aborted at ./FHEM/98_CHROMECAST.pm line 446.


Im Log steht übrigens:
ImportError: cannot import name socket_client
    from . import socket_client
  File "/usr/local/lib/python2.7/dist-packages/pychromecast/__init__.py", line 14, in <module>
  File "<string>", line 3, in <module>
Traceback (most recent call last):
I love FHEM!