[Modul] Spotify 1.1

Hi @Dr.Niels ,

ich bekomme 1-2 täglich folgende Meldung im Log. Prinzipiell funktioniert das Modul. Könntest du diese Meldung irgendwie abfangen?

13.04.2021, 10:28:33 | TimerPool            | Spotify (UpdateTimer): <br />
<b>Warning</b>:  file_get_contents(https://api.spotify.com/v1/me/player/devices): failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized
 in <b>/var/lib/symcon/modules/.store/de.symcon.spotify/Spotify/module.php</b> on line <b>719</b><br />
<br />
<b>Fatal error</b>:  Uncaught TypeError: json_decode() expects parameter 1 to be string, bool given in /var/lib/symcon/modules/.store/de.symcon.spotify/Spotify/module.php:773
Stack trace:
#0 /var/lib/symcon/modules/.store/de.symcon.spotify/Spotify/module.php(773): json_decode(false, true)
#1 /var/lib/symcon/modules/.store/de.symcon.spotify/Spotify/module.php(445): Spotify-&gt;UpdateDevices()
#2 /var/lib/symcon/scripts/__generated.inc.php(2691): Spotify-&gt;UpdateVariables()
#3 /-(1): SPO_UpdateVariables(39160)
#4 {main}
  thrown in <b>/var/lib/symcon/modules/.store/de.symcon.spotify/Spotify/module.php</b> on line <b>773</b><br />

Konntest du dir folgendes schon anschauen?
Cover Darstellung

Möglichkeit die Instanz zu deaktivieren

Oh, ich schaue hier scheinbar viel zu selten rein.

@kOxXeN Stehen in der Spotify-App denn die korrekten Namen? Kannst du die verwendete Abfrage mal hier testen: Get a User's Available Devices | Spotify for Developers und dann die Rückgabe posten?

@7weazel7 Kommt die Meldung zu gleichbleibenden Zeitpunkten? Ich wundere mich nur, weil mein dauerhaft laufendes Spotify-Modul keine Probleme hat, weswegen das eigentlich nicht mit allgemeinen Themen wie Tokenwechsel zusammenhängen sollte…

Die Zentrierung kann ich mir gut vorstellen, das baue ich mal ein. Das hat aber aktuell keine hohe Priorität.

Du solltest das Modul „deaktivieren“ können, indem du das Aktualisierungsintervall auf 0 stellst, aber einen zusätzlichen Button zum Deaktivieren kann ich mir gut vorstellen.

Hi die Rückgabe:

{
  "devices": [
    {
      "id": "0c20c765daa9a8d1374fe51f8afd98757547ef58",
      "is_active": false,
      "is_private_session": false,
      "is_restricted": false,
      "name": "Badezimmer",
      "type": "Speaker",
      "volume_percent": 10
    },
    {
      "id": "2d609ae51edcfec3b70fbc05401fd5941cf81fcb",
      "is_active": false,
      "is_private_session": false,
      "is_restricted": false,
      "name": "Überall",
      "type": "Speaker",
      "volume_percent": 10
    },
    {
      "id": "31c828e9-1b80-42a0-8033-9bba84ecfd52",
      "is_active": false,
      "is_private_session": false,
      "is_restricted": false,
      "name": "31c828e9-1b80-42a0-8033-9bba84ecfd52",
      "type": "Speaker",
      "volume_percent": 29
    },
    {
      "id": "b6f37fa773058b5ebeb5ded798208e29a219346a",
      "is_active": false,
      "is_private_session": false,
      "is_restricted": false,
      "name": "Erdgeschoss",
      "type": "Speaker",
      "volume_percent": 14
    },
    {
      "id": "bddd351e-398e-4276-a663-74c4cb987f2e",
      "is_active": true,
      "is_private_session": false,
      "is_restricted": false,
      "name": "bddd351e-398e-4276-a663-74c4cb987f2e",
      "type": "Speaker",
      "volume_percent": 5
    }
  ]
}

Wie beschrieben ich änder den Namen auf der Alexa Website, aber es passiert nichts.

Lg

Die API teilt den Namen als kryptische Sequenz mit. Also entweder schickt Alexa den nicht so, wie du erwartest oder Spotify wertet ihn nicht entsprechend aus. Da kann ich also leider nichts machen.

Schau mal, ob die Geräte in der Spotify-App mit „korrektem“ Namen angezeigt werden. Sonst könntest du dich da ja mal vielleicht an Spotify wenden?

Leider zu unregelmäßigen Zeitpunkten. Heute morgen zum Beispiel wieder:

Hi,

ja also in der Spotify App werden die Namen richtig angezeigt. Ich versteh das nicht wirklich.

Moin zusammen

gibt es eine Lösung, du der Frage von kOxXeN?

ich habe jetzt auch eine Dot 4 und die Probleme mit den Gerätenamen.

Ich habe mittlerweile rausgefunden, das die neuen Echo Geräte sich wohl anders verhalten als die älteren.
Als ob die sich abmelden und Symcon nicht mehr drauf zugreifen kann. :thinking:

Ob das jetzt an Spotify oder Symcon liegt, kann ich mangels Wissen nicht beurteilen.

Auf jeden Fall ist daß Modul damit für mich unbrauchbar.

Schade ich habe es gerne genutzt.

Ich vermute bei dir kommen bei dem Testaufruf via Get a User's Available Devices | Spotify for Developers auch kryptische Namen zurück? Das ist nämlich das gleiche, was ich über die API anfragen kann. Wenn du dort schicke Namen siehst, aber im Modul nicht, dann ist etwas im Modul fehlerhaft, ansonsten liegt es leider an der API und ich kann nichts dagegen tun… Aber wenn sich das häuft, dann sollte ich vielleicht mal eine Expertenfunktion für eigene Namen hinzufügen.

Bei mir verschwinden leider die Geräte immer aus Symcon.

Wenn ich mit der Spotify App auf einem Spotify Connect Geräte Musik abspiele, taucht es in Symcon auf und kann auch bedient werden.
Wenn ich ein paar Stunden nichts darauf abspiele verschwindet das Gerät aber aus Symcon wieder, in der Spotify App ist es allerdings noch auswählbar.

Bei den Geräten handelt es sich um HiFi Berrys mit Volumio und Spotify Connect Modul…

Manches mal unterscheiden sich die Features von der nativen Spotify-App und den Aufrufen via API. Auch dich würde ich bitten, es einmal mit dem Link in dem Beitrag vor dir auszuprobieren. Wenn die Geräte dort nicht auftauchen, dann kann ich da im Modul leider nichts machen.

Hallo @Dr.Niels

kann es sein, dass es ein Skalierungsproblem bei den Covern gibt. In diesem Fall Browser-unabhängig:

Wenn ich unter erweiterte Einstellung die Pixel auf unter 300 einstelle, zeigt er das Cover mehr oder weniger nur noch als Icon:

image 299x299px

300x300px

Gruß und Danke für das super Modul

Burkhard

so sieht das bei mir aus

und genau diese beiden nicht aktiven Geräte sind die Echos der 4. Generation.
ich sehe das Problem weniger bei Symcon, als bei Amazon selbst.

Kann es sein das die neueren Echo Geräte so eine Art automatischen Energiesparmodus haben?

Weil nach einer kurzen Zeit der Nichtbenutzung melden sich diese beiden Geräte im Spotify Connect ab. (siehe Bild)

@Burki24 Als Cover wird das größte verfügbare verwendet, dass noch unter der von dir angegebenen Grenze ist. Das wird nicht weiter skaliert oder dergleichen. Es kann also gut sein, dass es ein Cover mit 300 x 300 gibt und das nächste 56 x 56 oder dergleichen hat. Dann würde bei 299 das Cover mit 56 x 56 verwendet werden und das kleine Icon erklären.

Moin Dr.Niels

ich konnte das nun mal testen, und JA, es kommt die ID Nummer als Gerätename zurück.

liegt also nicht am Modul.

Mir würde es auch viel bringen, wenn sich dies einbinden lassen würde.
Wenn ich eine Playlist über das Wandtablet laufen lasse, könnte ich so von dort aus auch die Lautstärke regulieren. Zurzeit muss ich dafür dann zum Lautsprecher gehen, oder das Smartphone herausholen.

Zusätzlich könnte ich eine Variable gebrauchen, die anzeigt, ob der Player läuft oder nicht, um dies als Auslöser für ein Ereignis zu nutzen.

Wäre schön, wenn du dies noch einbauen könntest und danke für das Modul :slight_smile:
Liebe Grüße
marvus

mir würde eine Lautstärkeregelung im Modul auch gefallen.

:+1:

Mir ebenso.

Gruß

Burkhard

Ich werde mir das Spotify-Modul zur 6.1 nochmal vornehmen. Dann baue ich zum einen die Lautstärkeregelung ein und ändere die Geräte- und Favoritendarstellung auf String-Assoziationen. Letzteres ist für den Nutzer nicht wirklich sichtbar, macht das Modul intern aber viel schöner :slight_smile:

1 „Gefällt mir“

@Dr.Niels
weißt du zufällig ob sich was an der Api verändert hat? Bei mir funktioniert der
Testaufruf nicht mehr bzw. mir werden keine Geräte mehr angezeigt. Hat bei mir in der Vergangenheit tadellos funktioniert auch mit meinem Marantz 7010.

Wäre noch möglich eine Funktion ins Modul zu bauen das man den Titel der gerade gespielt wird Vor oder Zurück zu spulen?