ICD-001 Camera Command

Introduction

This page covers the ICD-001 Camera Command.

Contents



Camera Command Example

<!—MsgId is the unique id of the message being sent --> <!—CommandType defines the type of action required --> <!—CameraId is the unique id of the camera being controlled --> <?xml version="1.0" encoding="utf-8"?> <CameraCommand xmlns=”http://navtechradar.com/CameraCommand” xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance" MsgId="21" MsgTimeStamp="2012-02-14T11:23:15" CommandType="ManualOverride" CameraId="2"> <!-- The sender element is optional --> <Sender SenderId ="XFSControlSuite:1" NetworkAddress="192.168.24.5" NetworkPort ="2077"/> </CameraCommand>

Camera Command Element

The camera command instruction provides a series of messages to control one or more cameras. Currently there is only one message types. Descriptions and examples are provided in this section.

Camera Command Attributes

Attributes

Description

Type

Notes

MsgId

Unique message Id

Long

This must be globally unique across all message types 

MsgTimeStamp

Date and time that the message was sent

DateTime



CommandType


 

Type of Camera Command: 

ManualOverride - tells Witness to suspend automatic control of a camera

CameraCommandTypeList



CameraId

Id of the camera which is the target for this message

Int

This must match the configured User Id for the target camera in Witness

ExternalCameraId

External Id of the camera which is the target for this message

string

This must match the configured External Id for the target camera in Witness, if this is present the system ignores CameraId

Payload Element

The payload carries data specific to a command. Each command that requires a payload is detailed in this document and each of the payload elements is included within the appropriate XSD.

The payload is reserved for future use and has not yet been implemented for the camera command instruction.

Network Sender Element

Each incoming message can include an optional Sender element. This must include the IP address and port that the client is using to send instructions.

If the Sender element is included the NetworkAddress value will be checked against the subscriber IP address and the command rejected if they do not match. 

In addition the Sender element is included in the Command Reply. This is a duplicate of the incoming details (i.e. the subscribers IP address and port). The subscriber can use this to verify that they authored the message.

Manual Override

This command will inform Witness that an external operator or system is taking control of a camera. When Witness receives this command it will suspend automatic control of the specified camera.

This command should be sent repeatedly whilst the external system requires to maintain control of the camera.

When Witness receives this command it starts a timer. The duration of this timer is set within the Witness configuration, but by default it is 10 seconds. If another command is not received before this timer expires then Witness will resume automatic control. 

So this command must be sent at an interval which is less than the configured timeout. Assuming the timeout is 10 seconds we would recommend sending a command every 2 seconds whilst the external system requires control of the camera.

To avoid excessive load on the camera controller it is not recommended to send this command more than once a second.


 

Safety is everything.