VIDEO_OA_WORKSTATION

Für jeden Bedienplatz im System existiert ein Datenpunkt vom Typ VIDEO_WORKSTATION. In diesem Workstation-Datenpunkt befinden sich alle relevanten Informationen eines Arbeitsplatzes. Der Datenpunkttyp setzt sich aus Datenpunktelementen und Typreferenzen zusammen.

Element Typ Beschreibung
activeCam int Aktive Kamera für Bedienpultbedienung. Dies ist die auf dem aktiven Monitor angewählte Kamera, auf die das Bedienpult zugreift. (Wert wird durch die zentrale Control-Komponente ermittelt).
activeMon int Aktiver Monitor für Bedienpultbedienung (Wert wird durch die zentrale Control-Komponente ermittelt)
activeWidget string

Aktives EWO des Arbeitsplatzes für die Bedienpultbedienung.

[Widget];[Dialog];[Streamnummer]

z.B. ewo1;4;1

(Wert wird von zentraler Control-Komponente als Ziel für eine Aufschaltung über das Bedienpult auf Monitor 1 genutzt)

custom Typreferenz Siehe _VIDEO_OA_CUSTOM
joystick Typreferenz Siehe _VIDEO_OA_JOYSTICK
jogShuttle Typreferenz Siehe _VIDEO_OA_JOG_SHUTTLE
keyboard Typreferenz Siehe _VIDEO_OA_KEYBOARD_IntuiKey
exportServer.object Typreferenz Videoobjekt des Exportservers für diesen Arbeitsplatz
exportServer.log Struktur Unter diesem Strukturelement werden Logmeldungen zum Export abgelegt. Die Meldungen werden über die Funktion VIDEO_OA_exportNewLog() in die Datenpunktelemente geschrieben.
exportServer.log.log dyn_string Dieses Element enthält alle Logmeldungen von Aktionen die von der Applikation automatisch ausgeführt wurden.
exportServer.log.logUser dyn_string Dieses Element enthält alle Logmeldungen von Aktionen die von einem Bediener ausgeführt wurden.
exportServer.log.maxLines int

Die Logmeldungen in .log und .logUser werden in einem Ringspeicher verwaltet. Wird die in .maxLines eingestellte Anzahl von Meldungen erreicht, wird die jeweils älteste Meldung gelöscht.

Die Ringspeicher von .log und .logUser sind voneinander unabhängig. Wird .maxLines auf 0 gesetzt, gilt der Defaultwert 10.

exportServer.state Struktur Unterhalb dieses Strukturelementes wird der aktuelle Status der Exportaufträge eines Exportservers im Datenmodell abgebildet. Diese Elemente werden vom Control main.ctl beschrieben.
exportServer.state.ready bool Dieses Element wird mit einer 1 -> 0 Flanke beschrieben, sobald ein Exportauftrag abgeschlossen wurde. Die Flanke kann zur Generierung einer Impulsmeldung genutzt werden.
exportServer.state.error bool Dieses Element ist 1 solange sich ein fehlgeschlagener Export in der Exportliste befindet.
exportServer.state.canceled bool Dieses Element ist 1 solange sich ein vom Benutzer abgebrochener Exportauftrag in der Exportliste befindet.
exportServer.state.running bool Dieses Element ist 1 solange sich ein laufender Exportauftrag in der Exportliste befindet.
exportServer.protectionList.cameras dyn_string
exportServer.protectionList.start time
exportServer.protectionList.end time
exportServer.lastExportPath string Pfad in den beim letzten Export exportiert wurde.
object Typreferenz Videoobjekt für diesen Arbeitsplatz
widget.widgetDebug bit32 Dieses Datenpunktelement enthält die Debugeinstellungen für die Video-Widgets des Arbeitsplatzes
widget.widgetUserFlags bit32 In diesem Datenpunktelement werden die für einen Arbeitsplatz parametrierte UserFlags Einstellung für Video-Widgets gespeichert
widget.command string Kommandoschnittstelle zu den EWOs auf diesem Arbeitsplatz
widget.defaultStreamLive unsigned Der Stream mit dieser Streamnummer wird aufgeschaltet, wenn bei einem Aufschaltkommando für ein Livebild nicht explizit eine Streamnummer übergeben wird. Ist der Wert 0, wird Stream 1 verwendet.
widget.defaultStreamPlayback unsigned Der Stream mit dieser Streamnummer wird aufgeschaltet, wenn bei einem Aufschaltkommando für ein Playbackbild nicht explizit eine Streamnummer übergeben wird. Ist der Wert 0, wird Stream 1 verwendet
widget.response string Kommandoschnittstelle vom EWO zum Arbeitsplatz
widget.proxy string Name des Datenpunkts vom Typ VIDEO_OA_STREAMING_PROXY. Mit dem Parameter mode=1|0 wird angegeben, ob der Proxy verwendet werden soll.
parameter.manualSpeed int

In diesem Element wird festgelegt mit welchem % Wert PTZ Kommandos versendet werden, wenn diese über einen Button des

Frameworks ausgelöst werden.

keyboardError bool Verbindungsstatus zum Bedienpulttreiber
keyboardConnected bool Verbindungsstatus zum Bedienpult
keyboardAvailable bool Wird vom Bediener gesetzt, wenn für diesen Bedienplatz ein Bedienpult vorgesehen ist
joystickError bool Verbindungsstatus zum HID-Treiber
joystickConnected bool Verbindungsstatus zum Joystick
joystickAvailable bool Wird vom Bediener gesetzt, wenn für diesen Bedienplatz ein Jog-Shuttle vorgesehen ist.
jogShuttleError bool Verbindungsstatus zum HID-Treiber
jogShuttleConnected bool Verbindungsstatus zum Jog-Shuttle
jogShuttleAvailable bool Wird vom Bediener gesetzt wenn für diesen Bedienplatz ein Jog Shuttle vorgesehen ist.
activeCamDp string

In diesem String wird der Datenpunkt inklusive Systemnamen der aktuell auf dem Arbeitsplatz aktiven Kamera und deren aktueller Darstellungsmodus angezeigt.

<Datenpunktname>;<Darstellungsmodus>

z.B.:

System1:Camera_00001;playback

oder

System1:Camera_00001;live

Kommandoschnittstelle zu Video EWOs (widget.command)

Auf das Datenpunktelement widget.command eines Datenpunktes vom Typ VIDEO_OA_WORKSTATION verbinden sich alle EWOs eines Arbeitsplatzes, wenn sie mit der Funktion VIDEO_OA_ewoInit() im „Initialize“ Script gestartet werden. Die Identifizierung erfolgt über den vergebenen Objektnamen, der im Kommando mit dem Schlüsselwort „widget“ übergeben wird.

Kommandos und Schlüsselwörter

Folgende Kommandos sind möglich:

Kommando: cmd=clear

Schlüsselwort Beschreibung
widget Name der Referenz.
videodlg

Nummer des Videodialoges.

Mögliche Werte: 0-6

Default: 0 (=alle Dialoge)

BEISPIEL

Löscht den aktuellen Inhalt des Videodialoges 1 im EWO VideoBild_1

cmd=clear;widget=VideoBild_1;videodlg=1

Kommando: cmd=setGrid

Schlüsselwort Beschreibung
widget Name der Referenz.
dialogcount

Anzahl der Dialoge

Mögliche Werte: 1,4,6,12,24

Default: 1

BEISPIEL

Schaltet im EWO VideoBild_1 auf 4er-Grid um

cmd=setGrid;widget=VideoBild_1; dialogcount =4

Kommando: cmd=show

Schlüsselwort Beschreibung
widget Name der Referenz.
videodlg Nummer des Dialoges für die Aufschaltung.
source Kamera die aufgeschaltet werden soll.
mode

Betriebsart (derzeit nur "live" für Livebilder)

Default: "live"

stream

Streamnummer der Kamera die aufgeschaltet werden soll.

Mögliche Werte: 1,2, oder 3

Default: Die Defaultstreamnummer für diesen Arbeitsplatz

BEISPIEL

Schaltet den Stream 2 der Kamera 1 im Dialog 4 des Video EWOs VideoBild_1 auf

cmd=show;widget=VideoBild_1;videodlg=4;source=Camera_00001;stream=2

Befehle für die Export-Steuerung (VIDEO_OA_WORKSTATION.exportServer)

