[Externe Integration] Last.fm: Eure Musik-Hörgeschichten in Gladys đŸŽ”

Hallo zusammen,

Ich stelle euch Last.fm vor, eine externe Integration fĂŒr Gladys (mindestens v5.1.1) basierend auf dem neuen SDK fĂŒr Integrationen.

Der Grundgedanke: Last.fm erfasst (« scrobbelt ») was ihr auf Spotify, Deezer, Apple Music, YouTube Music, Tidal, Plex, Sonos und vielen anderen hört. Eine einzige Integration deckt also alle eure Player ab: Wenn eure HöraktivitÀten auf eurem Last.fm-Profil landen, sieht Gladys sie.

cover

Was es kann

Ein GerÀt pro verfolgtem Profil (bis zu 10: eures, das eines nahestehenden Menschen
):

  • Gerade in Benutzung (ja / nein)
  • Aktueller Titel oder letzter Titel (« KĂŒnstler – Titel »)
  • Scrobbles des Tages (seit Mitternacht, Zeitzone von Gladys)
  • Gesamtzahl der Scrobbles

Der Verlauf wird gespeichert: Die Grafikkarte kann eure HöraktivitĂ€ten der Woche anzeigen, und klassische Szenen mit dem Wert eines GerĂ€ts funktionieren (« mehr als 100 Scrobbles heute » ).

4 Szenenauslöser:

  • Neuer Titel (Filter Profil, KĂŒnstler)
  • Beginn des Hörens
  • Ende des Hörens (mit Dauer der Session und Anzahl der Titel)
  • Geliebter Titel (Filter Profil, KĂŒnstler)

Einige Ideen:

  • Beginn des Hörens → Wohnzimmer dimmen und VerstĂ€rker einschalten
  • Ende des Hörens → VerstĂ€rker ausschalten
  • Neuer Titel von « Daft Punk » → Lichter im Diskomodus :mirror_ball:

4 Szenenaktionen: aktueller Titel, Hörstatistiken (Tag / Gesamt, beliebtester KĂŒnstler, Album und Titel in einem Zeitraum), Titel mögen und nicht mehr mögen.

3 Dashboard-Widgets:

  • Gerade in Benutzung: Cover, Titel, KĂŒnstler · Album, ZĂ€hler, Like-Button
  • KĂŒrzliche HöraktivitĂ€ten: Die letzten Titel mit Covern, « gerade in Benutzung »- und :heart:-Badges
  • Top-Listen: KĂŒnstler, Alben (Cover-Raster) oder Titel, von 7 Tagen bis seit jeher

Konfiguration

  1. Eine kostenlose Last.fm-API-SchlĂŒssel erstellen: Login | Last.fm (freier Anwendungsname, die Callback-URL kann leer bleiben)
  2. API-SchlĂŒssel und zu verfolgende Profile eingeben, dann Verbindung testen
  3. GerĂ€te vom Entdecken-Tab hinzufĂŒgen
  4. (Optional) Um Titel von Gladys aus zu mögen: Gemeinsames Geheimnis eingeben, auf Verbinden klicken und auf der Last.fm-Seite autorisieren. Keine Umleitungs-URL zu deklarieren, Gladys erkennt die Autorisierung von selbst.

Wissenswertes

  • Last.fm hat keine Push-API: Die Integration liest die Profile alle 30 s standardmĂ€ĂŸig (einstellbar von 15 bis 300 s). Szenen reagieren daher mit einigen Sekunden bis zu einer halben Minute Verzögerung.
  • Der KĂŒnstler-Filter ist groß- und kleinschreibungsempfindlich (« Daft Punk », nicht « daft punk »).
  • Ein Profil, dessen kĂŒrzliche HöraktivitĂ€ten versteckt sind, kann nicht verfolgt werden.
  • Last.fm bietet seit 2019 keine KĂŒnstlerfotos mehr an: Die Top-KĂŒnstler-Ansicht wird ohne Bild angezeigt.

Technische Seite

Etwa 3 API-Aufrufe pro Profil und pro Zyklus, weit unter den Last.fm-Grenzen. Die Cover werden ĂŒber einen validierten Proxy geleitet (kein SSRF, Format- und GrĂ¶ĂŸenkontrolle). Lizenz Apache-2.0.

:package: Code und vollstÀndige Dokumentation: GitHub - William-De71/gladys-lastfm: Gladys Assistant integration for Last.fm: what you're listening to, your scrobbles, music-driven scenes and dashboard widgets. · GitHub

Es ist die v1.0.0: Euer Feedback, Bugs und Szenenideen sind hier oder als Issue auf GitHub willkommen!

Community-Integration, ohne Verbindung zu Last.fm.

1 „GefĂ€llt mir“