Bearbeiten von „RoarAudio PlayList Daemon/Protokoll“

Aus UUGRN

Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und speichere dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 1: Zeile 1:
 
Auf dieser Seite wird auf das ''simple'' Protokoll des [[RoarAudio PlayList Daemon]] eingegangen. Andere durch den rpld unterstützte Protokolle werden hier ignoriert. Die Spezifikationen zu diesen sind bei den entsprechenden Herstellern zu  finden beziehungsweise zu erfragen.
 
Auf dieser Seite wird auf das ''simple'' Protokoll des [[RoarAudio PlayList Daemon]] eingegangen. Andere durch den rpld unterstützte Protokolle werden hier ignoriert. Die Spezifikationen zu diesen sind bei den entsprechenden Herstellern zu  finden beziehungsweise zu erfragen.
 
== Rahmen Protokoll ==
 
Das Protokoll besteht aus einer Sequenz von Befehl-Antwort-Paaren. Dabei Sendet der Klient einen Befehl als abgeschlossene Zeile (Terminiert mit ''line feed'', 0x0A, '\n') an den Server und dieser Beantwortet dies dann mit einem Datenbereich gefolgt von einer Status Zeile. Der Datenbereich wird durch eine Zeile die ausschließlich aus einem Punkt besteht Beendet. Sollte eine Zeile im Datenbereich vorkommen die ausschließlich aus einem oder Mehren Punkten besteht so wird ein Punkt vor gehängt um Eindeutigkeit der Ende Sequenz zu garantieren.
 
 
Die Statuszeile besteht aus drei oder vier Teilen:
 
* Dem Vorsatz '>',
 
* dem Fehler Code,
 
* dem Fehler Text
 
* und optional einer Fehlerbeschreibung in Klammern ('(...)').
 
 
Die Felder sind jeweils dusch Leerzeichen getrennt.
 
 
Beispiel:
 
C: NOOP
 
S: .
 
S: > 0 OK
 
 
C: HELP
 
S: Commands:
 
S:  HELP
 
S:  NOOP
 
S:  PLAY
 
...
 
S: .
 
S: > 0 OK
 
 
Implementierungen '''dürfen nur''' die obigen Zeilenenden senden '''solten''' aber auch anderen gängige Zeilenumbrüche Akzeptieren.
 
 
== Fehler Codes ==
 
Folgende Tabelle zeigt die definierten Fehler Codes:
 
 
{| class="wikitable"
 
! Symbolischer Name
 
! Numerischer Wert
 
! Versionen
 
! Fehler Text
 
! Fehler beschreibung
 
|-
 
! OK
 
| 0
 
| ab 0.1beta0
 
| OK
 
| Der Befehl wurde erfolgreich abgearbeitet.
 
|-
 
! ERROR
 
| 1
 
| ab 0.1beta0
 
| Error
 
| Bei der Abarbeitung des Befehls ist ein Fehler aufgetreten.
 
|-
 
! INPROC
 
| 2
 
| ab 0.1beta0
 
| In Process
 
| Die Abarbeitung wurde wird im Hintergrund fortgesetzt.
 
|-
 
! YES
 
| 3
 
| ab 0.1beta0
 
| Yes
 
| Die Antwort auf die Anfrage ist: Wahr
 
|-
 
! NO
 
| 4
 
| ab 0.1beta0
 
| No
 
| Die Antwort auf die Anfrage ist: Falsch
 
|-
 
! PROERR
 
| 5
 
| ab 0.1beta0
 
| Protocol Error
 
| Es ist ein Protokollfehler aufgetreten. Die Verbindung kann vom Server zurück gesetzt werden.
 
|-
 
! GOODBYE
 
| 6
 
| ab 0.1beta0
 
| GoodBye
 
| Antwort auf den ''QUIT'' Befehl. Die Verbindung wird vom Server zurück gesetzt.
 
|-
 
! NOTPERM
 
| 7
 
| ab 0.1rc0
 
| Not Permitted
 
| Die Operation wird verweigert da sie nicht erlaubt ist mit den Rechten des Klienten
 
|-
 
! NFPROERR
 
| 8
 
| ab 0.1rc8
 
| Nicht Fataler Protokollfehler. Normalerweise syntaktischer Fehler.
 
|-
 
|}
 
  
 
== Befehle ==
 
== Befehle ==
Zeile 127: Zeile 35:
 
==== STOP ====
 
==== STOP ====
 
Dieser Befehl beendet hält den Abspielvorgang an.
 
Dieser Befehl beendet hält den Abspielvorgang an.
 
==== PAUSE ====
 
Unterbricht das Abspielen oder setzt es fort.
 
 
Syntax:
 
  PAUSE {TRUE|FALSE|TOGGLE}
 
  
 
==== NEXT ====
 
==== NEXT ====
 
Dieser Befehl wechselt zum nächsten Titel.
 
Dieser Befehl wechselt zum nächsten Titel.
 
==== PREV ====
 
Dieser Befehl wechselt zum zuletzt gespielten Titel.
 
  
 
==== ISPLAYING ====
 
==== ISPLAYING ====
Zeile 207: Zeile 106:
 
  |}
 
  |}
  
==== SHOWIDENTIFIER ====
+
==== PAUSE ====
Zeigt eine Zeichenkette an welche den aktuell abgespielten Titel auf der nächst tieferen Ebene repräsentierte. Dabei kann es sich um eine RoarAudio StreamID, eine Geräte Datei, eine UUID oder ein beliebig geformte andere Zeichenkette handeln. Es ist nicht Garantiert das diese keine Stimmbrüche beinhaltet oder 7-Bit Sauber ist. Die Bedeutung ist nicht weiter im Protokoll Spezifiziert und wird ausschließlich vom Daemon weitergereicht.
+
Unterbricht das Abspielen oder setzt es fort.
  
 
Syntax:
 