Kommandos werden auf das Element *.exportServer.object.command.request, Rückmeldungen darauf auf das Element *.exportServer.object.command.response geschrieben.

Eine Rückmeldung enthält in jedem Fall den kompletten Inhalt des zugehörigen Requests, inklusive aller Parameter. Getrennt durch Semikolon folgt der Kommandostatus.

Anmerkung: Derzeit kann nur ein Export pro Workstation angestoßen werden. Erst nach Beenden bzw. Abbruch ist ein neuer Export möglich.

Kommando: cmd=export

Schlüsselwort Beschreibung
begin=<TS.ms>
end=<TS.ms>
name=<String> Exportname enthält den kompletten Pfad des Exportordners und den Exportnamen
source=<Kameraname1>[,Kameraname2] Angabe der Quellen (Kameras)
username=<string> Angabe des Usernamen
password=<string> Angabe des Passworts (optional).
userdata=<string> Benutzerdaten (optional)

BEISPIEL

cmd=export;begin=1345466282;end=1345466283;name=D:\\_DATA\\PVSS\\Video\\ Video_Framework\\VIDEO_FW\\data\\ausgabevideo\\normal\\Testexport_01; source=Camera_00004,Camera_00005,Camera_00006,Camera_00007

Antwort auf *.object.command.response:

cmd=export;begin=1345466282;end=1345466283;name=D:\\_DATA\\PVSS\\Video \\Video_Framework\\VIDEO_FW\\data\\ausgabevideo\\normal\\Testexport_01; source=Camera_00004,Camera_00005, Camera_00006,Camera_00007;answer=ok

Im Fehlerfall steht statt des Strings "answer=ok" ein Parameter "answer" mit folgenden möglichen Werten:

  • not connected - es besteht keine Verbindung zum vimacc OA System

  • missing mandatory parameter - ein benötigter Parameter fehlt beim Kommando

  • duplicate export name - ein Export mit diesem Namen ist schon aktiv

Kommando: cmd=dirinfo

Das Kommando veranlasst den Exportserver das angegebene Verzeichnis nach vorhandenen Exports zu durchsuchen. Er liefert für jeden Export folgende Informationen zurück:

  • Name des Exports.

  • Zeitpunkt der letzten Änderung.

  • Gesamtgröße des Exports in Bytes.

  • frühester Zeitpunkt für den eine Aufzeichnung existiert.

  • spätester Zeitpunkt für den eine Aufzeichnung existiert.

Da zu einem Export nachträglich Daten hinzugefügt werden können, wäre die Angabe der Startzeit des Exports nicht notwendigerweise eindeutig. Daher wird der Zeitpunkt der letzten Änderung zurückgegeben. Alle Zeiten werden in Sekunden seit dem 1.1.1970 angegeben.

Es kann immer nur ein dirinfo-Kommando aktiv sein. Ein weiteres wird erst angenommen, wenn das vorherige Kommando beendet wurde.

Schlüsselwort Beschreibung
path=<export path> Name eines Verzeichnisses relativ zum Export-Server, das nach Exports durchsucht werden soll.

BEISPIEL

cmd=dirinfo;path=D:\\DATA\\normal

Antwort auf *.object.command.response:

cmd=dirinfo;path=[<exportpath>];answer=ok;dirinfo=[<exportname1>, <moddate1>,<exportsize1>,<starttime1>,<endtime1>][<exportname2>, <moddate2>,<exportsize2>,<starttime2>,<endtime2>][...

Im Fehlerfall steht statt "answer=ok" der Parameter "answer" mit folgenden möglichen Werten:

  • not connected - es besteht keine Verbindung zum vimacc OA System

  • mussing mandatory parameter - ein benötigter Parameter fehlt beim Kommando

Kommando: cmd=strip

Mit diesem Kommando können Aufträge aus der Statusinformation gelöscht werden. Es können nur Aufträge gelöscht werden, die nicht mehr laufen (Exportfortschritt 100 oder -1).

Die Angabe des Parameters "name" ist optional. Ohne Parameter löscht das Kommando alle beendeten Exportvorgänge aus der Liste.

Schlüsselwort Beschreibung
name=<string> Name des Exports der aus der Liste entfernt werden soll

BEISPIEL

cmd=strip;name=D:\\_DATA\\normal\\Testexport_01

Antwort auf *.object.command.response:

cmd=strip;name= D:\\_DATA\\normal\\Testexport_01;answer=strip done

Kommando: cmd=cancel

Der Export auf diesen Pfad wird abgebrochen. Die Daten verbleiben aber bis zur Löschung durch ein "strip" Kommando in der active-Liste der Exportvorgänge.

Schlüsselwort Beschreibung
name=<string> Name des Exports der gestoppt werden soll.

BEISPIEL

cmd=cancel;name=D:\\_DATA\\normal\\Testexport_01

Antwort auf *.object.command.response:

cmd=cancel;name= D:\\_DATA\\normal\\Testexport_01;answer=cancel done

Export Statusmeldungen (VIDEO_OA_WORKSTATION.exportServer.object.device.state)

Schlüsselwort Beschreibung
state=<ok|error>;

Zustände:

  • ok: Gerät ist betriebsbereit bzw. TCP-Verbindung zum Exportserver ist aufgebaut.

  • error: Gerät ist nicht betriebsbereit, z.B. TCP-Verbindung zum Exportserver konnte nicht aufgebaut werden.

active=[

<Name_1>,<Startime_1>,<Endtime_1>,<Restzeit in Sekunden|-1>,<Fortschritt in %|-1>,

<Kameraname1>:<Fortschritt in %>[,Kameraname2:<Fortschritt in %>] [,Kameraname..]][

<Name_2>,<Startime_1>,<Endtime_1>,< Restzeit in Sekunden|-1 >,<Fortschritt in %|-1>,

<Kameraname1>:<Fortschritt in %> [,Kameraname2:<Fortschritt in %>] [,Kameraname..];

<Name_...>,<Startime_...>,<Endtime_...>,< Restzeit in Sekunden|-1 >,<Fortschritt in %|-1>,

<Kameraname1:<Fortschritt in %>>[,Kameraname2] [,Kameraname..]];

]

Vom Treiber wird automatisch der aktuelle Exportstatus des Exportservers abgebildet.

  • Name_<nr>: Exportname inklusive Zielpfad z.B. /home/export/TEST_1

  • Startime: Zeitpunkt ab welchem exportiert wird

  • Endtime Zeitpunkt bis zu welchem exportiert wird

    Hinweis:

    Start- und Endzeit werden analog zu anderen Objekten in Sekunden seit 01.01.1970 1:00 angegeben.

  • Restzeit in Sekunden: -1 in der Restzeit des Exports bedeutet, dass der Exportauftrag durch den Benutzer abgebrochen wurde.

  • Kameraname_<nr>: Datenpunktname der Kamera z.B. Camera_0005

  • Fortschritt in%:

    • -1 in der prozentualen Fortschrittsanzeige des Exports bedeutet, dass der Exportauftrag für mindestens eine Kamera nicht vollständig ausgeführt werden konnte. Die prozentuale Fortschrittsanzeige der betroffenen Kamera zeigt dabei an, wie viel Prozent des Auftrages ausgeführt werden konnten.

    • -1 in der prozentualen Fortschrittsanzeige einer Kamera bedeutet, dass der Exportauftrag für diese Kamera nicht ausgeführt werden konnte.

    • -2 in der prozentualen Fortschrittsanzeige einer Kamera bedeutet, dass für diese Kamera keine Aufzeichnungen im angeforderten Zeitraum existieren.

    • -1 in der prozentualen Fortschrittsanzeige des Exports und der aller Kameras bedeutet, dass der Exportauftrag nicht gestartet werden konnte.

BEISPIEL

active=[D:\\_DATA\\PVSS\\Video\\Video_Framework\\VIDEO_FW\\data\\ausgabevideo

\\normal\\Export_1,1345458627,1345468527,2333,88,Camera_00004:100,

Camera_00003:70][D:\\_DATA\\PVSS\\Video\\Video_Framework\\VIDEO_FW\\data\\

ausgabevideo\\normal\\Export_2,1345458627,1345468527,245,78,Camera_00008:78, Camera_00009:0];

Anmerkung: Exportaufträge bleiben im Status erhalten bis sie über ein strip-Kommando gelöscht werden.