...
The period (in seconds) after no new alarm updates have been received that will cause the virtual input open command to be sent to BVMS.
...
Configuring BVMS
- Open the BVMS Config Client
- Add at least one Virtual Input
- Add a client script to capture and process the alarm data from the BVMS plugin
- Right click on the ClientScript node and click New Scriptlet
Replace the Scriptlet with the following code
Panel Code Block language c# theme RDark title Example BVMS ClientScript collapse true using System.Text; public void WorkstationLogon() { System.Threading.Thread.Sleep(3000);//wait till logged in has been processed try { RemoteServerApi RSApi= new RemoteServerApi("localhost:5390","admin","");// connect to the server MyEventReceiver myRec= new MyEventReceiver(Api); //Api is the current Client Api, hand over to the EventReceiver Instance RSApi.EventManager.Register(myRec);//register for all Events } catch (Exception eq) { Api.ApplicationManager.ShowMessage("Error in Logon Script " + eq.ToString()); } Api.ApplicationManager.ShowMessage("logon finished"); } public class MyEventReceiver:EventReceiver { private IClientApi MyApi; static StringBuilder ViString; public MyEventReceiver(IClientApi api) { MyApi=api; ViString= new StringBuilder(); } public override void OnEvent(EventData e) { ViString.Clear(); if (e.Type=="DataInputEvent") //intercept when virtual input data is received { //show the exect data presented via the Virtual Input on the operator station // Here is the Navtech info format ViString.Append("Received Data from Navtech Radar:"); ViString.AppendLine(); ViString.Append("IncidentCamera: "); ViString.Append(e["Data1"]); ViString.AppendLine(); ViString.Append("TargetID: "); ViString.Append(e["Data2"]); ViString.AppendLine(); ViString.Append("Alarm Description: "); ViString.Append(e["Data3"]); ViString.AppendLine(); ViString.Append("Target Classification: "); ViString.Append(e["Data4"]); ViString.AppendLine(); ViString.Append("Target Speed: "); ViString.Append(e["Data5"]); //Uncomment the following line to show the incoming data //MyApi.ApplicationManager.ShowMessage(ViString.ToString()); MyApi.ContentManager.SetGranularity(1,1); Camera c= MyApi.CameraManager.GetCameraByLogicalNumber(int.Parse(e["Data1"])); ImagePane p=new ImagePane(1,int.Parse(e["Data1"])); MyApi.ContentManager.EnterFullscreen(1); MyApi.ContentManager.DisplayCamera(p,c); //show camera full screen on Monitor 1 } } }
Note The preceding code is for testing purposes only. It will force the the camera stream associated with the incoming Witness alarm data full screen every time the message is received.
- Assign the script to the workstation
- Save the config and activate the configuration
...
Related articles
Filter by label (Content by label) | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Page Properties | ||
---|---|---|
| ||
|
...
...