REST-API
Im folgenden wird näher auf die Funktionalität und Befehle der Rest-API eingegangen.
Anwendungsbereich
Die Rest-API stellt einen einfachen Zugriff für externe Anwendungen zur Verfügung. Der Zugriff erfolgt dabei über das HTTP Protokoll. Befehle werden dabei wie der Aufruf einer Webseite an LEDVIZ gesendet. Die aufgerufenen Seite werden dabei als Befehle interpretiert. Anwendungen wie vMix sind in der Lage solche HTTP Request zu senden.
Wird z.B. ein bestimmtes Video gespielt, kann dies mit einem solchen Aufruf verknüpft werden, um gleichzeitig den richtigen Content auf der Videowand und der LED Bande anzuzeigen. Dies kann zum Beispiel bei der Vorstellung einer Mannschaft vor einem Spiel genutzt werden.
Einstellungen
In Bezug auf die Rest-API gibt es nicht viel einzustellen. Den Dialog dazu erreichen Sie oben über die Menüleiste im Hauptprogramm unter dem Punkt "Steuerung".
Grundsätzlich stehen 2 Parameter zur Verfügung:
Über die Option "Rest-API aktivieren" wird der Port zur externen Ansteuerung geöffnet. Im Gegensatz zu den anderen Schnittstellen, ist diese Schnittstelle immer aktiv. Zusätzlich haben sie hier die Möglichkeit den gewünschten Port anzugeben.
Als Standard ist hier der Port 12400 eingestellt.
Der externe Trigger muss hierbei über den ausgewählten Port und das HTTP Protokoll an LEDVIZ weitergeleitet werden.
Secured Socket Layer Anfragen über HTTPS werden von LEDVIZ aufgrund des fehlenden Zertifikates nicht unterstützt
Folgende Befehle stehen über die Rest-API zur Verfügung:
Befehle
Sequenzen abspielen
http://localhost:12400/play
http://localhost:12400/play/5
http://localhost:12400/play/5?beispiel.xml
Mit dem ersten Befehl wird nur der Play-Button getriggert, während der zweite Befehl direkt die Sequenz 5 im aktuellen Projekt ansteuert. Der letzte Befehl erweitert den Trigger um ein Projekt.
Über den Play Befehl kannst auch eine Sequenz mit DMX oder MIDI ID triggern.
Wichtig: Die Suche nach dieser ID erfolgt immer in allen Projekten!
http://localhost:12400/play/dmx/25
http://localhost:12400/play/midi/ABC
Im Gegensatz dazu steht das Abspielen über vordefinierte Tasten. Genauso wie im Programm direkt, können auch die Short-cuts, also F1 bis F20 und 0 bis 9, angesprochen werden:
http://localhost:12400/key/F1
Abspielen pausieren
Folgender Befehl triggert den Pause-Button in der Anwendung um den Abspielvorgang anzuhalten:
http://localhost:12400/pause
Abspielen stoppen
Folgender Befehl triggert den Stop-Button in der Anwendung um den Abspielvorgang komplett anzuhalten:
http://localhost:12400/stop
Abspielen fortsetzen
Folgender Befehl triggert den Pause-Button in der Anwendung um den Abspielvorgang fortzusetzen:
http://localhost:12400/continue
Shortcut-Sequenz beenden und zurück zur ursprünglichen Playlist
Folgender Befehl beendet das Abspielen einer Sequenz, die über einen Short-Cut aufgerufen wurde und kehrt zurück zur ursprünglichen Position in der Playlist. Nach dem Rücksprung wird die ursprüngliche Sequenz neu gestartet und von Anfang an gespielt.
http://localhost:12400/resume
Für den Fall das es sich bei der Sequenz um einen Overlay handelt, so können diese über folgenden Befehl zurückgesetzt werden
http://localhost:12400/overlay/reset
Zur nächsten Sequenz springen
Folgender Befehl triggert den Next-Button in der Anwendung um die nächste verfügbare Sequenz in der Liste abzuspielen:
http://localhost:12400/next
Zur vorherigen Sequenz springen
Folgender Befehl triggert den Back-Button in der Anwendung um die vorherige verfügbare Sequenz in der Liste abzuspielen:
http://localhost:12400/prev
Ausgabe auf Schwarz blenden (Fade-To-Black)
Folgender Befehl triggert den FTB-Button in der Anwendung um Ausgabe auf Schwarz auszublenden:
http://localhost:12400/ftb
Gesamte Helligkeit und Helligkeitszonen regeln
Folgender Befehl triggert den Schieberegler um die globale Helligkeit zu steuern:
http://localhost:12400/brightness/???
Anstelle der ??? muss hier ein Wert zwischen 0 und 100 angegeben werden. Der Wert repräsentiert den prozentualen Transparenzwert eines Schwarzen Layers, der On-Top der Ausgabe gezeichnet wird.
Als Zusatz wird zur Unterstützung der StreamDeck TurnWheels, neben den exakten Werten, auch die Werte "up" and "down" bereitgestellt, die jeweils die Helligkeit um +/- 5% ändern
http://localhost:12400/brightness/up
http://localhost:12400/brightness/down
Um Helligkeitszonen anzusprechen ist der entsprechende Wert der Zone hinzuzufügen, z.B. "/brightness1/" bis "/brightness8/". Die Variablen sind analog zur gesamten Helligkeit anzuwenden.
Sequenzen sperren / entsperren
Um Sequenzen zu sperren oder freizugeben bitte folgenden Befehl verwenden
http://localhost:12400/sequence/lock/10
10 ist dabei die Sequenz und der Befehl würde für das aktuelle Preset angewendet werden. Wenn der Befehl in einem bestimmten Preset ausgeführt werden soll, dann den gewünschten Preset mit : anhängen, also z.B.:
http://localhost:12400/sequence/lock/10:3
Dieser Befehl sperrt die 10te Sequenz im 3ten Preset. Analog dazu lautet der Befehl zum entsperren ".../unlock/..."
http://localhost:12400/sequence/unlock/10
http://localhost:12400/sequence/unlock/10:3
Presets der Sequenzen auswählen
Zur Auswahl der Sequenzen die abgespielt werden sollen, besteht die Möglichkeit direkt eine Auswahl am rechten Bildschirmrand von LEDVIZ zu treffen. Diese Auswahl wird in einem Preset zusammengefaßt und gesteuert.
Über die API können die vorhanden Presets 1 - 9 direkt ausgewählt werden.
http://localhost:12400/preset/<preset>
Der Tag <preset> kann hierbei eine Nummer von 1 bis 9 enthalten. Unabhängig davon ob die Presets umbenannt wurden verbleibt die Angabe des <preset> immer bei 1 - 9. Eine Auswahl über den Namen wird nicht unterstützt.
LiveText ansteuern
Um einen Tag Wert für die LiveText Darstellung an LEDVIZ zu übergeben, verwenden sie folgenden Befehl
http://localhost:12400/tags/<tag-name>?<tag-value>
CuePoints setzen und aufrufen
In einer PlayList können über die REST-Api Sprungmarken gesetzt und auch wieder aufgerufen werden. Das ermöglicht die gezielte Ansteuerung einzelner Sequenzen z.B. als Rücksprung aus Sequenzen mit ShortCuts
CuePoints werden mit der Option /set/ gesetzt. Der Name kann dabei ein belibiger Alphanumerischer String sein.
http://localhost:12400/cue/set/<cue-point-name>
Um zu einem gespeicherten CuePoint zurück zu kehren wird der CuePoint mit seinem Namen direkt aufgerufen
http://localhost:12400/cue/<cue-point-name>
Eine zusätzliche Angabe von XML Dateien als Parameter ist bei CuePoints nicht nötig. Der CuePoint enthält bereits den Verweis auf die entsprechende XML Datei.
CuePoints werden nicht gespeichert und stehen nur während der Laufzeit zur Verfügung in der sie auch erstellt wurden. Nach einem Neustart ist die Liste der CuePoints leer. Sollen feste Sprungmarken vergeben werden, so kann das über "midi" oder "dmx" Kennungen realisiert werden.
Steuerungen aktivieren / deaktivieren
Mit den Steuerungsmodulen können neben der der RestAPI auch andere verschiedene Protokolle für die Steuerung von LEDVIZ genutzt werden. Steuerungen können über die API wie folgt aktiviert oder deaktiviert werden
http://localhost:12400/control/hippo/true
http://localhost:12400/control/hippo/false
http://localhost:12400/control/dmx/true
http://localhost:12400/control/dmx/false
http://localhost:12400/control/midi/true
http://localhost:12400/control/midi/false
Sonderfunktionen ausführen
Über die Sonderfunktionen einer Sequenz kann ein bestimmtes Verhalten beim Abspielen von Animationen durchgeführt werden. Eine dieser Funktion ist z.B. stop / continue beim Abspielen von Videos.
Sollte eine Sequenz an einer Stop-Marke stehen kann sie über folgenden REST-Api Befehl forgesetzt werden
http://localhost:12400/gfx/continue
Sprungmarken aufrufen
Über die Sonderfunktionen gesetzten Sprungmarken könne auch geziel aufgerufen werden. Das gilt sowohl für Sprungmarken vor und hinter dem aktuellen Abspielpunkt. Der Aufruf erfolgt über folgenden Befehl:
http://localhost:12400/gfx/jump/<stop>
Der Wert von Stop kann hier die Werte 1 - 4 haben.
Ändern von Content
Geladene Videos können über die REST-Api von extern über folgenden Link geändert werden:
http://localhost:12400/file/dmx/1/<filename>
http://localhost:12400/file/midi/ABC/<filename>