Syntax:
   SHOWIDENTIFIER
+
   PAUSE {TRUE|FALSE|TOGGLE}
  
 
=== Befehle der Lautstärke Steuerung ===
 
=== Befehle der Lautstärke Steuerung ===
Zeile 228: Zeile 127:
 
   VOLUME 65535/65535 100%
 
   VOLUME 65535/65535 100%
  
=== Befehle zur Steuerung der Haupt Wiedergabewarteschlagen-Spielliste ===
+
=== Liste zuer Steuerung der Haupt Wiedergabewarteschlagen-Spielliste ===
 
==== LISTQ ====
 
==== LISTQ ====
 
Zeigt den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste oder einer anderen Wiedergabeliste an.
 
Zeigt den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste oder einer anderen Wiedergabeliste an.
Zeile 237: Zeile 136:
 
==== FLUSHQ ====
 
==== FLUSHQ ====
 
Löscht den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste.
 
Löscht den Inhalt der Haupt Wiedergabewarteschlagen-Spielliste.
 
==== SHOWCUR ====
 
Dieser Befehlt Zeigt den obersten Eintrag in der Haupt Wiedergabewarteschlagen-Spielliste an. Zur Anzeige was gerade gespielt wird ist dieser Befehl nicht geeignet. Dazu muss ''SHOWPLYING'' verwendet werden.
 
  
 
=== Befehle zur Wiedergabelisten Verwaltung ===
 
=== Befehle zur Wiedergabelisten Verwaltung ===
Zeile 368: Zeile 264:
  
 
=== Befehle zur Permanent Speicherung ===
 
=== Befehle zur Permanent Speicherung ===
==== STORE ====
+
   STORE {NONE|CONFIG|ALL|QUEUE|PLAYLIST {"Name"|ID|ANY}}
Dieser Befehl lässt den Daemon seinen Aktuellen Zustand Speichern.
+
   RESTORE {NONE|CONFIG|ALL|QUEUE|PLAYLIST {"Name"|ID|ANY}}
Dieser kann zum Beispiel vor dem Beenden genutzt werden um den zustand dann wiederherstellen zu können beim nächsten Start. Je nach Parameter wird dieser Befehl vom Daemon beim Beenden eigenständig durchgeführt.
 
 
 
Syntax:
 
   STORE
 
 
 
==== RESTORE ====
 
Stellt den Zustand wie er mit ''STORE'' gespeichert wurde wieder her.
 
Dies kann als Beispiel beim Starten des Daemons verwendet werden um den Zustand wieder her zu stellen der beim beenden herrschte. Je nach Parameter wird dieser Befehl vom Daemon selbstständig beim Starten ausgeführt.
 
 
 
''Wichtig:'' Ein mehrfaches verwenden dieses Befehls kann zu Duplikaten führen.
 
 
 
Syntax:
 
   RESTORE
 
  
 
=== Veraltete Befehle ===
 
=== Veraltete Befehle ===
Zeile 392: Zeile 275:
 
   DELFQ identifier
 
   DELFQ identifier
  
=== Andere Befehle und geplante Befehle ===
+
=== Andere Befehle ===
Die folgenden Befehle sind in diesem Dokument nicht beschreiben, oder noch in Planung. Sie sollten aktuell nicht verwendet werden.
+
  SHOWIDENTIFIER
 
+
  SHOWCUR
 
   SEARCHPLE {"search string"|0xdiscid|uuid} [{AS|IN} {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"}] [FROM {"Name"|ID|ANY}]
 
   SEARCHPLE {"search string"|0xdiscid|uuid} [{AS|IN} {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"}] [FROM {"Name"|ID|ANY}]
 
   UPDATE [{"Name"|ID|ANY}] {TO|FROM} {STDIN|STDOUT|"Filename"} [AS {RPLD|PLS|M3U|VCLT|XSPF|PLAIN}] USING {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"} [AND ...] [POLICY {DEFAULT|OLD|NEW} {KEEP|DELETE}]
 
   UPDATE [{"Name"|ID|ANY}] {TO|FROM} {STDIN|STDOUT|"Filename"} [AS {RPLD|PLS|M3U|VCLT|XSPF|PLAIN}] USING {ALL|TITLE|ARTIST|VERSION|FILENAME|DISCID|UUID|TAG:"Tagname"} [AND ...] [POLICY {DEFAULT|OLD|NEW} {KEEP|DELETE}]

Bitte kopiere keine Inhalte, die nicht Deine eigenen sind!

Du gibst uns hiermit Deine Zusage, dass
  • Du den Text nicht aus Wikipedia kopiert hast
  • Du den Text selbst verfasst hast
  • oder der Text entweder
    • Allgemeingut (public domain) ist
    • oder der Copyright-Inhaber seine Zustimmung gegeben hat.
Wichtig
  • Benutze keine urheberrechtlich geschützten Werke ohne Erlaubnis des Copyright-Inhabers!
  • Falls dieser Text bereits woanders veröffentlicht wurde, weise bitte auf der 'Diskussion:'-Seite darauf hin.
  • Bitte beachte, dass alle UUGRN-Beiträge automatisch unter der der Creative Commons Lizenz stehen.
  • Falls Du nicht möchtest, dass Deine Arbeit hier von anderen verändert und verbreitet wird, dann drücke nicht auf "Artikel Speichern".

Bitte beantworte die folgende Frage, um diese Seite speichern zu können (weitere Informationen):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)

Folgende Vorlagen werden auf dieser Seite verwendet: