Auxiliary
This section describes how the driver manages auxiliary commands, such as an infrared (IR) lamp, a heater, a wiper or a washer. There are two possible options for using Aux commands – Aux Commands in the Device Service and Aux Commands in the PTZ Service.
Aux Commands in the Device Service are retrieved using the commands GetServices or GetServiceCapabilities.<GetServicesResponse xmlns="http://www.onvif.org/ver10/device/wsdl"> <Service> <Namespace>http://www.onvif.org/ver10/device/wsdl</Namespace> <XAddr>http://172.32.1.12:1081/onvif/device_service</XAddr> <Capabilities> <Capabilities> <Network ZeroConfiguration="true" NTP="1"/> <Security HttpDigest="true" MaxUserNameLength="60" MaxPasswordLength="20"/> <System DiscoveryBye="true"/> <Misc AuxiliaryCommands="tt:Wiper|On tt:Wiper|Off tt:Washer|On tt:Washer|Off tt:WashingProcedure|On tt:WashingProcedure|Off tt:IRLamp|On tt:IRLamp|Off tt:IRLamp|Auto"/> </Capabilities> </Capabilities> ... </Service> ... </GetServicesResponse>
When Aux Commands are detected in the Device Service capabilities, they are sent using the SendAuxiliaryCommand on user request.
Note: Aux Commands from the Device Service are supported in the ONVIF driver since Device Pack 10.3.
Note: Aux Commands in the PTZ Service have higher priority. This means that if the device has PTZ Service, Aux commands will be used from that service.
For PTZ Aux commands to be recognized by the driver, the PTZ must be enabled in the Management Client. On the first PTZ command no matter which one, the GetNode request is sent to the device. The Response contains all auxiliary commands that are supported by the device.
<env:Body> <tptz:GetNodeResponse> <tptz:PTZNode token="PTZNODETOKEN"> ... <tt:AuxiliaryCommands>tt:Wiper|On</tt:AuxiliaryCommands> <tt:AuxiliaryCommands>tt:Wiper|Off</tt:AuxiliaryCommands> </tptz:PTZNode> </tptz:GetNodeResponse> </env:Body>
The maximum auxiliary commands that the driver can support are 8. For each auxiliary there are three buttons assigned – “Aux N on”, “Aux N off” and “Aux N on while pressing”. In the example above, “Wiper|On” and “Wiper|Off” will be assigned to Aux 1 On button and Aux 1 Off button in the Smart Client and are counted as one auxiliary command.
Types of commands that the driver accepts are assigned to the Aux buttons in the Smart Client:
Auxiliary commands |
Example |
✓ |
✓ |
---|---|---|---|
AuxiliaryData | On |
Wiper|On |
Button -> Aux 1 on Button -> Aux 1 off Button -> Aux 1 on while pressing |
Wiper|On Wiper|Off Wiper|On and Wiper|Off |
AuxiliaryData | Off |
Wiper|Off |
Button -> Aux 1 on Button -> Aux 1 off Button -> Aux 1 on while pressing |
Wiper|On Wiper|Off Wiper|On and Wiper|Off |
AuxiliaryData |
Defog |
Button -> Aux 1 on Button -> Aux 1 on while pressing |
Defog Defog |
AuxiliaryData | Auto |
Wiper|Auto |
Button -> Aux 1 on Button -> Aux 1 on while pressing |
Wiper|Auto Wiper|Auto |
If command contains symbol “|” followed by “On” or “Off” (e.g., “Wiper|On” or e.g. “Wiper|Off”) 2 buttons will be mapped (“Aux 1 On” and “Aux 1 Off”)
If command does not contain symbol “|” (e.g., “Defog”) only one button will be mapped (“Aux 1 On”). The Aux Off button will not be mapped.
If command contains symbol “|” and something different than “On” and “Off” (e.g., “Wiper|Auto”) only one button will be mapped (“Aux 1 On”). The Aux Off button will not be mapped.
Buttons that are not mapped (e.g., “Aux 1 Off” when Auxiliary command is “Wiper|Auto”), when pressed will not send command to the device.