fhempy: googlecast

Begonnen von dominik, 04 Dezember 2020, 23:33:53

Vorheriges Thema - Nächstes Thema

oelkanne

#375
Hallo,

Kann man mit googlecast auch eine Sprachausgabe aus FHEM an einen GoogleNest_Mini schicken?

zB mit set <NEST> speak "Wunderschönen guten Tag, ...."

Falls ja, wie verbinde überhaupt ich die GoogleNest_Minis mit googlecast?

Ein define TexttoNest fhempy googlecast "Nest Mini Wohnzimmer" reicht ja nicht (disconnected)

Grüße

Oelkanne


PS: Zum Schalten meiner Geräte nutze ich Google Assistant FHEM Connect; das läuft bereits wunderbar.

oelkanne

#376
Hab's rausgefunden!
Es waren die Anführungszeichen

ein
define TexttoNest fhempy googlecast "Nest Mini Wohnzimmer"
funktionert nicht. Das Internal CASTNAME zeigt dann nur
"Nest

ein
define TexttoNest fhempy googlecast 'Nest Mini Wohnzimmer'
liefert ein Internal CASTNAME
Nest Mini Wohnzimmer
damit geht's :-)


oelkanne

es geht auch

define TexttoNest fhempy googlecast "Nest Mini Wohnzimmer"

Mein fehler: Hatte aus versehen " verwendet, das ging natürlich nicht. OK sind " und '

Sorry

scank

Hallo,

hatte fhempy schon seit einigen tagen auf meinem Raspberry4 Buster schon einige Tage am Laufen.
Jetzt bekomme ich folgende Fehlermeldung im tuy cloud connector:
   

Failed to load module tuya_cloud: Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 301, in _onMessage
    functools.partial(importlib.import_module, pymodule)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 33, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud.py", line 5, in <module>
    from fhempy.lib.tuya_cloud.tuya_cloud_device import tuya_cloud_device
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud_device.py", line 5, in <module>
    from tuya_iot.device import TuyaDevice
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/__init__.py", line 2, in <module>
    from .device import TuyaDevice, TuyaDeviceListener, TuyaDeviceManager
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/device.py", line 7, in <module>
    from typing import Any, Literal, Optional
ImportError: cannot import name 'Literal' from 'typing' (/usr/lib/python3.7/typing.py)


saulous

Hallo zusammen.

Ich habe es geschafft das ich zB Radiosender mit meinen Google Lautsprechern abspielen kann. Wie Spiele ich einen YouTube link ab ? Habe schon einiges versucht :

set cast play url=YoutubeURL
set cast play YoutubeURL

Habt ihr dazu irgendwelche Tipps ?


Vielen Dank
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector

SouzA

Hast du denn Youtube als Abo?
Meines Wissens nach kannst du da nix auf Lautsprechern abspielen, wenn man kein Abo hat.

Bis denn
SouzA
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

saulous

Hallo,

ja ich habe YouTube Premium. Muss ich das dort irgendwo einbinden ?
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector

SouzA

#382
Das ist eine hervorragende Frage.
Da man im googlecast-Device in fhem ja auch sein Spotify-Acc verknüpfen kann (was ich noch nicht probiert habe) könnte es sein, dass so etwas auch notwendig wäre.

Da ich diese Funktion über fhem aber nicht nutze, kann ich da leider nicht weiter helfen.

Bis denn
SouzA

EDIT:
Btw... bei mir funktioniert es auch ohne Premium...
set GH_AZi play url=https://www.youtube.com/watch?v=NCDl_n2nIrI
set GH_AZi play url=https://www.youtube.com/watch?v=kPMRkQK2szI
set GH_AZi play url=https://www.youtube.com/watch?v=BQpZv2r8fb4&list=RDBQpZv2r8fb4&index=1
set GH_AZi play url=https://www.youtube.com/watch?v=BQpZv2r8fb4&list=RDBQpZv2r8fb4&start_radio=1


Manchmal dauert das Buffering etwas länger (~30 sek.), dass man den Eindruck bekommt es funktioniert nicht.
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

SouzA

Zitat von: scank am 28 Dezember 2021, 20:21:04
Hallo,

