fhempy: googlecast

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

Vorheriges Thema - Nächstes Thema

Superposchi

Danke für die ganze Hilfe hätte das alleine nie hinbekommen.

Superposchi

#61
Also ich muss doch noch mal nachfragen.

Gestern Abend hat es funktioniert, ich konnte mit Play eine url von Spotify abspielen oder auch die url an einen Favoriteneintrag hängen und den mit playFavorite abspielen.
Heute reagiert zwar der Google-Nest noch, doch von Spotify wird nichts mehr ausgegeben.

Es sollte doch auch Musik wiedergegeben werden wenn weder eine Spotify Webseite, noch die Desktop-App geöffnet sind, oder nicht? Aber selbst wenn ich eins offen habe, kommt keine Musik.

Ich hänge mal das List des Wohnzimmer-Nest an:
Internals:
   .AttrList  favorite_1 favorite_2 favorite_3 favorite_4 favorite_5 spotify_sp_dc spotify_sp_key IODev event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading
   .FhemMetaInternals 1
   CASTNAME   Wohnzimmerlautsprecher
   DEF        googlecast Wohnzimmerlautsprecher
   FUUID      5fbac9e2-f33f-793a-66ea-c20857e12b91fab7
   FVERSION   10_PythonModule.pm:0.182830/2019-01-16
   IODev      local_pybinding
   NAME       Wohnzimmerlautsprecher
   NR         94
   PYTHONTYPE googlecast
   STATE      online
   TYPE       PythonModule
   .attraggr:
   .attreocr:
     .*
   .attrminint:
   .attrtocr:
     .*
   READINGS:
     2021-01-03 10:41:53   app_id          CC32E753
     2020-11-22 21:28:19   cast_type       cast
     2021-01-03 10:33:56   connection      connected
     2021-01-03 10:41:53   display_name    Spotify
     2021-01-03 10:41:53   icon_url        https://lh3.googleusercontent.com/HOX9yqNu6y87Chb1lHYqhKVTQW43oFAFFe2ojx94yCLh0yMzgygTrM0RweAexApRWqq6UahgrWYimVgK
     2020-11-22 21:28:19   ignore_cec      0
     2020-11-22 21:28:19   is_active_input 0
     2020-11-22 21:28:19   is_stand_by     1
     2021-01-03 00:25:28   mediaAlbum     
     2021-01-03 00:25:28   mediaArtist     
     2021-01-03 10:39:02   mediaContentId 
     2021-01-03 10:39:02   mediaContentType
     2021-01-03 10:34:02   mediaCurrentPosPercent
     2021-01-03 10:34:02   mediaCurrentPosition
     2021-01-03 10:39:02   mediaDuration   
     2021-01-03 00:25:28   mediaImageHeight
     2021-01-03 00:25:28   mediaImageUrl   
     2021-01-03 00:25:28   mediaImageWidth
     2021-01-03 10:39:02   mediaPlayerState UNKNOWN
     2021-01-03 10:39:02   mediaStreamType UNKNOWN
     2021-01-03 00:25:28   mediaTitle     
     2020-11-22 21:28:19   model_name      Google Nest Mini
     2020-11-22 21:28:19   mute            0
     2020-11-22 21:28:19   name            Wohnzimmerlautsprecher
     2021-01-03 10:41:53   session_id      38606f3a-f54c-431a-872a-1f68fdf38424
     2021-01-02 21:59:01   spotify_user    xxx
     2021-01-03 10:34:02   state           online
     2021-01-03 10:41:53   status_text     Spotify
     2021-01-03 10:41:53   transport_id    38606f3a-f54c-431a-872a-1f68fdf38424
     2020-11-22 21:28:19   uuid            ec715a28-897e-dc95-3c87-e44ecb1699c0
     2021-01-03 10:42:13   volume          25
   args:
     Wohnzimmerlautsprecher
     PythonModule
     googlecast
     Wohnzimmerlautsprecher
   argsh:
Attributes:
   IODev      local_pybinding
   event-on-change-reading .*
   favorite_1 xxx
   favorite_2 xxx
   group      Audiosystem
   icon       audio_loudness
   room       Devices,GAssistant
   spotify_sp_dc xxx
   spotify_sp_key xxx
   timestamp-on-change-reading .*
   userattr   favorite_1 favorite_2 favorite_3 favorite_4 favorite_5


Wenn du noch was anderes brauchst wo du nachsehen kann, sag kurz Bescheid.

dominik

Versuch Mal die Attribute neu zu setzen. Hast du in der Zwischenzeit Spotify Web Player benutzt? Es könnte sein, dass bei der Nutzung die alten Cookies deaktiviert werden.

Achtung: Bitte die Attribute hier nicht posten, damit kann man sich einloggen!!
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Ja, ich habe Spotify auch über den WebPlayer benutzt und ja sp_dc war tatsächlich anders, sp_key aber identisch.
Habe trotzdem beide Attribute neu gesetzt und auch einen Neustart durchgeführt. Leider ohne Erfolg. Der Nest reagiert (man hört ein kurzes Ping), aber dann kommt keine Music.

