[WIP] [Alpha release] ConnectControl for Spotify

  • Hey Leute, wollte euch nur mal eben zeigen, woran ich zur Zeit arbeite:
    Spotify hat vor ein paar Wochen einen Endpoint zu ihrer WebAPI hinzugefügt, die es erlaubt, Connect Devices zu steuern. Da hab ich mir gedacht, warum das ganze nicht umsetzen, um so etwas wie librespot (oder spotify-connect-web) mit einer GUI für Kodi zu versorgen.
    Bisher macht das ganze noch nicht sonderlich viel außer den aktuellen Titel samt Cover anzuzeigen und die klassischen playback controls zur Verfügung zu stellen, aber seht selbst:

    Externer Inhalt picload.org
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Externer Inhalt picload.org
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    und jetzt einfach mal die Frage, ob allgemein Interesse an so etwas besteht, oder ob ich das nur für mich weiter mache :)


    Da es für mich ziemlich gut und robust läuft, hier mal auf github für jeden, der es testen möchte. (Bedenkt, dass ich es bisher nur auf macOS und Ubuntu testen konnte): https://github.com/NicolasHaeffne….connectcontrol

  • Ist es eine Fernbedienung für eine laufende Spotify-Instanz auf zB meinem Smartphone?
    Oder ist es ein eigener Player?

    Der frage würde ich mich auch anschliesen.

    Nvidia Shield TV Pro 2015/2019| Omega Beta3 | HorizonzV
    Zbox ID83 | i3 | 8 GB Ram | SSD M4 64GB | Libreelec Matrix | Estuary Mod 2
    Zotac Zbox Ad02 | 8 GB Ram | Libreelec 9| Madnox
    AMD Ryzen 5 3600 | 16GB | Radeon RX5500 XT Win 10 x64 | Omega Nightly | Viele Skins zum Probieren
    NAS Synology DS 216+II 16TB DSM 7.2
    Fire Cube 3 | Omega | Metropolis
    Tanix TX3 4/64 GB | Corelec Matrix | Estuary Mod

  • eben einfach ein im Hintergrund aktives Spotify Programm mit einer am Fernseher gut zu bedienenden Benutzeroberfläche zu versorgen (in Kodi natürlich).

    Das klingt sehr gut! Ich würde mich darüber freuen wenn du das Projekt angehst. Hilfe kann ich Dir nur beim Testen anbieten. Hab diverse Kodi Clienten und ein Spotify Premium Accout.

    Nvidia Shield TV Pro 2015/2019| Omega Beta3 | HorizonzV
    Zbox ID83 | i3 | 8 GB Ram | SSD M4 64GB | Libreelec Matrix | Estuary Mod 2
    Zotac Zbox Ad02 | 8 GB Ram | Libreelec 9| Madnox
    AMD Ryzen 5 3600 | 16GB | Radeon RX5500 XT Win 10 x64 | Omega Nightly | Viele Skins zum Probieren
    NAS Synology DS 216+II 16TB DSM 7.2
    Fire Cube 3 | Omega | Metropolis
    Tanix TX3 4/64 GB | Corelec Matrix | Estuary Mod

  • Super also prinzipiell läuft das ganze schon so wie man es auf den Bildern sieht. Irgendwann ist der Plan noch browsing Funktionalitäten einzubinden, das wird aber nochmal ein großes Stück Arbeit. Ich kann das ganze aber gleich mal auf github laden und dann kannst du dir das gern mal installieren und mal gucken ob das bei dir funktioniert.

    Das einzige Bedenken, das ich zur Zeit noch habe ist die Sache mit dem rate limiting der Spotify API.. Das Problem ist, dass diese pro registrierter App gilt und nicht pro Nutzer und mein Addon fragt einmal die Sekunde den aktuellen Status ab. Unter Umständen werde ich also mein Client Secret etc. (das kriegt man wenn man bei Spotify eine App registriert, kann jeder machen) aus dem Addon nehmen, und jeder der es nutzen will muss seine eigene App anmelden.

    Und ich habe keine Ahnung wie das mit den ganzen Lizenzen abläuft auf github :D muss ich irgendwo die GNU oder MIT oder sonstwas Lizenzbestimmungen einfügen und was ist mit "fremden" libraries die ich eingebunden hab (spotipy.. musste jedoch einiges ändern).

    Das sind auf jeden Fall die Sachen, die ich erst noch irgendwie abklären muss und dann darf gern jeder das Addon nutzen so wie es ihm beliebt :)

  • ok werd es mal instalieren wenn du soweit bist. :thumbup:

    Nvidia Shield TV Pro 2015/2019| Omega Beta3 | HorizonzV
    Zbox ID83 | i3 | 8 GB Ram | SSD M4 64GB | Libreelec Matrix | Estuary Mod 2
    Zotac Zbox Ad02 | 8 GB Ram | Libreelec 9| Madnox
    AMD Ryzen 5 3600 | 16GB | Radeon RX5500 XT Win 10 x64 | Omega Nightly | Viele Skins zum Probieren
    NAS Synology DS 216+II 16TB DSM 7.2
    Fire Cube 3 | Omega | Metropolis
    Tanix TX3 4/64 GB | Corelec Matrix | Estuary Mod

  • Geil @halbstark!
    Das wäre die perfekte Ergänzung für das Spotify Connect Web Addon von @awiouy

    Wäre wirklich klasse, wenn du das weiterverfolgen könntest und dadurch letztendlich Spotify Connect als eigenständiges Audio Addon in LibreELEC ermöglichen würdest. :)

    Freut mich!
    Ich hab nur leider wirklich keine Ahnung von libreelec, hast du da Zugriff auf einen richtigen Browser? (der wird nämlich benötigt, um sich bei Spotify anzumelden)

  • Oh nein, leider nicht. Das von mir verlinkte addon lässt irgendwie im Hintergrund eine art Webserver laufen und dieser ist somit der spotify Connect Service, den man einfach als Abspielgerät in der Android spotify app auswählen kann. Es fehlt halt einfach in kodi das frontend dazu. Kodi merkt es sozusagen gar nicht, dass grade eigentlich Musik über das Betriebssystem abgespielt wird.

  • Ja richtig ich kenne das Addon.. der Unterschied ist, dass die eine reverse engineerte spotify api benutzen, ich aber die offizielle WebAPI, die eben leider auf eine Authentifizierung angewiesen ist..

    Es sollte aber trotzdem möglich sein, wenn ich so drüber nachdenke.. dazu müsste ich ein bisschen was anpassen aber es sollte eigentlich nichts dagegen sprechen, dass du einen anderen Rechner nimmst, um dich zu authentifizieren.
    Ich werde das die Tage mal umsetzen und dann kannst du das gern mal testen.

  • Hi,
    kurze Frage: Hab's bei mir leider nicht zum laufen gebracht. Wenn ich die URL, die ich mir aus dem Log gezogen hab im Browser aufrufe, kann ich mich zwar einloggen, aber dann kommt direkt, dass der Server nicht gefunden wurde. Hast du ne Idee woran das liegen könnte?

    System is LibreELEC auf nem RPi3

  • Hi, also das hört sich erstmal nach nem Problem mit der Redirect Uri an. Was hast du denn da eingetragen bei spotify und in den Einstellungen des Addons?
    Ansonsten bräuchte ich das [definition='1','0']log[/definition].


    Gesendet von iPhone mit Tapatalk

  • Ne die Uri stimmt schon. Als die nicht gepasst hat, hat er mir direkt nen Fehler gegeben, dass es die falsche Uri ist. Habs sowohl mit KodiIP:12345 und KodiIP:12346 probiert.
    Ich versuchs nochmal. Wenns nicht klappt poste ich das [definition='1','0']log[/definition]

  • Huch ja das ist in der Tat komisch. Das ist der teil im code der das macht:

    Python
    try:
        webbrowser.open(auth_url)
        print("Opened %s in your browser" % auth_url)
    except:
        print("ConnectControl: Please navigate here: %s" % auth_url)

    sprich wenn die methode webbrowser.open nicht ausführbar ist, sollte er das nach except ausführen. Die methode ist also ausführbar unter libreelec auch wenn sich kein browser öffnet (das tut es doch nicht oder?) .. Ich werde mal eben eins zwei Sachen abändern und dann müsstest du nochmal testen

  • sehr schön, danke! Jetzt hat es geklappt.

    Aber gleich mal noch ne andere Frage: Das Addon soll nur als Fernbedienung funktionieren? Oder ist es angedacht, dass es zukünftig auch als eigenes Device in den Spotify-Geräten auftaucht bzw die Musik in Kodi abspielt?

    kurz zur Erklärung: Mein RPi hängt an einem AVR (der Spotify Connect hat, was die Sache eh ziemlich redundant macht, ich weiß ) aber ich kann es jetzt leider nicht wirklich über das Addon steuern, weil sobald ich Play drücke, schaltet mein AVR auf das integrierte Spotify Connect und somit auch auf eine andere Bildquelle um

  • ah das ist natürlich bisschen ärgerlich :D
    also nein das ist nicht angedacht, da ich ja die offizielle webAPI von Spotify nutze und die bietet die Möglichkeit (derzeit) nicht an.
    Aber es gibt ja zB spotify-connect-web, das du einfach als Service auf dem pi im Hintergrund laufen lassen kannst, somit wäre das Problem ja auch gelöst oder?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!