hatte fhempy schon seit einigen tagen auf meinem Raspberry4 Buster schon einige Tage am Laufen.
Jetzt bekomme ich folgende Fehlermeldung im tuy cloud connector:
   

Failed to load module tuya_cloud: Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 301, in _onMessage
    functools.partial(importlib.import_module, pymodule)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 33, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud.py", line 5, in <module>
    from fhempy.lib.tuya_cloud.tuya_cloud_device import tuya_cloud_device
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud_device.py", line 5, in <module>
    from tuya_iot.device import TuyaDevice
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/__init__.py", line 2, in <module>
    from .device import TuyaDevice, TuyaDeviceListener, TuyaDeviceManager
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/device.py", line 7, in <module>
    from typing import Any, Literal, Optional
ImportError: cannot import name 'Literal' from 'typing' (/usr/lib/python3.7/typing.py)

Moin, schon versucht noch mal eine Installation zu machen?

Bis denn
SouzA
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

saulous

Zitat von: scank am 28 Dezember 2021, 20:21:04
Hallo,

hatte fhempy schon seit einigen tagen auf meinem Raspberry4 Buster schon einige Tage am Laufen.
Jetzt bekomme ich folgende Fehlermeldung im tuy cloud connector:
   

Failed to load module tuya_cloud: Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 301, in _onMessage
    functools.partial(importlib.import_module, pymodule)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 33, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud.py", line 5, in <module>
    from fhempy.lib.tuya_cloud.tuya_cloud_device import tuya_cloud_device
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/tuya_cloud/tuya_cloud_device.py", line 5, in <module>
    from tuya_iot.device import TuyaDevice
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/__init__.py", line 2, in <module>
    from .device import TuyaDevice, TuyaDeviceListener, TuyaDeviceManager
  File "/opt/fhem/.local/lib/python3.7/site-packages/tuya_iot/device.py", line 7, in <module>
    from typing import Any, Literal, Optional
ImportError: cannot import name 'Literal' from 'typing' (/usr/lib/python3.7/typing.py)


Den Fehler hatte ich gestern auch als ich den Update Befehl gemacht habe.

Ich musste dann von Debian 10 buster auf Debian 11 bullseye Upgraden und dann nochmal das fhempy neu installieren.

Dauerte etwas aber ging dann wieder
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector

saulous

Zitat von: SouzA am 17 Januar 2022, 07:31:34
Das ist eine hervorragende Frage.
Da man im googlecast-Device in fhem ja auch sein Spotify-Acc verknüpfen kann (was ich noch nicht probiert habe) könnte es sein, dass so etwas auch notwendig wäre.

Da ich diese Funktion über fhem aber nicht nutze, kann ich da leider nicht weiter helfen.

Bis denn
SouzA

EDIT:
Btw... bei mir funktioniert es auch ohne Premium...
set GH_AZi play url=https://www.youtube.com/watch?v=NCDl_n2nIrI
set GH_AZi play url=https://www.youtube.com/watch?v=kPMRkQK2szI
set GH_AZi play url=https://www.youtube.com/watch?v=BQpZv2r8fb4&list=RDBQpZv2r8fb4&index=1
set GH_AZi play url=https://www.youtube.com/watch?v=BQpZv2r8fb4&list=RDBQpZv2r8fb4&start_radio=1


Manchmal dauert das Buffering etwas länger (~30 sek.), dass man den Eindruck bekommt es funktioniert nicht.

Danke ich versuche das später nochmal.
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector

saulous

#386
Hallo zusammen,

ich habe das mit den Youtube Links so versucht, wie es bei dir im Beitrag steht. Ohne erfolg. Wenn ich ein YouTube Link eingebe passiert nichts. Wenn ich ein Link von YouTube Music eingebe machen die Google Lautsprecher den Verbindungston und unten in den Readings ändert sich einiges. Jedoch passiert auch danach nichts mehr.

Im Fhempy log erscheint eine Fehlermeldung sobald ich ein YouTube Music Link eingebe:

ERROR    - asyncio: Unclosed connector
connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x760cf688>, 62758.004129951)]']
connector: <aiohttp.connector.TCPConnector object at 0x7528db50>
source_traceback: Object created at (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/bin/fhempy", line 113, in <module>
    fpb.run()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/fhem_pythonbinding.py", line 539, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.9/asyncio/base_events.py", line 596, in run_forever
    self._run_once()
  File "/usr/lib/python3.9/asyncio/base_events.py", line 1882, in _run_once
    handle._run()
  File "/usr/lib/python3.9/asyncio/events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/googlecast/googlecast.py", line 347, in playDefaultMedia
    session = aiohttp.ClientSession()
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/client.py", line 228, in __init__
    connector = TCPConnector(loop=loop)
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 756, in __init__
    super().__init__(


Im Eventlog steht beim aufrufen des Links :

2022-01-17 16:00:38 fhempy CastGruppe play url=https://music.youtube.com/playlist?list=PLVYmod3nbNcHLgOpxam1v7-yKksfWPwy0
2022-01-17 16:00:39 fhempy CastGruppe display_name: Default Media Receiver
2022-01-17 16:00:39 fhempy CastGruppe session_id: 3a1a5797-fdf8-4110-a0c1-6ef10d589c76
2022-01-17 16:00:39 fhempy CastGruppe transport_id: 3a1a5797-fdf8-4110-a0c1-6ef10d589c76
2022-01-17 16:00:39 fhempy CastGruppe status_text: Default Media Receiver
2022-01-17 16:00:39 fhempy CastGruppe app_id: CC1AD845
2022-01-17 16:00:40 fhempy CastGruppe mediaPlayerState: IDLE
2022-01-17 16:00:40 fhempy CastGruppe mediaContentId: https://music.youtube.com/playlist?list=PLVYmod3nbNcHLgOpxam1v7-yKksfWPwy0
2022-01-17 16:00:40 fhempy CastGruppe mediaContentType: text/html; charset=utf-8
2022-01-17 16:00:40 fhempy CastGruppe mediaStreamType: BUFFERED

Kannst du damit was anfangen ?

:)
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector

SouzA

Hi,

also das die Links zum normalen YouTube bei dir nicht funktionieren, verstehe ich nicht.
Allerdings habe ich jetzt festgestellt, dass das abspielen der Links NICHT bei Cast-Gruppen funktioniert! Das scheint bei dir ja der Fall zu sein.
Probiere mal einen einzelnen...
Wenn das funktioniert, dann scheint da noch nen Bug mit den Gruppen zu sein und die Meldung müsste an Dominik:
https://github.com/dominikkarall/fhempy/issues

Bei dem Music.Youtube-Links kommt bei mir der gleiche Fehler. Da scheint dann wirklich noch eine Anmeldung wie bei Spotify notwendig zu werden.
Da vielleicht bitten Youtube-Music mit auf zu nehmen. Selber Link wie oben.

Bis denn
SouzA

Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

SouzA

Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

saulous

#389
Zitat von: SouzA am 17 Januar 2022, 16:29:14
Hi,

also das die Links zum normalen YouTube bei dir nicht funktionieren, verstehe ich nicht.
Allerdings habe ich jetzt festgestellt, dass das abspielen der Links NICHT bei Cast-Gruppen funktioniert! Das scheint bei dir ja der Fall zu sein.
Probiere mal einen einzelnen...
Wenn das funktioniert, dann scheint da noch nen Bug mit den Gruppen zu sein und die Meldung müsste an Dominik:
https://github.com/dominikkarall/fhempy/issues

Bei dem Music.Youtube-Links kommt bei mir der gleiche Fehler. Da scheint dann wirklich noch eine Anmeldung wie bei Spotify notwendig zu werden.
Da vielleicht bitten Youtube-Music mit auf zu nehmen. Selber Link wie oben.

Bis denn
SouzA



Das wars. Habe ein Nest Audio einzeln eingefügt und es läuft... Schade eigentlich.

*Die gruppenfunktion wäre großartig.
*Zusätzlich die möglichkeit ne YouTube Playlist abzuspielen wäre nice.
*Und last but not least ne Shuffle Funktion.

Ich danke dir für deine Hilfe :)
Raspberry Pi2B Debian 11 Bullseye mit FHEM & Tablet UI, Siemens SPS S7, CUL 868MHz, MQTT, Harmony Smart Hub, Homematic CCU3, Telegram-Bot, Gassist, Tuya-cloud-connector