Danke für den Hinweis mit den Attributen, hab sie im Post vorher gexxxt. Hatte ich vergessen.

dominik

Versuch mal alle Spotify Web anmelden auszuloggen, dann nur auf einem Browser Login und die Attribute kopieren. Dann Web Player im Browser schließen und nicht mehr öffnen.

Im Moment weiß ich noch nicht wie das bei Spotify abläuft und warum ein Token der 1 Jahr halten sollte vorher deaktiviert wird. Im schlimmsten Fall muss ich noch einen anderen Weg implementieren. Gefunden hätte ich schon was.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Ich hatte gestern zusätzlich zur WebPlayer auch die DesktopApp in Gebrauch, soll ich mich da sicherheitshalber auch ausloggen?

Das würde dann eine manuelle BEdienung von Spotify ausschließen, was ja nicht so gut wäre.

Superposchi

Also ich hab mich jetzt sowohl im WebPlayer als auch in der Desktop-App abgemeldet, mich dann im WebPlayer neu angemeldet.
Beide Attribute (Diesmal waren sie gleich) neu gesetzt und den Server neu gestartet.

Brachte leider alles keinen Erfolg. Es wird keine Musik abgespielt obwohl der Nest reagiert.

dominik

Die beiden Cookies sind eigentlich niemals gleich, schon alleine deren Länge ist komplett unterschiedlich.

Probier es bitte nochmals. Hier noch eine Anleitung mit etwas komplexere Vorgehensweise, führt aber zum gleichen Ergebnis:
https://github.com/enriquegh/spotify-webplayer-token#usage
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Mit gleich war nicht der Vergleich zwischen den beiden Attributen gemeint, sondern der Vergleich mit den jeweiligen Attributen und ihren jeweiligen Vorgängerwerten.

Ehe ich diese Anleitung abarbeite (muss sowieso mal sehen ob ich das überhaupt hinbekomme) ist mir aufgefallen, dass ich vom WebPlayer nicht auf die Google-Nest-Geräte streamen kann. Gestern Abend wurde mir beide Google-Nest-Geräte unter "Mit Gerät verbinden" angezeigt, heute nicht mehr. Wenn ich das richtig verstanden habe, basiert das doch auf spotify_connect, oder?

dominik

Jein, die Google Nest/Home Geräte funktionieren so:
- Sie werden als Cast Device (nicht Spotify Connect!) in der Spotify App angezeigt, wenn das nicht passiert, dann vielleicht mal das Gerät neu starten
- Wenn Spotify eine Verbindung zum Cast Device aufbaut, startet es zuerst die Spotify App und schickt dann die Authentifizierungsdaten an das Cast Device. Damit weiß Spotify, dass es eine Spotify App auf einem Cast Device gibt die es ansprechen kann.
- Ab diesen Zeitpunkt läuft alles über das Spotify Connect Protokoll
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Also mal ganz von Vorne, ich versteh nämlich nur noch Bahnhof.

Das was ich sagen kann ist folgendes: In der Desktop-App (die ich mal testweise gestartet habe) werden die Google-Nest beide angezeigt, in der WebPlayer Version wird keins angezeigt. In beiden Playern wird ein WebPlayer (Microsoft Edge) angezeigt. Dieser war beim WebPlayer ursprüglich auch als wiedergabendes Gerät aktiviert.

Aus der Desktop-App kann ich auf die Nest-Lautsprecher streamen oder wahlweise jedes andere angezeigte Gerät. Lediglich bei Auswahl des WebPlayers (Microsoft Edge) verstummt die Wiedergabe. In der Desktop-App wird komischerweise der WebPlayer (Microsoft Edge) auch doppelt angezeigt

Es esxistiert also keine Verbindung mit dem WebPlayer. Ich denke also, dass das Problem ein generelles ist und gar nicht an den GoogleCast-Devices in Fhem liegt.
Wäre es sinnvoll mal komplett von vorne anzufangen, also das Spotify-Device zu prüfen?

dominik

So wie es bei dir angezeigt wird, ist es richtig. Im Webplayer werden die Nest Devices erst angezeigt wenn die Spotify App darauf läuft, vorher nicht.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Auf den Nest läuft keine App oder Software, da lässt sich nichts installieren.
Oder meinst du, die Wiedergabe?

Ich verzweifele gerade.

dominik

Das Spotify Ding da drauf ist eine App oder wahrscheinlich eher PWA.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Superposchi

Ehrlich gesagt ist es mir inzwischen egal, ich werd die Sache wohl aufgeben, das bringt doch nix bei dem Chaos.

Was mir als Laie jedenfalls klar ist bei deinen Ausführungen: Wenn im WebPlayer die Nest-Lautsprecher nicht existieren, kann Fhem - was auf den WebPlayer zugreift - auch nicht auf diese Geräte streamen. Punkt.

Also für mich als Laie ist es ein Kommunikationsproblem zwischen Fhem, dem WebPlayer und den Nest-Lautsprechern.
Die Frage ist wie man dem auf die Spur kommen kann.