PDA

View Full Version : Yac2Slim and multiple players



Rod Savard
2004-02-02, 18:28
Hi Jeff,

I am the author of the Yac2Slim utility. I just received an email from
another person about this very issue!

This seems to be a limitation of the Slim server software. There is no way
to specify which player(s) should receive the caller ID information.
Basically Yac2Slim does an HTTP GET with the following URL:

http://<slimserver>:9000/status.html?
p0=display&p1=<line1>&p2=<line2>&p3=<duration>

As you can see there is nothing that specifies WHICH player to show the
caller ID information on. It simply isn't part of the syntax on the Slim
server web interface.

I would like the Slim server to display the text on all players. Perhaps an
option can be added to show the text on only a specific player, but I don't
think anyone would want that in this case.

This issue was discussed several months ago but nothing has happened yet.

-Rod

> -----Original Message-----
> From: discuss-bounces (AT) lists (DOT) slimdevices.com [mailto:discuss-
> bounces (AT) lists (DOT) slimdevices.com] On Behalf Of Jeffrey R. Olson
> Sent: Monday, February 02, 2004 4:52 PM
> To: discuss (AT) lists (DOT) slimdevices.com
> Subject: [slim] Yac2Slim and multiple players
>
> I've been trying to use the Yac2Slim program to display Caller ID info on
my
> Squeezebox, and I've been getting intermittent results. Sometimes it
works,
> and sometimes it doesn't. I believe this is caused by the Yac2Slim code
> assuming that there is only one player. Since I use Winamp on my main
> workstation PC to stream from Slimserver and I have one Squeezebox, I
always
> have 2 players connected to the server.
>
> I don't know Delphi very well, but it appears to me that this code is not
> allowing for more than one player:
>
> url_main := 'http://' + Config.server + ':9000/status.html?';
>
> try
> // First pause the player
> if Config.pause <> 0 then begin
> url := url_main + 'p0=pause&p1=1';
> http.Get(url);
> end;
> //etc...
>
> When I told SlimServer to forget the Winamp player, the caller ID info
seems
> to appear without a hitch on my Squeezebox. So it does seem to be a
> multiple-player problem.
>
> First of all, what is the behavior of SlimServer, when there is more than
> one player attached, to an http request that doesn't specify the player?
> Will it randomly pick one to control? Or is it determined by the most
> recent player to connect to the server?
>
> Second of all, is there any way to get a list of all the players from
> SlimServer, either IP addresses or MAC addresses? If I could get a list
of
> all the players connected to the server, I could modify Yac2Slim (or
> probably just write my own Perl script :-) to loop through all the players
> and send the CallerID info to all of them (which is probably what you
would
> want to happen). Alternatively, if SlimServer cannot report the players
it
> knows about, I could always just hardcode the player's MAC address into
the
> Yac2Slim registry entries if needed.
>
> Thanks,
> Jeff
> ___________
> Jeff Olson
> jeff (AT) olsonzoo (DOT) com
> http://www.olsonzoo.com/
>
>

kdf
2004-02-02, 18:32
Quoting Rod Savard <rodney (AT) savard (DOT) org>:

> Hi Jeff,
>
> I am the author of the Yac2Slim utility. I just received an email from
> another person about this very issue!
>
> This seems to be a limitation of the Slim server software. There is no way
> to specify which player(s) should receive the caller ID information.
> Basically Yac2Slim does an HTTP GET with the following URL:
>
> http://<slimserver>:9000/status.html?
> p0=display&p1=<line1>&p2=<line2>&p3=<duration>
have you tried adding '&player=playerID' ?
That is how slimserver handles URL's specific to a given player . playerID is
MAC address for hardware players (slimp3, squeezebox), IP address for software
players (winamp, xmms, etc)

-kdf

Roy M. Silvernail
2004-02-02, 19:14
On Mon, 2004-02-02 at 20:28, Rod Savard wrote:
> Hi Jeff,
>
> I am the author of the Yac2Slim utility. I just received an email from
> another person about this very issue!
>
> This seems to be a limitation of the Slim server software. There is no way
> to specify which player(s) should receive the caller ID information.

<voice_of_doom>
I sentence you to RTFM forEVER!
</voice_of_doom>

:)

Specifically the SlimServer Web Interface docs available from... the
SlimServer Web Interface. But beware the typo. The docs say to
identify the player by IP address, but you need to use the MAC ID.

> Basically Yac2Slim does an HTTP GET with the following URL:
>
> http://<slimserver>:9000/status.html?
> p0=display&p1=<line1>&p2=<line2>&p3=<duration>
&player=00:04:20:xx:xx:xx

But... it's not simple to obtain the MAC ID of a player with the web
interface. For jockying multiple players, you're probably better off
using the command line interface (default port 9090), where you can
enumerate the players and retrieve their IDs.

> I would like the Slim server to display the text on all players.

This would be a worthwhile feature addition, I think. How about posting
it to bugs.slimdevices.com?
--
Roy M. Silvernail is roy (AT) rant-central (DOT) com, and you're not
Never Forget: It's Only 1's and 0's!
SpamAssassin->procmail->/dev/null->bliss
http://www.rant-central.com