Using the IndigoVision Plugin
The IndigoVision Plugin
Witness Canary supports integration with many different types of external systems through the use of plugins. These are stand-alone software libraries which are dynamically loaded by Canary and contain code which knows how to convert the Witness data into the required format for the external system.
The IndigoVision plugin file is entitled Witness.Plugin.IndigoVision.dll and must be present in the Witness Plugin folder which is inside the main application folder. The plugin depends on one third party file, ivbind2.dll, which must be placed in the main application folder and registered on the system by running the command "regsvr32 ivbind2.dll" from an administrator command prompt.
The plugin can be selected during setup and will automatically install the files in the correct locations and register the support dll.
Configuring the IndigoVision Plugin
When the plugin is installed and Canary starts, the plugin configuration settings are saved to the PluginConfiguration.xml file. This file is located in the Witness main application folder. To change the settings this file should be opened in a text editor, such as Notepad, however we would recommend an editor which is XML aware, such as Notepad++.
Once the file is open, locate the IndigoVision section, as illustrated below:
<?xml version="1.0" encoding="utf-8"?> <Config> <Plugins> <IndigoVision> <PluginConfig> <AlarmServerIp>10.0.6.12</AlarmServerIp> <LocalIp>10.0.7.49</LocalIp> <NotificationUpdatePeriod>10</NotificationUpdatePeriod> <NVRCameras> <NVRCamera NVR="10.0.6.12"> <Cameras> <String>iv://10.0.0.1</String> <String>iv://10.0.0.2</String> </Cameras> </NVRCamera> </NVRCameras> <HeartbeatInterval>0</HeartbeatInterval> </PluginConfig> </IndigoVision> </Plugins> </Config>
Once you have made changes to the plugin configuration file then you must restart the Canary application / service for the new settings to be applied. No other modules need to be restarted.
The setting options are as follows:
AlarmServerIp
The address of the Indigo vision alarm server that will receive the bookmark messages
LocalIp
The address that Canary will be sending the messages from
NotificationUpdatePeriod
The period in seconds between subsequent events for the same camera being sent to Control Center
NVRCameras
A list of IndigoVision NVRs and the associated cameras
NVRCamera
A single NVR and the cameras that we wish to link to Witness. Multiple NVRCamera elements can be used within NVRCameras if Canary needs to communicate with more than one Control Center
NVR
The address of the NVR instance
Cameras
A list of cameras that we wish to link to Witness. The string value is the Service ID of the camera as it is configured within Control Center
The form of the string value can change depending on the type of camera. Certain camera names will take the form of a UUID (e.g. uuid:c9790c3a-701b-464d-a189-0060351de567) others will take the form based on their IP address (e.g. iv://192.168.0.10).
The Service ID can be found via the Video Explorer and selecting the appropriate camera. The Service ID is displayed in the camera properties panel.
HeartbeatInterval
Not currently used
Configuring Control Center
- Open the IndigoVision Control Center.
- On the Alarms Explorer panel click on the Top Site item and go to the External Systems tab.
- Right click on the External System panel and select New External System.
- Enter the details for the Witness system and press OK.
If no Alarm Servers have been configured add one by right clicking on the Top Site and selecting Add Devices...
If the Alarm Server is not discovered add the details
- Add zones to the alarm server if none are configured
Right click on the zone you wish to be triggered by a camera movement and select New Detector...
Ensure that the selected Activation Event Type is set to External
Select the External System that was configured earlier and select the appropriate Input Number.
The Input Number corresponds to the Camera User Id within Witness
Set the Dwell Time and click Next to review and save the Detector
Canary will send a movement event whilst the camera is being moved at the interval specified by the NotificationUpdatePeriod in the Plugin config file. As the events are momentary it is recommended to set the dwell time to a period greater than the NotificationUpdatePeriod to prevent alarms continually being reactivated whilst Witness controls the camera.
Add a NVR to Control Center if one has not already been added. Right click on the Top Site and select Add Devices...
There will be a slight delay of around 10 seconds after adding the NVR until it becomes available to use.
- Click on the Bookmarks tag of the NVR and the bookmarks sent from Canary should be visible.
Configuring Witness
After a camera has been configured in Witness the following fields need to be edited to align the configuration with Control Center
User ID
The Input number that will be assigned to Alarm Server Detectors to trigger alarms with the Control Center.
External System ID
The camera System Id as configured within Control Center. This is used to apply bookmarks to the camera recording feed in Control Center when the camera responds to an alarm within Witness.
Related articles