Problem mit mAirlistScript

Sehr geehrtes mAirList-Team,

Ich habe ein kleines Problem mit dem scripting von mAirlist.

Ausgangssituation:
Habe von Ihnen ein Skript bekommen, um bei einem bestimmten HTTP-GET Befehl ein Script, bei dem eine Playlist den laufenden Betrieb
überblendet, abspielt und dann wieder in die alte Playlist zurück geht, ausführt. Das Problem ist, wie kann ich das Skript einbauen, damit es immer auf diesen
HTTP-Befehl wartet und dann das Skript ausführt. Ich habe es versucht via Event-Manager es einzubauen, nur da kann ich es nur zu einem bestimmten
Zeitpunkt einbauen, und nicht dass es immer zu jeder Zeit es überprüft.

Hier der Code:

procedure OnExecuteCommand(Command: string);
var
pl: IPlaylist;
begin
if Command = 'NACHRICHTEN' then begin

// Nachrichten-Playlist aus Datei laden
pl := Factory.CreatePlaylist;
pl.LoadFromFile('c:\irgendwo\nachrichten.mlp');

// Hinter das gerade laufende Element einfügen...
CurrentPlaylist.InsertList(CurrentPlaylist.GetNextIndex, pl, false);

// ... und überblenden
CurrentPlaylist.AutomationNext;
end;
end;

begin
end.

Ich würde mich freuen, wenn ich eine schnelle und einfache Lösung für das Problem bekomme.


mit freundlichen Grüßen
Christian Fleck
Techniker von Shareglobal e.U.

Das Script muss in der Konfiguration als sog. “Benachrichtungs-Script” (ab mAirList 5: “Hintergrund-Script”) registriert werden. Dann funktioniert es.

Hallo,

ich hab mit mal das REST-System angeschaut und vom Prinzip her ist es genial, nur leider kann ich das nicht bedienen. Könnt ihr mir da helfen?

ich möchte via dieser Seuite http://requestmaker.com/ einen REST-Befehl abschicken um es zu testen.

Mein Header lt dieser Seite:

GET / HTTP/1.1 Host: <url>:9300 Accept: */* GET: /encoder/status Content-Length: 0 Content-Type: application/x-www-form-urlencoded

Mein Response lt dieser Seite:

HTTP/1.1 401 Unauthorized Connection: close Content-Type: text/html; charset=utf-8 Content-Length: 49 WWW-Authenticate: Basic realm="mAirList at port 9300"

Könnts ihr mir da helfen, weil später will über das einen execute befehl darüber schicken lassen


mit freundlichen Grüßen
Christian Fleck
Techniker von Shareglobal e.U.

Du musst in den Einstellungen der REST-Fernsteuerung zunächst einen User/Passwort festlegen, sonst lässt er dich nicht rein. Benutzername und Kennwort müssen dann per HTTP-Basic-Auth übergeben werden.

Alternativ den Haken bei anonymen Zugriff setzen, das würde ich aber nur für Testzwecke einschalten.

Um einen Befehl auszuführen, musst du einen POST-Befehl auf die URL /execute durchführen, und als Parameter (im Body) “command=” mitschicken.

Ich empfehle das Ganze mit cURL zu testen, gibt es auch für Windows:

curl -X POST -d "command=PLAYER 1-1 START" -u user:passwort http://<ip>:9300/execute