Seite 1 von 1

LMS CLI command "playlist play" funkitoniert nicht mehr

Verfasst: 1. Juni 2021 15:10
von zilli
Hallo,
ich habe einen raspberry pi 4 mit piCorePlayer am laufen. Ich möchte per RFID karten Playlists starten. Es handelt sich um Deezer- und/oder Spotify Playlists.
LMS, Player und Plugins für Deezer und Spotify funktionieren. Über die LMS Weboberfläche kann ich Playlists starten.
Mein vorgehen war bisher, das ich über Putty - Telnet lausche. Also über die Weboberfläche navigiere ich zum Album und starte dieses dann. Über Telnet wird dann zum Beispiel folgendes geschickt:

Code: Alles auswählen

dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist play deezer%3A%2F%2F1234269672.mp3
Dieser Befehl passt ja auch zur CLI Doku.

Jetzt zum Problem. Wenn ich das über die Weboberfläche mache funktioniert alles wie gewollt. Wenn ich den Befehl aber direkt über Telnet abschicke, dann wird immer nur der erste Track in die Wiedergabeliste geladen und gestartet, also nicht die komplette Playlist abgespielt. Da es über die Weboberfläche mit genau diesem Befehl funktioniert, bin ich gerade ratlos. Hier noch etwas genauer was Telnet aufzeichnet:

Weboberfläche:

Code: Alles auswählen

dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist play deezer%3A%2F%2F1362665702.mp3
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist stop
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist jump 0  0
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist load_done
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist open deezer%3A%2F%2F1362665702.mp3
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist open http%3A%2F%2Fcdnt-proxy-f.deezer.com%2Fapi%2F1%2F007d351e90aaf51a4806c3b67bc539c712ab11e1631b55e485a6fab0d314d843ba9890344e8a9b1bf1fb3c8b9ece9a67f84082f78ec967c323bdd6c510ea243290f780d7213f7fd4e58a6b467327db90.mp3%3Fhdnea%3Dexp%3D1622553622~acl%3D%2Fapi%2F1%2F007d351e90aaf51a4806c3b67bc539c712ab11e1631b55e485a6fab0d314d843ba9890344e8a9b1bf1fb3c8b9ece9a67f84082f78ec967c323bdd6c510ea243290f780d7213f7fd4e58a6b467327db90.mp3*~hmac%3D105092f3a8c40134a8b7f3999dc921ebb4655b0ec7960c56f3be7dd4096aa442%26
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist newsong Kapitel%2001%3A%20Die%20wilde%20Stadtrundfahrt%20(Folge%20146)%20-%20Paw%20Patrol 0
Wenn ich es über Telnet schicke:

Code: Alles auswählen

dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist play deezer%3A%2F%2F1362665702.mp3
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist playtracks listRef ARRAY(0x64b7350)   index%3A0
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist stop
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist jump
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist open deezer%3A%2F%2F1362665702.mp3
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist open http%3A%2F%2Fcdnt-proxy-f.deezer.com%2Fapi%2F1%2F007d351e90aaf51a4806c3b67bc539c712ab11e1631b55e485a6fab0d314d843ba9890344e8a9b1bf1fb3c8b9ece9a67f84082f78ec967c323bdd6c510ea243290f780d7213f7fd4e58a6b467327db90.mp3%3Fhdnea%3Dexp%3D1622553744~acl%3D%2Fapi%2F1%2F007d351e90aaf51a4806c3b67bc539c712ab11e1631b55e485a6fab0d314d843ba9890344e8a9b1bf1fb3c8b9ece9a67f84082f78ec967c323bdd6c510ea243290f780d7213f7fd4e58a6b467327db90.mp3*~hmac%3D9d42eb3df7790f14af7e208fec806572974779262cd21e0d0354c6619e7e1f6d%26
dc%3Aa6%3A32%3A34%3Ae6%3A0b playlist newsong Kapitel%2001%3A%20Die%20wilde%20Stadtrundfahrt%20(Folge%20146)%20-%20Paw%20Patrol 0
Ihr seht schon das es anders aussieht. Vielleicht kann mir hier jemand helfen, oder einen anderen Weg zeigen wie ich per RFID Deezer/Spotify Alben/Playlists starten kann.

Danke und Grüße,

zilli

LMS CLI command

Verfasst: 2. Juni 2021 00:39
von karlek
Du könntest mal JSON/RPC-Aufrufe statt CLI nehmen. Das ist moderner und man benötigt auch kein URL encoding. Dein Kommando würde dann wohl so aussehen:

Code: Alles auswählen

curl -X POST -d '{"id": 1, "method": "slim.request", "params":["dc:a6:32:34:e6:0b", ["playlist", "play", "deezer://1362665702.mp3"]]}' 192.168.178.75:9000/jsonrpc.js
Wobei Du IP-Adresse und Port, über den das Webinterface des LMS erreicht werden kann, anpassen musst.

Der prinzipielle Aufbau eines JSON/RPC-Aufrufs ist wie folgt:

Code: Alles auswählen

curl -X POST -d '{"id": 1, "method": "slim.request", "params":[mac, [p0, p1, p2, p3, p4]]}' IP:Port/jsonrpc.js
Bitte daran denken, dass
1) die MacAdresse keine Großbuchstaben enthalten darf.
2) mac und p0 bis p4 in doppelte Anführungszeichen "" gesetzt werden müssen.

Weiterführende Literatur zu JSON/RPC mit dem LMS:

https://gist.github.com/samtherussell/3 ... 0b8689d9f2