Telnet Response empfangen und auswerten

Begonnen von fraggle-m, 30. April 2012, 10:59:45

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

fraggle-m

Hallo,

ich versuche gerade meine Squeezebox von meinem WAGO 750-881 aus zu steuernden, die Ansteuerung dr einzelnen Placher funktioniert auch schon recht zufriedenstellend dank des Beispieles aus dem Beitrag Telnet Befehle senden http://www.oscat.de/community/index.php/topic,1071.0.html.

Ich würde aber auch gerne dieverse Zustände auswerten, der Squeezserver liefert dazu auch Response aber ich weis nicht wie man diese auswerten/empfangen kann.

Gruß
Frank

peewit

Hallo

Damit dir hier jemand helfen kann, musst du schon einige details liefern
Wie sehen denn die daten vom server aus.?

Du koenntest mit wireshark den datenverkehr aufzeichnen, und mit einer kurzen beschreibung weitergeben

Gibt es eine protokollbeschreibung?

fraggle-m

Hallo,

Anbei mal ein paar auszüge aus der Dokumentation des Servers:

ZitatIntroduction
the Logitech Media Server provides a command-line interface to the players via TCP/IP. After starting the server, commands and queries may be sent by connecting to a specific TCP/IP port. The server will reply echoing the request (for commands) or by returning the requested data (for queries). By default, the server will listen for connections on TCP/IP port 9090. This format is designed for ease of integration into AMX, Crestron and other automation systems.

The end of line separator is line feed (<LF> ASCII decimal 10, hexadecimal 0x0A). The server accepts LF, CR or 0x00 (or any combination thereof) as end of line, and replies with whatever was used for the command. For strings, Logitech Media Server uses the UTF-8 character-set encoding.

To use the command line interface interactively, use the telnet command from your system's command prompt: telnet localhost 9090 and when it connects, you can start typing commands. Beware that the server expects parameters to be encoded using percent-style escaping (see below); " and \ are not supported as in shell-like environments.

For debugging purposes, CLI formatted commands can be sent using standard in and out. This support is only available on Unix platforms (MacOS X included), and must be enabled by launching the server with the "--stdio" command line option.


Anbei die Beschreibung wie man das Volumen ansteuert:

Zitat<playerid> mixer volume <0 .. 100|-100 .. +100|?>

The "mixer volume" command returns or sets the current volume setting for the player. The scale is 0 to 100, in real numbers (i.e. 34.5 is valid). If the player is muted, the volume is returned as a negative value. Note that players display a 0 to 40 scale, that is, the 0..100 volume divided by 2,5. Likewise, using the "button" command with "volume_up" or "volume_down" parameters increases or decreases the volume by 2,5.

Examples:

Request: "04:20:00:12:23:45 mixer volume ?<LF>"
Response: "04:20:00:12:23:45 mixer volume 98<LF>"

Request: "04:20:00:12:23:45 mixer volume 25<LF>"
Response: "04:20:00:12:23:45 mixer volume 25<LF>"

Request: "04:20:00:12:23:45 mixer volume +10<LF>"
Response: "04:20:00:12:23:45 mixer volume +10<LF>"

Wenn ich bei deinem Baustein SEND_TELNET auf den Eingang Text  '04:20:00:12:23:45 mixer volume 25 LF' schreibe wird die Lautstärke des betreffenden Players auf 25% gesetzt, das funktionirt schon wunderbar(Danke).
Nur wie ich denn Response Empfangen kann verstehe ich nicht.

Gruß

Frank

power09

Hallo fraggle-m

Ich bin gerade auch dabei, die Squeezebox über Telnet zu steuern.
Habe auch eine WAGO SPS 750-881.
Irgendwie kriege ich das aber nicht hin.
So wollte ich dich fragen, ob du mir vielleicht ein Auszug von deinem Programm senden kannst.

Besten Dank im Voraus.

Gruss
Jürg