NEWS
Test/Support Adapter SqueezeboxRPC
-
lösche bitte mal alle datenpunkte für diesen einen player und restarte den adapter. das müsste eigentlich funktionieren
-
bevor ich das gemacht habe ist mir aufgefallen, das er das TV Gerät garnicht im Objektbaum angelegt hat:
Hab den Baum trotzdem gelöscht und anschließend den Adapter neu gestartet. Fehler wie gehabt
2024-11-26 22:25:04.592 - info: host.pIoBroker instance system.adapter.squeezeboxrpc.0 in version "1.4.0-alpha.3" started with pid 5988 2024-11-26 22:25:04.957 - debug: squeezeboxrpc.0 (5988) Redis Objects: Use Redis connection: 0.0.0.0:9001 2024-11-26 22:25:04.971 - debug: squeezeboxrpc.0 (5988) Objects client ready ... initialize now 2024-11-26 22:25:04.972 - debug: squeezeboxrpc.0 (5988) Objects create System PubSub Client 2024-11-26 22:25:04.972 - debug: squeezeboxrpc.0 (5988) Objects create User PubSub Client 2024-11-26 22:25:04.994 - debug: squeezeboxrpc.0 (5988) Objects client initialize lua scripts 2024-11-26 22:25:04.996 - debug: squeezeboxrpc.0 (5988) Objects connected to redis: 0.0.0.0:9001 2024-11-26 22:25:04.997 - silly: squeezeboxrpc.0 (5988) redis psubscribe cfg.o.system.user.* 2024-11-26 22:25:05.010 - silly: squeezeboxrpc.0 (5988) redis psubscribe cfg.o.enum.* 2024-11-26 22:25:05.010 - silly: squeezeboxrpc.0 (5988) objectDB connected 2024-11-26 22:25:05.011 - debug: squeezeboxrpc.0 (5988) Redis States: Use Redis connection: 0.0.0.0:9000 2024-11-26 22:25:05.017 - debug: squeezeboxrpc.0 (5988) States create System PubSub Client 2024-11-26 22:25:05.018 - debug: squeezeboxrpc.0 (5988) States create User PubSub Client 2024-11-26 22:25:05.069 - debug: squeezeboxrpc.0 (5988) States connected to redis: 0.0.0.0:9000 2024-11-26 22:25:05.070 - silly: squeezeboxrpc.0 (5988) statesDB connected 2024-11-26 22:25:05.109 - info: squeezeboxrpc.0 (5988) starting. Version 1.4.0-alpha.3 in /opt/iobroker/node_modules/iobroker.squeezeboxrpc, node: v20.18.1, js-controller: 6.0.11 2024-11-26 22:25:05.115 - debug: squeezeboxrpc.0 (5988) main onReady open squeezeboxrpc 2024-11-26 22:25:05.119 - debug: squeezeboxrpc.0 (5988) getDiscoverServers 2024-11-26 22:25:05.125 - silly: squeezeboxrpc.0 (5988) States system redis pmessage system.adapter.squeezeboxrpc.0.logLevel/system.adapter.squeezeboxrpc.0.logLevel:{"val":"silly","ack":true,"ts":1732656305122,"q":0,"from":"system.adapter.squeezeboxrpc.0","lc":1732655368841} 2024-11-26 22:25:05.132 - debug: squeezeboxrpc.0 (5988) server init 2024-11-26 22:25:05.133 - silly: squeezeboxrpc.0 (5988) setState name: info.connection value: true 2024-11-26 22:25:05.133 - debug: squeezeboxrpc.0 (5988) doObserverServer 2024-11-26 22:25:05.133 - debug: squeezeboxrpc.0 (5988) getServerstatus 2024-11-26 22:25:05.133 - silly: squeezeboxrpc.0 (5988) request 2024-11-26 22:25:05.133 - silly: squeezeboxrpc.0 (5988) request 2024-11-26 22:25:05.134 - debug: squeezeboxrpc.0 (5988) doObserverFavorites 2024-11-26 22:25:05.134 - debug: squeezeboxrpc.0 (5988) delFavorites 2024-11-26 22:25:05.134 - debug: squeezeboxrpc.0 (5988) setFavorites 2024-11-26 22:25:05.134 - debug: squeezeboxrpc.0 (5988) getFavoritesLMS 2024-11-26 22:25:05.134 - silly: squeezeboxrpc.0 (5988) request 2024-11-26 22:25:05.135 - debug: squeezeboxrpc.0 (5988) doTelnet 2024-11-26 22:25:05.139 - debug: squeezeboxrpc.0 (5988) doServerstatus 2024-11-26 22:25:05.139 - debug: squeezeboxrpc.0 (5988) checkServerstatusStates 2024-11-26 22:25:05.139 - silly: squeezeboxrpc.0 (5988) createDevice Server 2024-11-26 22:25:05.139 - silly: squeezeboxrpc.0 (5988) setState name: Server.LastScan value: 0 2024-11-26 22:25:05.139 - silly: squeezeboxrpc.0 (5988) setState name: Server.Version value: 8.5.2 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.uuid value: d7640b32-e314-495f-b461-d579793d3740 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.TotalAlbums value: 0 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.TotalArtists value: 0 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.TotalGenres value: 0 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.TotalSongs value: 0 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.TotalDuration value: 0 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.PlayerCount value: 2 2024-11-26 22:25:05.140 - silly: squeezeboxrpc.0 (5988) setState name: Server.PlayerCountOther value: 0 2024-11-26 22:25:05.140 - debug: squeezeboxrpc.0 (5988) checkNewPlayer 2024-11-26 22:25:05.142 - debug: squeezeboxrpc.0 (5988) checkPlayer 2024-11-26 22:25:05.142 - silly: squeezeboxrpc.0 (5988) request 2024-11-26 22:25:05.145 - debug: squeezeboxrpc.0 (5988) doSyncgroups 2024-11-26 22:25:05.149 - debug: squeezeboxrpc.0 (5988) setFavoritesDP 2024-11-26 22:25:05.149 - silly: squeezeboxrpc.0 (5988) createFolder Favorites 2024-11-26 22:25:05.151 - silly: squeezeboxrpc.0 (5988) createObject Server.LastScan 2024-11-26 22:25:05.151 - silly: squeezeboxrpc.0 (5988) createObject Server.Version 2024-11-26 22:25:05.151 - silly: squeezeboxrpc.0 (5988) createObject Server.uuid 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.TotalAlbums 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.TotalArtists 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.TotalGenres 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.TotalSongs 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.TotalDuration 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.PlayerCount 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.PlayerCountOther 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.getFavorites 2024-11-26 22:25:05.152 - silly: squeezeboxrpc.0 (5988) createObject Server.SyncGroups 2024-11-26 22:25:05.153 - silly: squeezeboxrpc.0 (5988) States user redis pmessage squeezeboxrpc.0.*/squeezeboxrpc.0.info.connection:{"val":false,"ack":true,"ts":1732656305136,"q":0,"from":"system.adapter.squeezeboxrpc.0","user":"system.user.admin","lc":1732656305107} 2024-11-26 22:25:05.154 - silly: squeezeboxrpc.0 (5988) stateChange 2024-11-26 22:25:05.154 - silly: squeezeboxrpc.0 (5988) States user redis pmessage squeezeboxrpc.0.*/squeezeboxrpc.0.info.connection:{"val":false,"ack":true,"ts":1732656305150,"q":0,"from":"system.adapter.squeezeboxrpc.0","user":"system.user.admin","lc":1732656305107} 2024-11-26 22:25:05.155 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.LastScan" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.155 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.Version" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.156 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.uuid" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.156 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.TotalAlbums" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.156 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.TotalArtists" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.157 - silly: squeezeboxrpc.0 (5988) stateChange 2024-11-26 22:25:05.159 - silly: squeezeboxrpc.0 (5988) createFolder Favorites.0 2024-11-26 22:25:05.159 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.TotalGenres" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.159 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.TotalSongs" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.159 - warn: squeezeboxrpc.0 (5988) State "squeezeboxrpc.0.Server.TotalDuration" has no existing object, this might lead to an error in future versions 2024-11-26 22:25:05.160 - error: squeezeboxrpc.0 (5988) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). 2024-11-26 22:25:05.161 - error: squeezeboxrpc.0 (5988) unhandled promise rejection: Invalid ID: squeezeboxrpc.0.Players.[LG] webOS TV OLED55C97LA.Playername 2024-11-26 22:25:05.162 - error: squeezeboxrpc.0 (5988) Error: Invalid ID: squeezeboxrpc.0.Players.[LG] webOS TV OLED55C97LA.Playername at ObjectsInRedisClient._setObject (file:///opt/iobroker/node_modules/@iobroker/db-objects-redis/build/esm/lib/objects/objectsInRedisClient.js:2713:19) at Immediate. (file:///opt/iobroker/node_modules/@iobroker/db-objects-redis/build/esm/lib/objects/objectsInRedisClient.js:2917:44) at process.processImmediate (node:internal/timers:485:21)
-
du könntest es nun mit alpha4 probieren
-
Funktioniert mit der alpha4, würde mich in einem Tag nochmal zurück melden da es manchmal ein paar Stunden gedauert hat.
Ich hatte die Logausgabe noch auf "alberne Ausgabe" stehen, was du ebenfalls geändert hast.
Dort kam noch ein paar Warnungen:2024-11-27 09:00:10.553 - silly: squeezeboxrpc.0 (28349) createObject Server.PlayerCount 2024-11-27 09:00:10.553 - silly: squeezeboxrpc.0 (28349) createObject Server.PlayerCountOther 2024-11-27 09:00:10.553 - silly: squeezeboxrpc.0 (28349) createObject Server.getFavorites 2024-11-27 09:00:10.553 - silly: squeezeboxrpc.0 (28349) createObject Server.SyncGroups 2024-11-27 09:00:10.554 - silly: squeezeboxrpc.0 (28349) createFolder Favorites.0 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.LastScan" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.Version" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.uuid" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.TotalAlbums" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.TotalArtists" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.TotalGenres" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.TotalSongs" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.562 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.TotalDuration" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.563 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.PlayerCount" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.563 - warn: squeezeboxrpc.0 (28349) State "squeezeboxrpc.0.Server.PlayerCountOther" has no existing object, this might lead to an error in future versions 2024-11-27 09:00:10.580 - silly: squeezeboxrpc.0 (28349) createObject Favorites.0.Name 2024-11-27 09:00:10.580 - silly: squeezeboxrpc.0 (28349) createFolder Favorites.0 2024-11-27 09:00:10.584 - silly: squeezeboxrpc.0 (28349) request 2024-11-27 09:00:10.584 - silly: squeezeboxrpc.0 (28349) request
Ich bedanke mich recht Herzlich. Ich weiß den schnellen unkomplizierten Support zu schätzen!
-
@oliverio sagte in Test/Support Adapter SqueezeboxRPC:
wer noch mit spotify unterstützen mag?
ich wurde letztens gefragt, wie man spotify playlists abspielen kann
ich habe herausgefunden, das spotify playlists eine id (zahlen und buchstaben haben)
und anhand dieses ids die dann auch abgespielt werden können.
kann so eine spotify playlist auch in den favoriten gespeichert werden?Wenn man das Spotty Plugin installiert hat werden alle Playlists die man in Spotify gespeichert hat im Wiedergabelisten Ordner vom LMS angezeigt.
Von dort aus kann man die Playlist dann über das Herz Symbol zu seinen Favoriten hinzufügen.
Und dann natürlich auch im ioBroker über "cmdPlayFavorite" starten.Das wäre aus meiner Sicht der sinnvollste Weg. Man könnte sich ja auch noch einen Ordner in den Favoriten anlegen in den man alle benötigten Spotify Playlists speichert.
Was Du mit der "id" meinst weiß ich leider nicht.
Wo sollte ich die denn finden und wo müsste ich sie im ioBroker eintragen damit die Playlist abgespielt wird? -
super danke, das ist ein guter hinweis
ich bin am überlegen, ob ich so wie du gesagt hast, einen extra datenpunkt anzulegen über den man per json die aktuellen playlists abfragen kann.die besagte id kannst du sehen, wenn man eine playlist anklickt, und jetzt achtung, man in die browser developer tools schaut.
dazu zunächst die F12 drücken und im dann auftauchenden fenster auf network gehen. ich bspw verwende chrome (alle chromiumartigen sehen gleich aus edge,opera,etc, firefox aber ähnlich)
dort kann man dann die requests filtern. hier "anyurl"
wenn man dann den request auswählt und auf payload geht, kann man sehen was der browser an den server sendet.
da müsste dann die playlist_id mit dabei sein.wenn man dann den folgenden befehl im datenpunkt cmdGeneral beim jeweiligen player eingibt (playlist id dann entsprechend anpassen)
"playlistcontrol","cmd:load","playlist_id:20312"
dann kann man die playlist abspielen.
die dokumentation dazu findet man hier,
https://github.com/oweitman/LMS-CLI-Documentation/blob/master/LMS-CLI.md
nach playlistcontrol suchen, im unteren drittel des dokuments -
Neue Version 1.4.0
Endlich mal eine neue Beta-Version die eine hohe Wahrscheinlichkeit hat auch ins stable zu kommen.
- Nachdem verschiedene Tester nun die kritischen Datenpunkte rund um Artist/Trackartist/Band/etc. für die beiden LMS-Modis geprüft haben und auch die Werte fürs Streaming überprüft haben, müsste es nun endlich mal passen.
- sendTo cmdGeneral:
Darüber hinaus habe ich auch eine echte neue Funktion hinzugefügt, die so bisher noch nicht möglich war. Mit diesem Befehl ist es nun möglich auch für Nutzer Werte vom LMS-Server zurück zu erhalten. 2 Beispiel sind im Readme enthalten. Weitere können über die CLI-Dokumentation nachgeschaut werden. Bei Fragen könnt ihr gern hier nachfragen. - Übersetzung wurde verbessert
- Die widget-Hilfe wurde nun ins Readme verlagert
- die Überprüfung der Playnamen auf illegale Zeichen wurde verbessert
- Die Adapterkonfiguration wurde auf jsonConfig umgestellt
Ich habe alle Änderungen, die in den verschiedenen alpha-Versionen enthalten waren nochmal zusammen gefasst, so das ich diese Versionen auch wieder tilgen kann.
Bitte nochmal testen. Ansonsten schaue ich das der Adapter so in 2-3 Wochen ins stable kommt.
-
@oliverio hi, bietet dein Adapter auch die Möglichkeit einer notification? Also zB wenn Musik gehört wird, diese kurz stoppt, ein anderen Ton gespielt wird und dann wieder die vorige Musik? Ich denke da an eine Anbindung an die Klingel. Es gibt auch ein addon für den LMS dafür.
-
@hansi1234
Sag mal wie das Plugin lautet, dann schau ich mir das an.Welche Notifikation brauchst du, das die Musik stoppt oder das die Klingel klingelt?
Ersteres müsste eigentlich klappen, das es ja den State gibt der anzeigt ob gespielt wird, pausiert oder gestoppt ist. -
@oliverio wegen dem Namen schaue ich daheim.
Das Plugin prüft, ob Musik läuft, wenn ja, dann senkt es dort kurz die Lautstärke, spielt einen anderen Ton ein und hebt die Lautstärke wieder an. Wenn nichts läuft oder der Player aus ist, schaltet es ihn ein, spielt den Ton ab und schaltet den Player wieder aus.
Kann man natürlich auch mit einem Script lösen. Finde aber ein addon attraktiver -
@oliverio sagte in Test/Support Adapter SqueezeboxRPC:
2 Beispiel sind im Readme enthalten.
Hol mal bitte bei Gelegenheit zwei Vertipperlein aus diesen Beispielen raus:
-
@oliverio lmsannounce heißt das addon
-
@hsteinme
Danke, muss ich ausbessern.
Funktioniert aber so trotzdem, da es nicht nur im testskriot falsch ist sondern innen drin auch -
@hansi1234 sagte in Test/Support Adapter SqueezeboxRPC:
@oliverio lmsannounce heißt das addon
Ok schau ich mir mal an
-
Hi,
ich wollte ja nochmal ein Feedback geben. Bis jetzt lief der Adapter mit der Änderung Fehlerfrei.
Vielen Dank für den schnellen Support.Ich habe grade das js-controller Update auf 7.0.3 durchgeführt da kam in der Ausgabe:
Dies nur als Hinweis, da ich keine weiteren Einträge erhalten habe.
-
lösche bitte alle datenpunkte und starte dann den adapter neu
das sollte eigentlich behoben sein, wird aber nur beim anlegen durchgeführt.
ansonsten muss ich nochmal schauen wie ich das nachstelleadapter version ist 1.4.0 oder größer?
-
Neue Adapterversion 1.5.0
- Neues Widget Playlist.
Dieses widget liest die Playlist/Wiedergabeliste vom Server.
Bei Klick wird die Playlist geladen und im ausgewählten Player abgespielt.
Falls die Playlist sich ändert muss entweder der Refreshknopf gedrückt werden oder der Browser neu geladen werden.
In der Grundfunktion ist relativ wenig styling enthalten.
In der Hilfe ist ein Beispielstyling enthalten, so das die Playlist wie im Bild aussieht. - Der Adapter wurde auf iobroker/eslint umgestellt.
- Schreibfehler wurden verbessert
- Dokumentation wurde erweitert
- Neues Widget Playlist.
-
Neue Version 1.5.1
- Dokumentation verbessert
- Rand aus plcontainer entfernt
- textoverflow mit ellipsis verbessert
- anfängliche Widgetgröße des Playlist-Widgets angepasst
- Attribute für playlist widget repariert
- Light-Mode-CSS für playlist widget hinzugefügt
-
Hallo,
habe das mit der Playlist_id jetzt mal ausprobiert.Habe die ID dank deiner Anleitung gefunden.
Das funktioniert so allerdings nur wenn man direkt in der Liste der Wiedergabelisten auf Play klickt. Wenn man erst die Playlist anklickt, so das man die Liste der Titel sieht und dann oben auf alle Wiedergeben klickt, kommt die ID nicht.
Da bin ich erst drauf reingefallen.
Vielleicht hilft das jemandem der es auch versuchen will.Die ID wird bei einer Spotify Playlist auch angezeigt.
Was ich allerdings noch nicht hinbekomme ist die Playlist aus ioBroker heraus zu starten.
@oliverio sagte in Test/Support Adapter SqueezeboxRPC:
wenn man dann den folgenden befehl im datenpunkt cmdGeneral beim jeweiligen player eingibt (playlist id dann entsprechend anpassen)
"playlistcontrol","cmd:load","playlist_id:20312"dann kann man die playlist abspielen.
Wenn ich jetzt diese Playlist starte
bekomme ich diese ID
Da mache ich dann dieses Befehl draus und kopiere ihn in den "cmdGeneral" Datenpunk.
Dann passiert aber leider nichts.Mache ich da noch etwas falsch?
Die neue Version 1.5.1 habe ich bereits installiert.
-
Sieht eigentlich gut aus.
Hast du das neue Widget mal probiert?Dazu musst du erst das Player Widget platziere
Dann das playlist Widget platzieren und die widget id des Player Widgets dort auswählenDann müsste die playlist angezeigt werden