Squeezebox Wiedergabelisten

Hallo,
kann man von IPS aus wav oder mp3 files in die Wiedergabeliste der Squeezebox einreihen, und wenn ja, wie lautet der Befehl? Für einen einzelnen Titel ist es:

CSCK_SendText(27182 /*[Client Socket]*/, $box_mac.' playlist play '.rawurlencode('D:/musik/titel.wav').chr(13));

Ich möchte mir z.B. die Außentemperatur ansagen lassen.
als erstes soll ein gong zu hören sein, dann Außentemperatur und dann die passende Temperatur. Im Test habe ich die einzelnen files mit dem playlist play Befehl und IPS_Sleep getrennt, aber das klemmt manchmal etwas. Wenn man die einzelnen files nach und nach in der richtigen reinfolge in die wiedergabeliste schreiben könnte, würde doch schön sauber eins nach dem anderen abgespielt ohne lästige pausen.

Schau dir doch einfach die möglichen Befehl an unter
http://dein_server:dein_port/html/docs/cli-api.html

Ich habe folgende Tests durchgeführt und bin relativ zufrieden. Meistens klappt der Ablauf, manchmal sind die Lautstärkeanpassungen zu spät.


CSCK_SendText($sqc, box_ralf.' playlist save temp_ralf'.chr(13));
ips_sleep(2000);
$volume = GetValueInteger(30592 /*[Squeezebox\SqueezeBoxRalf\Lautstärke]*/);
$volumeNEW = $volume+10;
CSCK_SendText($sqc, box_ralf.' mixer volume '.$volumeNEW.chr(13));
CSCK_SendText($sqc, box_ralf.' playlist play Wecker/Alert-Smile.wma'.chr(13));
ips_sleep(6000);
CSCK_SendText($sqc, box_ralf.' mixer volume '.$volume.chr(13));
CSCK_SendText($sqc, box_ralf.' playlist resume temp_ralf'.chr(13));

Möglich wäre auch


playlist insert
playlist add
playlist move <fromindex> <toindex>

aber damit müsstest du immer warten, bis das aktuelle Lied bzw. die komplette Playlist abgespielt wurde.

Mit move könntest du auch auf Position „0“ schieben.

Hast Du mir eine Idee, wie ich die SB nach der ausgabe stumm bekomm ohne eine alte Playlist zu spielen ?

Ichhabe so jetzt meinen Klingelsound jeweils auf den Boxen eingespielt, nur wenn vorher Ruhe war = keine Musik aus der SB dann soll das nach dem Abspielen der Ansage auch wieder so sein…

Danke !

Die Idee wäre, dass du dir einfach mal die verfügbaren Kommandos ansiehst ;). Dann findest du vielleicht selber etwas brauchbares.

Z.B.

<playerid> mode ?

The „mode“ command allows to query the player state and returns one of „play“, „stop“ or „pause“. If the player is off, „mode ?“ returned value is undefined.

Damit würdest du den Status der Box kennen und könntest entsprechend reagieren.

<playerid> playlist resume <playlist> <taggedParameters>
<playerid> playlist preview <taggedParameters>

Möglichkeiten gibt es wohl schon.