.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "ONVIF::Device::Interfaces::Device::DevicePort 3pm" .TH ONVIF::Device::Interfaces::Device::DevicePort 3pm "2022-09-24" "perl v5.32.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ONVIF::Device::Interfaces::Device::DevicePort \- SOAP Interface for the Device Web Service .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& use ONVIF::Device::Interfaces::Device::DevicePort; \& my $interface = ONVIF::Device::Interfaces::Device::DevicePort\->new(); \& \& my $response; \& $response = $interface\->GetServices(); \& $response = $interface\->GetServiceCapabilities(); \& $response = $interface\->GetDeviceInformation(); \& $response = $interface\->SetSystemDateAndTime(); \& $response = $interface\->GetSystemDateAndTime(); \& $response = $interface\->SetSystemFactoryDefault(); \& $response = $interface\->UpgradeSystemFirmware(); \& $response = $interface\->SystemReboot(); \& $response = $interface\->RestoreSystem(); \& $response = $interface\->GetSystemBackup(); \& $response = $interface\->GetSystemLog(); \& $response = $interface\->GetSystemSupportInformation(); \& $response = $interface\->GetScopes(); \& $response = $interface\->SetScopes(); \& $response = $interface\->AddScopes(); \& $response = $interface\->RemoveScopes(); \& $response = $interface\->GetDiscoveryMode(); \& $response = $interface\->SetDiscoveryMode(); \& $response = $interface\->GetRemoteDiscoveryMode(); \& $response = $interface\->SetRemoteDiscoveryMode(); \& $response = $interface\->GetDPAddresses(); \& $response = $interface\->GetEndpointReference(); \& $response = $interface\->GetRemoteUser(); \& $response = $interface\->SetRemoteUser(); \& $response = $interface\->GetUsers(); \& $response = $interface\->CreateUsers(); \& $response = $interface\->DeleteUsers(); \& $response = $interface\->SetUser(); \& $response = $interface\->GetWsdlUrl(); \& $response = $interface\->GetCapabilities(); \& $response = $interface\->SetDPAddresses(); \& $response = $interface\->GetHostname(); \& $response = $interface\->SetHostname(); \& $response = $interface\->SetHostnameFromDHCP(); \& $response = $interface\->GetDNS(); \& $response = $interface\->SetDNS(); \& $response = $interface\->GetNTP(); \& $response = $interface\->SetNTP(); \& $response = $interface\->GetDynamicDNS(); \& $response = $interface\->SetDynamicDNS(); \& $response = $interface\->GetNetworkInterfaces(); \& $response = $interface\->SetNetworkInterfaces(); \& $response = $interface\->GetNetworkProtocols(); \& $response = $interface\->SetNetworkProtocols(); \& $response = $interface\->GetNetworkDefaultGateway(); \& $response = $interface\->SetNetworkDefaultGateway(); \& $response = $interface\->GetZeroConfiguration(); \& $response = $interface\->SetZeroConfiguration(); \& $response = $interface\->GetIPAddressFilter(); \& $response = $interface\->SetIPAddressFilter(); \& $response = $interface\->AddIPAddressFilter(); \& $response = $interface\->RemoveIPAddressFilter(); \& $response = $interface\->GetAccessPolicy(); \& $response = $interface\->SetAccessPolicy(); \& $response = $interface\->CreateCertificate(); \& $response = $interface\->GetCertificates(); \& $response = $interface\->GetCertificatesStatus(); \& $response = $interface\->SetCertificatesStatus(); \& $response = $interface\->DeleteCertificates(); \& $response = $interface\->GetPkcs10Request(); \& $response = $interface\->LoadCertificates(); \& $response = $interface\->GetClientCertificateMode(); \& $response = $interface\->SetClientCertificateMode(); \& $response = $interface\->GetRelayOutputs(); \& $response = $interface\->SetRelayOutputSettings(); \& $response = $interface\->SetRelayOutputState(); \& $response = $interface\->SendAuxiliaryCommand(); \& $response = $interface\->GetCACertificates(); \& $response = $interface\->LoadCertificateWithPrivateKey(); \& $response = $interface\->GetCertificateInformation(); \& $response = $interface\->LoadCACertificates(); \& $response = $interface\->CreateDot1XConfiguration(); \& $response = $interface\->SetDot1XConfiguration(); \& $response = $interface\->GetDot1XConfiguration(); \& $response = $interface\->GetDot1XConfigurations(); \& $response = $interface\->DeleteDot1XConfiguration(); \& $response = $interface\->GetDot11Capabilities(); \& $response = $interface\->GetDot11Status(); \& $response = $interface\->ScanAvailableDot11Networks(); \& $response = $interface\->GetSystemUris(); \& $response = $interface\->StartFirmwareUpgrade(); \& $response = $interface\->StartSystemRestore(); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1SOAP\s0 Interface for the Device web service located at http://www.examples.com/Device/. .SH "SERVICE Device" .IX Header "SERVICE Device" .SS "Port DevicePort" .IX Subsection "Port DevicePort" .SH "METHODS" .IX Header "METHODS" .SS "General methods" .IX Subsection "General methods" \fInew\fR .IX Subsection "new" .PP Constructor. .PP All arguments are forwarded to SOAP::WSDL::Client. .SS "\s-1SOAP\s0 Service methods" .IX Subsection "SOAP Service methods" Method synopsis is displayed with hash refs as parameters. .PP The commented class names in the method's parameters denote that objects of the corresponding class can be passed instead of the marked hash ref. .PP You may pass any combination of objects, hash and list refs to these methods, as long as you meet the structure. .PP List items (i.e. multiple occurrences) are not displayed in the synopsis. You may generally pass a list ref of hash refs (or objects) instead of a hash ref \- this may result in invalid \s-1XML\s0 if used improperly, though. Note that \&\s-1SOAP::WSDL\s0 always expects list references at maximum depth position. .PP \&\s-1XML\s0 attributes are not displayed in this synopsis and cannot be set using hash refs. See the respective class' documentation for additional information. .PP \fIGetServices\fR .IX Subsection "GetServices" .PP Returns information about services on the device. .PP Returns a ONVIF::Device::Elements::GetServicesResponse object. .PP .Vb 4 \& $response = $interface\->GetServices( { \& IncludeCapability => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetServiceCapabilities\fR .IX Subsection "GetServiceCapabilities" .PP Returns the capabilities of the device service. The result is returned in a typed answer. .PP Returns a ONVIF::Device::Elements::GetServiceCapabilitiesResponse object. .PP .Vb 3 \& $response = $interface\->GetServiceCapabilities( { \& },, \& ); .Ve .PP \fIGetDeviceInformation\fR .IX Subsection "GetDeviceInformation" .PP This operation gets basic device information from the device. .PP Returns a ONVIF::Device::Elements::GetDeviceInformationResponse object. .PP .Vb 3 \& $response = $interface\->GetDeviceInformation( { \& },, \& ); .Ve .PP \fISetSystemDateAndTime\fR .IX Subsection "SetSystemDateAndTime" .PP The DayLightSavings flag should be set to true to activate any \s-1DST\s0 settings of the TimeZone string. Clear the DayLightSavings flag if the \s-1DST\s0 portion of the TimeZone settings should be ignored. .PP Returns a ONVIF::Device::Elements::SetSystemDateAndTimeResponse object. .PP .Vb 10 \& $response = $interface\->SetSystemDateAndTime( { \& DateTimeType => $some_value, # SetDateTimeType \& DaylightSavings => $some_value, # boolean \& TimeZone => { # ONVIF::Device::Types::TimeZone \& TZ => $some_value, # token \& }, \& UTCDateTime => { # ONVIF::Device::Types::DateTime \& Time => { # ONVIF::Device::Types::Time \& Hour => $some_value, # int \& Minute => $some_value, # int \& Second => $some_value, # int \& }, \& Date => { # ONVIF::Device::Types::Date \& Year => $some_value, # int \& Month => $some_value, # int \& Day => $some_value, # int \& }, \& }, \& },, \& ); .Ve .PP \fIGetSystemDateAndTime\fR .IX Subsection "GetSystemDateAndTime" .PP .Vb 1 \& A device shall provide the UTCDateTime information. .Ve .PP Returns a ONVIF::Device::Elements::GetSystemDateAndTimeResponse object. .PP .Vb 3 \& $response = $interface\->GetSystemDateAndTime( { \& },, \& ); .Ve .PP \fISetSystemFactoryDefault\fR .IX Subsection "SetSystemFactoryDefault" .PP This operation reloads the parameters on the device to their factory default values. .PP Returns a ONVIF::Device::Elements::SetSystemFactoryDefaultResponse object. .PP .Vb 4 \& $response = $interface\->SetSystemFactoryDefault( { \& FactoryDefault => $some_value, # FactoryDefaultType \& },, \& ); .Ve .PP \fIUpgradeSystemFirmware\fR .IX Subsection "UpgradeSystemFirmware" .PP This operation upgrades a device firmware version. After a successful upgrade the response message is sent before the device reboots. The device should support firmware upgrade through the UpgradeSystemFirmware command. The exact format of the firmware data is outside the scope of this standard. .PP Returns a ONVIF::Device::Elements::UpgradeSystemFirmwareResponse object. .PP .Vb 7 \& $response = $interface\->UpgradeSystemFirmware( { \& Firmware => { # ONVIF::Device::Types::AttachmentData \& Include => { # ONVIF::Device::Types::Include \& }, \& }, \& },, \& ); .Ve .PP \fISystemReboot\fR .IX Subsection "SystemReboot" .PP This operation reboots the device. .PP Returns a ONVIF::Device::Elements::SystemRebootResponse object. .PP .Vb 3 \& $response = $interface\->SystemReboot( { \& },, \& ); .Ve .PP \fIRestoreSystem\fR .IX Subsection "RestoreSystem" .PP This operation restores the system backup configuration files(s) previously retrieved from a device. The device should support restore of backup configuration file(s) through the RestoreSystem command. The exact format of the backup configuration file(s) is outside the scope of this standard. If the command is supported, it shall accept backup files returned by the GetSystemBackup command. .PP Returns a ONVIF::Device::Elements::RestoreSystemResponse object. .PP .Vb 10 \& $response = $interface\->RestoreSystem( { \& BackupFiles => { # ONVIF::Device::Types::BackupFile \& Name => $some_value, # string \& Data => { # ONVIF::Device::Types::AttachmentData \& Include => { # ONVIF::Device::Types::Include \& }, \& }, \& }, \& },, \& ); .Ve .PP \fIGetSystemBackup\fR .IX Subsection "GetSystemBackup" .PP This operation is retrieves system backup configuration file(s) from a device. The device should support return of back up configuration file(s) through the GetSystemBackup command. The backup is returned with reference to a name and mime-type together with binary data. The exact format of the backup configuration files is outside the scope of this standard. .PP Returns a ONVIF::Device::Elements::GetSystemBackupResponse object. .PP .Vb 3 \& $response = $interface\->GetSystemBackup( { \& },, \& ); .Ve .PP \fIGetSystemLog\fR .IX Subsection "GetSystemLog" .PP This operation gets a system log from the device. The exact format of the system logs is outside the scope of this standard. .PP Returns a ONVIF::Device::Elements::GetSystemLogResponse object. .PP .Vb 4 \& $response = $interface\->GetSystemLog( { \& LogType => $some_value, # SystemLogType \& },, \& ); .Ve .PP \fIGetSystemSupportInformation\fR .IX Subsection "GetSystemSupportInformation" .PP This operation gets arbitrary device diagnostics information from the device. .PP Returns a ONVIF::Device::Elements::GetSystemSupportInformationResponse object. .PP .Vb 3 \& $response = $interface\->GetSystemSupportInformation( { \& },, \& ); .Ve .PP \fIGetScopes\fR .IX Subsection "GetScopes" .PP Configurable Fixed scope parameters are permanent device characteristics and cannot be removed through the device management interface. The scope type is indicated in the scope list returned in the get scope parameters response. A device shall support retrieval of discovery scope parameters through the GetScopes command. As some scope parameters are mandatory, the device shall return a non-empty scope list in the response. .PP Returns a ONVIF::Device::Elements::GetScopesResponse object. .PP .Vb 3 \& $response = $interface\->GetScopes( { \& },, \& ); .Ve .PP \fISetScopes\fR .IX Subsection "SetScopes" .PP This operation sets the scope parameters of a device. The scope parameters are used in the device discovery to match a probe message. This operation replaces all existing configurable scope parameters (not fixed parameters). If this shall be avoided, one should use the scope add command instead. The device shall support configuration of discovery scope parameters through the SetScopes command. .PP Returns a ONVIF::Device::Elements::SetScopesResponse object. .PP .Vb 4 \& $response = $interface\->SetScopes( { \& Scopes => $some_value, # anyURI \& },, \& ); .Ve .PP \fIAddScopes\fR .IX Subsection "AddScopes" .PP This operation adds new configurable scope parameters to a device. The scope parameters are used in the device discovery to match a probe message. The device shall support addition of discovery scope parameters through the AddScopes command. .PP Returns a ONVIF::Device::Elements::AddScopesResponse object. .PP .Vb 4 \& $response = $interface\->AddScopes( { \& ScopeItem => $some_value, # anyURI \& },, \& ); .Ve .PP \fIRemoveScopes\fR .IX Subsection "RemoveScopes" .PP This operation deletes scope-configurable scope parameters from a device. The scope parameters are used in the device discovery to match a probe message, see Section 7. The device shall support deletion of discovery scope parameters through the RemoveScopes command. Table .PP Returns a ONVIF::Device::Elements::RemoveScopesResponse object. .PP .Vb 4 \& $response = $interface\->RemoveScopes( { \& ScopeItem => $some_value, # anyURI \& },, \& ); .Ve .PP \fIGetDiscoveryMode\fR .IX Subsection "GetDiscoveryMode" .PP This operation gets the discovery mode of a device. See Section 7.2 for the definition of the different device discovery modes. The device shall support retrieval of the discovery mode setting through the GetDiscoveryMode command. .PP Returns a ONVIF::Device::Elements::GetDiscoveryModeResponse object. .PP .Vb 3 \& $response = $interface\->GetDiscoveryMode( { \& },, \& ); .Ve .PP \fISetDiscoveryMode\fR .IX Subsection "SetDiscoveryMode" .PP This operation sets the discovery mode operation of a device. See Section 7.2 for the definition of the different device discovery modes. The device shall support configuration of the discovery mode setting through the SetDiscoveryMode command. .PP Returns a ONVIF::Device::Elements::SetDiscoveryModeResponse object. .PP .Vb 4 \& $response = $interface\->SetDiscoveryMode( { \& DiscoveryMode => $some_value, # DiscoveryMode \& },, \& ); .Ve .PP \fIGetRemoteDiscoveryMode\fR .IX Subsection "GetRemoteDiscoveryMode" .PP This operation gets the remote discovery mode of a device. See Section 7.4 for the definition of remote discovery extensions. A device that supports remote discovery shall support retrieval of the remote discovery mode setting through the GetRemoteDiscoveryMode command. .PP Returns a ONVIF::Device::Elements::GetRemoteDiscoveryModeResponse object. .PP .Vb 3 \& $response = $interface\->GetRemoteDiscoveryMode( { \& },, \& ); .Ve .PP \fISetRemoteDiscoveryMode\fR .IX Subsection "SetRemoteDiscoveryMode" .PP This operation sets the remote discovery mode of operation of a device. See Section 7.4 for the definition of remote discovery remote extensions. A device that supports remote discovery shall support configuration of the discovery mode setting through the SetRemoteDiscoveryMode command. .PP Returns a ONVIF::Device::Elements::SetRemoteDiscoveryModeResponse object. .PP .Vb 4 \& $response = $interface\->SetRemoteDiscoveryMode( { \& RemoteDiscoveryMode => $some_value, # DiscoveryMode \& },, \& ); .Ve .PP \fIGetDPAddresses\fR .IX Subsection "GetDPAddresses" .PP This operation gets the remote \s-1DP\s0 address or addresses from a device. If the device supports remote discovery, as specified in Section 7.4, the device shall support retrieval of the remote \s-1DP\s0 address(es) through the GetDPAddresses command. .PP Returns a ONVIF::Device::Elements::GetDPAddressesResponse object. .PP .Vb 3 \& $response = $interface\->GetDPAddresses( { \& },, \& ); .Ve .PP \fIGetEndpointReference\fR .IX Subsection "GetEndpointReference" .PP A client can ask for the device service endpoint reference address property that can be used to derive the password equivalent for remote user operation. The device shall support the GetEndpointReference command returning the address property of the device service endpoint reference. .PP Returns a ONVIF::Device::Elements::GetEndpointReferenceResponse object. .PP .Vb 3 \& $response = $interface\->GetEndpointReference( { \& },, \& ); .Ve .PP \fIGetRemoteUser\fR .IX Subsection "GetRemoteUser" .PP .Vb 1 \& The algorithm to use for deriving the password is described in section 5.12.2.1 of the core specification. .Ve .PP Returns a ONVIF::Device::Elements::GetRemoteUserResponse object. .PP .Vb 3 \& $response = $interface\->GetRemoteUser( { \& },, \& ); .Ve .PP \fISetRemoteUser\fR .IX Subsection "SetRemoteUser" .PP .Vb 1 \& To remove the remote user SetRemoteUser should be called without the RemoteUser parameter. .Ve .PP Returns a ONVIF::Device::Elements::SetRemoteUserResponse object. .PP .Vb 8 \& $response = $interface\->SetRemoteUser( { \& RemoteUser => { # ONVIF::Device::Types::RemoteUser \& Username => $some_value, # string \& Password => $some_value, # string \& UseDerivedPassword => $some_value, # boolean \& }, \& },, \& ); .Ve .PP \fIGetUsers\fR .IX Subsection "GetUsers" .PP This operation lists the registered users and corresponding credentials on a device. The device shall support retrieval of registered device users and their credentials for the user token through the GetUsers command. .PP Returns a ONVIF::Device::Elements::GetUsersResponse object. .PP .Vb 3 \& $response = $interface\->GetUsers( { \& },, \& ); .Ve .PP \fICreateUsers\fR .IX Subsection "CreateUsers" .PP .Vb 1 \& ONVIF compliant devices are recommended to support password length of at least 28 bytes, as clients may follow the password derivation mechanism which results in \*(Aqpassword equivalent\*(Aq of length 28 bytes, as described in section 3.1.2 of the ONVIF security white paper. .Ve .PP Returns a ONVIF::Device::Elements::CreateUsersResponse object. .PP .Vb 10 \& $response = $interface\->CreateUsers( { \& User => { # ONVIF::Device::Types::User \& Username => $some_value, # string \& Password => $some_value, # string \& UserLevel => $some_value, # UserLevel \& Extension => { # ONVIF::Device::Types::UserExtension \& }, \& }, \& },, \& ); .Ve .PP \fIDeleteUsers\fR .IX Subsection "DeleteUsers" .PP This operation deletes users on a device. The device shall support deletion of device users and their credentials through the DeleteUsers command. A device may have one or more fixed users that cannot be deleted to ensure access to the unit. Either all users are deleted successfully or a fault message shall be returned and no users be deleted. .PP Returns a ONVIF::Device::Elements::DeleteUsersResponse object. .PP .Vb 4 \& $response = $interface\->DeleteUsers( { \& Username => $some_value, # string \& },, \& ); .Ve .PP \fISetUser\fR .IX Subsection "SetUser" .PP This operation updates the settings for one or several users on a device for authentication purposes. The device shall support update of device users and their credentials through the SetUser command. Either all change requests are processed successfully or a fault message shall be returned and no change requests be processed. .PP Returns a ONVIF::Device::Elements::SetUserResponse object. .PP .Vb 10 \& $response = $interface\->SetUser( { \& User => { # ONVIF::Device::Types::User \& Username => $some_value, # string \& Password => $some_value, # string \& UserLevel => $some_value, # UserLevel \& Extension => { # ONVIF::Device::Types::UserExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetWsdlUrl\fR .IX Subsection "GetWsdlUrl" .PP It is possible for an endpoint to request a \s-1URL\s0 that can be used to retrieve the complete schema and \s-1WSDL\s0 definitions of a device. The command gives in return a \s-1URL\s0 entry point where all the necessary product specific \s-1WSDL\s0 and schema definitions can be retrieved. The device shall provide a \s-1URL\s0 for \s-1WSDL\s0 and schema download through the GetWsdlUrl command. .PP Returns a ONVIF::Device::Elements::GetWsdlUrlResponse object. .PP .Vb 3 \& $response = $interface\->GetWsdlUrl( { \& },, \& ); .Ve .PP \fIGetCapabilities\fR .IX Subsection "GetCapabilities" .PP Any endpoint can ask for the capabilities of a device using the capability exchange request response operation. The device shall indicate all its \s-1ONVIF\s0 compliant capabilities through the GetCapabilities command. The capability list includes references to the addresses (XAddr) of the service implementing the interface operations in the category. Apart from the addresses, the capabilities only reflect optional functions. .PP Returns a ONVIF::Device::Elements::GetCapabilitiesResponse object. .PP .Vb 4 \& $response = $interface\->GetCapabilities( { \& Category => $some_value, # CapabilityCategory \& },, \& ); .Ve .PP \fISetDPAddresses\fR .IX Subsection "SetDPAddresses" .PP This operation sets the remote \s-1DP\s0 address or addresses on a device. If the device supports remote discovery, as specified in Section 7.4, the device shall support configuration of the remote \s-1DP\s0 address(es) through the SetDPAddresses command. .PP Returns a ONVIF::Device::Elements::SetDPAddressesResponse object. .PP .Vb 11 \& $response = $interface\->SetDPAddresses( { \& DPAddress => { # ONVIF::Device::Types::NetworkHost \& Type => $some_value, # NetworkHostType \& IPv4Address => $some_value, # IPv4Address \& IPv6Address => $some_value, # IPv6Address \& DNSname => $some_value, # DNSName \& Extension => { # ONVIF::Device::Types::NetworkHostExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetHostname\fR .IX Subsection "GetHostname" .PP This operation is used by an endpoint to get the hostname from a device. The device shall return its hostname configurations through the GetHostname command. .PP Returns a ONVIF::Device::Elements::GetHostnameResponse object. .PP .Vb 3 \& $response = $interface\->GetHostname( { \& },, \& ); .Ve .PP \fISetHostname\fR .IX Subsection "SetHostname" .PP A device shall accept string formatted according to \s-1RFC 1123\s0 section 2.1 or alternatively to \s-1RFC 952,\s0 other string shall be considered as invalid strings. .PP Returns a ONVIF::Device::Elements::SetHostnameResponse object. .PP .Vb 4 \& $response = $interface\->SetHostname( { \& Name => $some_value, # token \& },, \& ); .Ve .PP \fISetHostnameFromDHCP\fR .IX Subsection "SetHostnameFromDHCP" .PP This operation controls whether the hostname is set manually or retrieved via \s-1DHCP.\s0 .PP Returns a ONVIF::Device::Elements::SetHostnameFromDHCPResponse object. .PP .Vb 4 \& $response = $interface\->SetHostnameFromDHCP( { \& FromDHCP => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetDNS\fR .IX Subsection "GetDNS" .PP This operation gets the \s-1DNS\s0 settings from a device. The device shall return its \s-1DNS\s0 configurations through the GetDNS command. .PP Returns a ONVIF::Device::Elements::GetDNSResponse object. .PP .Vb 3 \& $response = $interface\->GetDNS( { \& },, \& ); .Ve .PP \fISetDNS\fR .IX Subsection "SetDNS" .PP This operation sets the \s-1DNS\s0 settings on a device. It shall be possible to set the device \s-1DNS\s0 configurations through the SetDNS command. .PP Returns a ONVIF::Device::Elements::SetDNSResponse object. .PP .Vb 10 \& $response = $interface\->SetDNS( { \& FromDHCP => $some_value, # boolean \& SearchDomain => $some_value, # token \& DNSManual => { # ONVIF::Device::Types::IPAddress \& Type => $some_value, # IPType \& IPv4Address => $some_value, # IPv4Address \& IPv6Address => $some_value, # IPv6Address \& }, \& },, \& ); .Ve .PP \fIGetNTP\fR .IX Subsection "GetNTP" .PP This operation gets the \s-1NTP\s0 settings from a device. If the device supports \s-1NTP,\s0 it shall be possible to get the \s-1NTP\s0 server settings through the GetNTP command. .PP Returns a ONVIF::Device::Elements::GetNTPResponse object. .PP .Vb 3 \& $response = $interface\->GetNTP( { \& },, \& ); .Ve .PP \fISetNTP\fR .IX Subsection "SetNTP" .PP Changes to the \s-1NTP\s0 server list will not affect the clock mode DateTimeType. Use SetSystemDateAndTime to activate \s-1NTP\s0 operation. .PP Returns a ONVIF::Device::Elements::SetNTPResponse object. .PP .Vb 12 \& $response = $interface\->SetNTP( { \& FromDHCP => $some_value, # boolean \& NTPManual => { # ONVIF::Device::Types::NetworkHost \& Type => $some_value, # NetworkHostType \& IPv4Address => $some_value, # IPv4Address \& IPv6Address => $some_value, # IPv6Address \& DNSname => $some_value, # DNSName \& Extension => { # ONVIF::Device::Types::NetworkHostExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetDynamicDNS\fR .IX Subsection "GetDynamicDNS" .PP This operation gets the dynamic \s-1DNS\s0 settings from a device. If the device supports dynamic \s-1DNS\s0 as specified in [\s-1RFC 2136\s0] and [\s-1RFC 4702\s0], it shall be possible to get the type, name and \s-1TTL\s0 through the GetDynamicDNS command. .PP Returns a ONVIF::Device::Elements::GetDynamicDNSResponse object. .PP .Vb 3 \& $response = $interface\->GetDynamicDNS( { \& },, \& ); .Ve .PP \fISetDynamicDNS\fR .IX Subsection "SetDynamicDNS" .PP This operation sets the dynamic \s-1DNS\s0 settings on a device. If the device supports dynamic \s-1DNS\s0 as specified in [\s-1RFC 2136\s0] and [\s-1RFC 4702\s0], it shall be possible to set the type, name and \s-1TTL\s0 through the SetDynamicDNS command. .PP Returns a ONVIF::Device::Elements::SetDynamicDNSResponse object. .PP .Vb 6 \& $response = $interface\->SetDynamicDNS( { \& Type => $some_value, # DynamicDNSType \& Name => $some_value, # DNSName \& TTL => $some_value, # duration \& },, \& ); .Ve .PP \fIGetNetworkInterfaces\fR .IX Subsection "GetNetworkInterfaces" .PP This operation gets the network interface configuration from a device. The device shall support return of network interface configuration settings as defined by the NetworkInterface type through the GetNetworkInterfaces command. .PP Returns a ONVIF::Device::Elements::GetNetworkInterfacesResponse object. .PP .Vb 3 \& $response = $interface\->GetNetworkInterfaces( { \& },, \& ); .Ve .PP \fISetNetworkInterfaces\fR .IX Subsection "SetNetworkInterfaces" .PP .Vb 1 \& For interoperability with a client unaware of the IEEE 802.11 extension a device shall retain its IEEE 802.11 configuration if the IEEE 802.11 configuration element isn\*(Aqt present in the request. .Ve .PP Returns a ONVIF::Device::Elements::SetNetworkInterfacesResponse object. .PP .Vb 10 \& $response = $interface\->SetNetworkInterfaces( { \& InterfaceToken => $some_value, # ReferenceToken \& NetworkInterface => { # ONVIF::Device::Types::NetworkInterfaceSetConfiguration \& Enabled => $some_value, # boolean \& Link => { # ONVIF::Device::Types::NetworkInterfaceConnectionSetting \& AutoNegotiation => $some_value, # boolean \& Speed => $some_value, # int \& Duplex => $some_value, # Duplex \& }, \& MTU => $some_value, # int \& IPv4 => { # ONVIF::Device::Types::IPv4NetworkInterfaceSetConfiguration \& Enabled => $some_value, # boolean \& Manual => { # ONVIF::Device::Types::PrefixedIPv4Address \& Address => $some_value, # IPv4Address \& PrefixLength => $some_value, # int \& }, \& DHCP => $some_value, # boolean \& }, \& IPv6 => { # ONVIF::Device::Types::IPv6NetworkInterfaceSetConfiguration \& Enabled => $some_value, # boolean \& AcceptRouterAdvert => $some_value, # boolean \& Manual => { # ONVIF::Device::Types::PrefixedIPv6Address \& Address => $some_value, # IPv6Address \& PrefixLength => $some_value, # int \& }, \& DHCP => $some_value, # IPv6DHCPConfiguration \& }, \& Extension => { # ONVIF::Device::Types::NetworkInterfaceSetConfigurationExtension \& Dot3 => { # ONVIF::Device::Types::Dot3Configuration \& }, \& Dot11 => { # ONVIF::Device::Types::Dot11Configuration \& SSID => $some_value, # Dot11SSIDType \& Mode => $some_value, # Dot11StationMode \& Alias => $some_value, # Name \& Priority => $some_value, # NetworkInterfaceConfigPriority \& Security => { # ONVIF::Device::Types::Dot11SecurityConfiguration \& Mode => $some_value, # Dot11SecurityMode \& Algorithm => $some_value, # Dot11Cipher \& PSK => { # ONVIF::Device::Types::Dot11PSKSet \& Key => $some_value, # Dot11PSK \& Passphrase => $some_value, # Dot11PSKPassphrase \& Extension => { # ONVIF::Device::Types::Dot11PSKSetExtension \& }, \& }, \& Dot1X => $some_value, # ReferenceToken \& Extension => { # ONVIF::Device::Types::Dot11SecurityConfigurationExtension \& }, \& }, \& }, \& Extension => { # ONVIF::Device::Types::NetworkInterfaceSetConfigurationExtension2 \& }, \& }, \& }, \& },, \& ); .Ve .PP \fIGetNetworkProtocols\fR .IX Subsection "GetNetworkProtocols" .PP This operation gets defined network protocols from a device. The device shall support the GetNetworkProtocols command returning configured network protocols. .PP Returns a ONVIF::Device::Elements::GetNetworkProtocolsResponse object. .PP .Vb 3 \& $response = $interface\->GetNetworkProtocols( { \& },, \& ); .Ve .PP \fISetNetworkProtocols\fR .IX Subsection "SetNetworkProtocols" .PP This operation configures defined network protocols on a device. The device shall support configuration of defined network protocols through the SetNetworkProtocols command. .PP Returns a ONVIF::Device::Elements::SetNetworkProtocolsResponse object. .PP .Vb 10 \& $response = $interface\->SetNetworkProtocols( { \& NetworkProtocols => { # ONVIF::Device::Types::NetworkProtocol \& Name => $some_value, # NetworkProtocolType \& Enabled => $some_value, # boolean \& Port => $some_value, # int \& Extension => { # ONVIF::Device::Types::NetworkProtocolExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetNetworkDefaultGateway\fR .IX Subsection "GetNetworkDefaultGateway" .PP This operation gets the default gateway settings from a device. The device shall support the GetNetworkDefaultGateway command returning configured default gateway address(es). .PP Returns a ONVIF::Device::Elements::GetNetworkDefaultGatewayResponse object. .PP .Vb 3 \& $response = $interface\->GetNetworkDefaultGateway( { \& },, \& ); .Ve .PP \fISetNetworkDefaultGateway\fR .IX Subsection "SetNetworkDefaultGateway" .PP This operation sets the default gateway settings on a device. The device shall support configuration of default gateway through the SetNetworkDefaultGateway command. .PP Returns a ONVIF::Device::Elements::SetNetworkDefaultGatewayResponse object. .PP .Vb 5 \& $response = $interface\->SetNetworkDefaultGateway( { \& IPv4Address => $some_value, # IPv4Address \& IPv6Address => $some_value, # IPv6Address \& },, \& ); .Ve .PP \fIGetZeroConfiguration\fR .IX Subsection "GetZeroConfiguration" .PP .Vb 1 \& Devices supporting zero configuration on more than one interface shall use the extension to list the additional interface settings. .Ve .PP Returns a ONVIF::Device::Elements::GetZeroConfigurationResponse object. .PP .Vb 3 \& $response = $interface\->GetZeroConfiguration( { \& },, \& ); .Ve .PP \fISetZeroConfiguration\fR .IX Subsection "SetZeroConfiguration" .PP This operation sets the zero-configuration. Use GetCapalities to get if zero-zero-configuration is supported or not. .PP Returns a ONVIF::Device::Elements::SetZeroConfigurationResponse object. .PP .Vb 5 \& $response = $interface\->SetZeroConfiguration( { \& InterfaceToken => $some_value, # ReferenceToken \& Enabled => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetIPAddressFilter\fR .IX Subsection "GetIPAddressFilter" .PP This operation gets the \s-1IP\s0 address filter settings from a device. If the device supports device access control based on \s-1IP\s0 filtering rules (denied or accepted ranges of \s-1IP\s0 addresses), the device shall support the GetIPAddressFilter command. .PP Returns a ONVIF::Device::Elements::GetIPAddressFilterResponse object. .PP .Vb 3 \& $response = $interface\->GetIPAddressFilter( { \& },, \& ); .Ve .PP \fISetIPAddressFilter\fR .IX Subsection "SetIPAddressFilter" .PP This operation sets the \s-1IP\s0 address filter settings on a device. If the device supports device access control based on \s-1IP\s0 filtering rules (denied or accepted ranges of \s-1IP\s0 addresses), the device shall support configuration of \s-1IP\s0 filtering rules through the SetIPAddressFilter command. .PP Returns a ONVIF::Device::Elements::SetIPAddressFilterResponse object. .PP .Vb 10 \& $response = $interface\->SetIPAddressFilter( { \& IPAddressFilter => { # ONVIF::Device::Types::IPAddressFilter \& Type => $some_value, # IPAddressFilterType \& IPv4Address => { # ONVIF::Device::Types::PrefixedIPv4Address \& Address => $some_value, # IPv4Address \& PrefixLength => $some_value, # int \& }, \& IPv6Address => { # ONVIF::Device::Types::PrefixedIPv6Address \& Address => $some_value, # IPv6Address \& PrefixLength => $some_value, # int \& }, \& Extension => { # ONVIF::Device::Types::IPAddressFilterExtension \& }, \& }, \& },, \& ); .Ve .PP \fIAddIPAddressFilter\fR .IX Subsection "AddIPAddressFilter" .PP This operation adds an \s-1IP\s0 filter address to a device. If the device supports device access control based on \s-1IP\s0 filtering rules (denied or accepted ranges of \s-1IP\s0 addresses), the device shall support adding of \s-1IP\s0 filtering addresses through the AddIPAddressFilter command. .PP Returns a ONVIF::Device::Elements::AddIPAddressFilterResponse object. .PP .Vb 10 \& $response = $interface\->AddIPAddressFilter( { \& IPAddressFilter => { # ONVIF::Device::Types::IPAddressFilter \& Type => $some_value, # IPAddressFilterType \& IPv4Address => { # ONVIF::Device::Types::PrefixedIPv4Address \& Address => $some_value, # IPv4Address \& PrefixLength => $some_value, # int \& }, \& IPv6Address => { # ONVIF::Device::Types::PrefixedIPv6Address \& Address => $some_value, # IPv6Address \& PrefixLength => $some_value, # int \& }, \& Extension => { # ONVIF::Device::Types::IPAddressFilterExtension \& }, \& }, \& },, \& ); .Ve .PP \fIRemoveIPAddressFilter\fR .IX Subsection "RemoveIPAddressFilter" .PP This operation deletes an \s-1IP\s0 filter address from a device. If the device supports device access control based on \s-1IP\s0 filtering rules (denied or accepted ranges of \s-1IP\s0 addresses), the device shall support deletion of \s-1IP\s0 filtering addresses through the RemoveIPAddressFilter command. .PP Returns a ONVIF::Device::Elements::RemoveIPAddressFilterResponse object. .PP .Vb 10 \& $response = $interface\->RemoveIPAddressFilter( { \& IPAddressFilter => { # ONVIF::Device::Types::IPAddressFilter \& Type => $some_value, # IPAddressFilterType \& IPv4Address => { # ONVIF::Device::Types::PrefixedIPv4Address \& Address => $some_value, # IPv4Address \& PrefixLength => $some_value, # int \& }, \& IPv6Address => { # ONVIF::Device::Types::PrefixedIPv6Address \& Address => $some_value, # IPv6Address \& PrefixLength => $some_value, # int \& }, \& Extension => { # ONVIF::Device::Types::IPAddressFilterExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetAccessPolicy\fR .IX Subsection "GetAccessPolicy" .PP Access to different services and sub-sets of services should be subject to access control. The WS-Security framework gives the prerequisite for end-point authentication. Authorization decisions can then be taken using an access security policy. This standard does not mandate any particular policy description format or security policy but this is up to the device manufacturer or system provider to choose policy and policy description format of choice. However, an access policy (in arbitrary format) can be requested using this command. If the device supports access policy settings based on WS-Security authentication, then the device shall support this command. .PP Returns a ONVIF::Device::Elements::GetAccessPolicyResponse object. .PP .Vb 3 \& $response = $interface\->GetAccessPolicy( { \& },, \& ); .Ve .PP \fISetAccessPolicy\fR .IX Subsection "SetAccessPolicy" .PP This command sets the device access security policy (for more details on the access security policy see the Get command). If the device supports access policy settings based on WS-Security authentication, then the device shall support this command. .PP Returns a ONVIF::Device::Elements::SetAccessPolicyResponse object. .PP .Vb 6 \& $response = $interface\->SetAccessPolicy( { \& PolicyFile => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& },, \& ); .Ve .PP \fICreateCertificate\fR .IX Subsection "CreateCertificate" .PP .Vb 1 \& If a device supports onboard key pair generation, the device that supports TLS shall support this certificate creation command. And also, if a device supports onboard key pair generation, the device that support IEEE 802.1X shall support this command for the purpose of key pair generation. Certificates and key pairs are identified using certificate IDs. These IDs are either chosen by the certificate generation requester or by the device (in case that no ID value is given). .Ve .PP Returns a ONVIF::Device::Elements::CreateCertificateResponse object. .PP .Vb 7 \& $response = $interface\->CreateCertificate( { \& CertificateID => $some_value, # token \& Subject => $some_value, # string \& ValidNotBefore => $some_value, # dateTime \& ValidNotAfter => $some_value, # dateTime \& },, \& ); .Ve .PP \fIGetCertificates\fR .IX Subsection "GetCertificates" .PP This operation gets all device server certificates (including self-signed) for the purpose of \s-1TLS\s0 authentication and all device client certificates for the purpose of \s-1IEEE 802.1X\s0 authentication. This command lists only the \s-1TLS\s0 server certificates and \s-1IEEE 802.1X\s0 client certificates for the device (neither trusted \s-1CA\s0 certificates nor trusted root certificates). The certificates are returned as binary data. A device that supports \s-1TLS\s0 shall support this command and the certificates shall be encoded using \s-1ASN.1\s0 [X.681], [X.682], [X.683] \s-1DER\s0 [X.690] encoding rules. .PP Returns a ONVIF::Device::Elements::GetCertificatesResponse object. .PP .Vb 3 \& $response = $interface\->GetCertificates( { \& },, \& ); .Ve .PP \fIGetCertificatesStatus\fR .IX Subsection "GetCertificatesStatus" .PP This operation is specific to \s-1TLS\s0 functionality. This operation gets the status (enabled/disabled) of the device \s-1TLS\s0 server certificates. A device that supports \s-1TLS\s0 shall support this command. .PP Returns a ONVIF::Device::Elements::GetCertificatesStatusResponse object. .PP .Vb 3 \& $response = $interface\->GetCertificatesStatus( { \& },, \& ); .Ve .PP \fISetCertificatesStatus\fR .IX Subsection "SetCertificatesStatus" .PP This operation is specific to \s-1TLS\s0 functionality. This operation sets the status (enable/disable) of the device \s-1TLS\s0 server certificates. A device that supports \s-1TLS\s0 shall support this command. Typically only one device server certificate is allowed to be enabled at a time. .PP Returns a ONVIF::Device::Elements::SetCertificatesStatusResponse object. .PP .Vb 7 \& $response = $interface\->SetCertificatesStatus( { \& CertificateStatus => { # ONVIF::Device::Types::CertificateStatus \& CertificateID => $some_value, # token \& Status => $some_value, # boolean \& }, \& },, \& ); .Ve .PP \fIDeleteCertificates\fR .IX Subsection "DeleteCertificates" .PP This operation deletes a certificate or multiple certificates. The device \s-1MAY\s0 also delete a private/public key pair which is coupled with the certificate to be deleted. The device that support either \s-1TLS\s0 or \s-1IEEE 802.1X\s0 shall support the deletion of a certificate or multiple certificates through this command. Either all certificates are deleted successfully or a fault message shall be returned without deleting any certificate. .PP Returns a ONVIF::Device::Elements::DeleteCertificatesResponse object. .PP .Vb 4 \& $response = $interface\->DeleteCertificates( { \& CertificateID => $some_value, # token \& },, \& ); .Ve .PP \fIGetPkcs10Request\fR .IX Subsection "GetPkcs10Request" .PP .Vb 1 \& A device that support onboard key pair generation that supports either TLS or IEEE 802.1X using client certificate shall support this command. .Ve .PP Returns a ONVIF::Device::Elements::GetPkcs10RequestResponse object. .PP .Vb 8 \& $response = $interface\->GetPkcs10Request( { \& CertificateID => $some_value, # token \& Subject => $some_value, # string \& Attributes => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& },, \& ); .Ve .PP \fILoadCertificates\fR .IX Subsection "LoadCertificates" .PP .Vb 1 \& This command is applicable to any device type, although the parameter name is called for historical reasons NVTCertificate. .Ve .PP Returns a ONVIF::Device::Elements::LoadCertificatesResponse object. .PP .Vb 9 \& $response = $interface\->LoadCertificates( { \& NVTCertificate => { # ONVIF::Device::Types::Certificate \& CertificateID => $some_value, # token \& Certificate => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& }, \& },, \& ); .Ve .PP \fIGetClientCertificateMode\fR .IX Subsection "GetClientCertificateMode" .PP This operation is specific to \s-1TLS\s0 functionality. This operation gets the status (enabled/disabled) of the device \s-1TLS\s0 client authentication. A device that supports \s-1TLS\s0 shall support this command. .PP Returns a ONVIF::Device::Elements::GetClientCertificateModeResponse object. .PP .Vb 3 \& $response = $interface\->GetClientCertificateMode( { \& },, \& ); .Ve .PP \fISetClientCertificateMode\fR .IX Subsection "SetClientCertificateMode" .PP This operation is specific to \s-1TLS\s0 functionality. This operation sets the status (enabled/disabled) of the device \s-1TLS\s0 client authentication. A device that supports \s-1TLS\s0 shall support this command. .PP Returns a ONVIF::Device::Elements::SetClientCertificateModeResponse object. .PP .Vb 4 \& $response = $interface\->SetClientCertificateMode( { \& Enabled => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetRelayOutputs\fR .IX Subsection "GetRelayOutputs" .PP .Vb 1 \& This method has been deprecated with version 2.0. Refer to the DeviceIO service. .Ve .PP Returns a ONVIF::Device::Elements::GetRelayOutputsResponse object. .PP .Vb 3 \& $response = $interface\->GetRelayOutputs( { \& },, \& ); .Ve .PP \fISetRelayOutputSettings\fR .IX Subsection "SetRelayOutputSettings" .PP This method has been deprecated with version 2.0. Refer to the DeviceIO service. .PP Returns a ONVIF::Device::Elements::SetRelayOutputSettingsResponse object. .PP .Vb 9 \& $response = $interface\->SetRelayOutputSettings( { \& RelayOutputToken => $some_value, # ReferenceToken \& Properties => { # ONVIF::Device::Types::RelayOutputSettings \& Mode => $some_value, # RelayMode \& DelayTime => $some_value, # duration \& IdleState => $some_value, # RelayIdleState \& }, \& },, \& ); .Ve .PP \fISetRelayOutputState\fR .IX Subsection "SetRelayOutputState" .PP This method has been deprecated with version 2.0. Refer to the DeviceIO service. .PP Returns a ONVIF::Device::Elements::SetRelayOutputStateResponse object. .PP .Vb 5 \& $response = $interface\->SetRelayOutputState( { \& RelayOutputToken => $some_value, # ReferenceToken \& LogicalState => $some_value, # RelayLogicalState \& },, \& ); .Ve .PP \fISendAuxiliaryCommand\fR .IX Subsection "SendAuxiliaryCommand" .PP tt:IRLamp|Auto \- Request to configure an \s-1IR\s0 illuminator attached to the unit so that it automatically turns \s-1ON\s0 and \s-1OFF. A\s0 device that indicates auxiliary service capability shall support this command. .PP Returns a ONVIF::Device::Elements::SendAuxiliaryCommandResponse object. .PP .Vb 4 \& $response = $interface\->SendAuxiliaryCommand( { \& AuxiliaryCommand => $some_value, # AuxiliaryData \& },, \& ); .Ve .PP \fIGetCACertificates\fR .IX Subsection "GetCACertificates" .PP \&\s-1CA\s0 certificates will be loaded into a device and be used for the sake of following two cases. The one is for the purpose of \s-1TLS\s0 client authentication in \s-1TLS\s0 server function. The other one is for the purpose of Authentication Server authentication in \s-1IEEE 802.1X\s0 function. This operation gets all \s-1CA\s0 certificates loaded into a device. A device that supports either \s-1TLS\s0 client authentication or \s-1IEEE 802.1X\s0 shall support this command and the returned certificates shall be encoded using \s-1ASN.1\s0 [X.681], [X.682], [X.683] \s-1DER\s0 [X.690] encoding rules. .PP Returns a ONVIF::Device::Elements::GetCACertificatesResponse object. .PP .Vb 3 \& $response = $interface\->GetCACertificates( { \& },, \& ); .Ve .PP \fILoadCertificateWithPrivateKey\fR .IX Subsection "LoadCertificateWithPrivateKey" .PP .Vb 1 \& A device that does not support onboard key pair generation and support either TLS or IEEE 802.1X using client certificate shall support this command. A device that support onboard key pair generation MAY support this command. The security policy of a device that supports this operation should make sure that the private key is sufficiently protected. .Ve .PP Returns a ONVIF::Device::Elements::LoadCertificateWithPrivateKeyResponse object. .PP .Vb 12 \& $response = $interface\->LoadCertificateWithPrivateKey( { \& CertificateWithPrivateKey => { # ONVIF::Device::Types::CertificateWithPrivateKey \& CertificateID => $some_value, # token \& Certificate => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& PrivateKey => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& }, \& },, \& ); .Ve .PP \fIGetCertificateInformation\fR .IX Subsection "GetCertificateInformation" .PP .Vb 1 \& A device that supports either TLS or IEEE 802.1X should support this command. .Ve .PP Returns a ONVIF::Device::Elements::GetCertificateInformationResponse object. .PP .Vb 4 \& $response = $interface\->GetCertificateInformation( { \& CertificateID => $some_value, # token \& },, \& ); .Ve .PP \fILoadCACertificates\fR .IX Subsection "LoadCACertificates" .PP .Vb 1 \& A device that support either TLS or IEEE 802.1X shall support this command. As for the supported certificate format, either DER format or PEM format is possible to be used. But a device that support this command shall support at least DER format as supported format type. The device may sort the received certificate(s) based on the public key and subject information in the certificate(s). Either all CA certificates are loaded successfully or a fault message shall be returned without loading any CA certificate. .Ve .PP Returns a ONVIF::Device::Elements::LoadCACertificatesResponse object. .PP .Vb 9 \& $response = $interface\->LoadCACertificates( { \& CACertificate => { # ONVIF::Device::Types::Certificate \& CertificateID => $some_value, # token \& Certificate => { # ONVIF::Device::Types::BinaryData \& Data => $some_value, # base64Binary \& }, \& }, \& },, \& ); .Ve .PP \fICreateDot1XConfiguration\fR .IX Subsection "CreateDot1XConfiguration" .PP This operation newly creates \s-1IEEE 802.1X\s0 configuration parameter set of the device. The device shall support this command if it supports \s-1IEEE 802.1X.\s0 If the device receives this request with already existing configuration token (Dot1XConfigurationToken) specification, the device should respond with 'ter:ReferenceToken ' error to indicate there is some configuration conflict. .PP Returns a ONVIF::Device::Elements::CreateDot1XConfigurationResponse object. .PP .Vb 10 \& $response = $interface\->CreateDot1XConfiguration( { \& Dot1XConfiguration => { # ONVIF::Device::Types::Dot1XConfiguration \& Dot1XConfigurationToken => $some_value, # ReferenceToken \& Identity => $some_value, # string \& AnonymousID => $some_value, # string \& EAPMethod => $some_value, # int \& CACertificateID => $some_value, # token \& EAPMethodConfiguration => { # ONVIF::Device::Types::EAPMethodConfiguration \& TLSConfiguration => { # ONVIF::Device::Types::TLSConfiguration \& CertificateID => $some_value, # token \& }, \& Password => $some_value, # string \& Extension => { # ONVIF::Device::Types::EapMethodExtension \& }, \& }, \& Extension => { # ONVIF::Device::Types::Dot1XConfigurationExtension \& }, \& }, \& },, \& ); .Ve .PP \fISetDot1XConfiguration\fR .IX Subsection "SetDot1XConfiguration" .PP While the CreateDot1XConfiguration command is trying to create a new configuration parameter set, this operation modifies existing \s-1IEEE 802.1X\s0 configuration parameter set of the device. A device that support \s-1IEEE 802.1X\s0 shall support this command. .PP Returns a ONVIF::Device::Elements::SetDot1XConfigurationResponse object. .PP .Vb 10 \& $response = $interface\->SetDot1XConfiguration( { \& Dot1XConfiguration => { # ONVIF::Device::Types::Dot1XConfiguration \& Dot1XConfigurationToken => $some_value, # ReferenceToken \& Identity => $some_value, # string \& AnonymousID => $some_value, # string \& EAPMethod => $some_value, # int \& CACertificateID => $some_value, # token \& EAPMethodConfiguration => { # ONVIF::Device::Types::EAPMethodConfiguration \& TLSConfiguration => { # ONVIF::Device::Types::TLSConfiguration \& CertificateID => $some_value, # token \& }, \& Password => $some_value, # string \& Extension => { # ONVIF::Device::Types::EapMethodExtension \& }, \& }, \& Extension => { # ONVIF::Device::Types::Dot1XConfigurationExtension \& }, \& }, \& },, \& ); .Ve .PP \fIGetDot1XConfiguration\fR .IX Subsection "GetDot1XConfiguration" .PP .Vb 1 \& A device that supports IEEE 802.1X shall support this command. Regardless of whether the 802.1X method in the retrieved configuration has a password or not, the device shall not include the Password element in the response. .Ve .PP Returns a ONVIF::Device::Elements::GetDot1XConfigurationResponse object. .PP .Vb 4 \& $response = $interface\->GetDot1XConfiguration( { \& Dot1XConfigurationToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetDot1XConfigurations\fR .IX Subsection "GetDot1XConfigurations" .PP .Vb 1 \& Regardless of whether the 802.1X method in the retrieved configuration has a password or not, the device shall not include the Password element in the response. .Ve .PP Returns a ONVIF::Device::Elements::GetDot1XConfigurationsResponse object. .PP .Vb 3 \& $response = $interface\->GetDot1XConfigurations( { \& },, \& ); .Ve .PP \fIDeleteDot1XConfiguration\fR .IX Subsection "DeleteDot1XConfiguration" .PP This operation deletes an \s-1IEEE 802.1X\s0 configuration parameter set from the device. Which configuration should be deleted is specified by the 'Dot1XConfigurationToken' in the request. A device that support \s-1IEEE 802.1X\s0 shall support this command. .PP Returns a ONVIF::Device::Elements::DeleteDot1XConfigurationResponse object. .PP .Vb 4 \& $response = $interface\->DeleteDot1XConfiguration( { \& Dot1XConfigurationToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetDot11Capabilities\fR .IX Subsection "GetDot11Capabilities" .PP This operation returns the \s-1IEEE802.11\s0 capabilities. The device shall support this operation. .PP Returns a ONVIF::Device::Elements::GetDot11CapabilitiesResponse object. .PP .Vb 3 \& $response = $interface\->GetDot11Capabilities( { \& },, \& ); .Ve .PP \fIGetDot11Status\fR .IX Subsection "GetDot11Status" .PP This operation returns the status of a wireless network interface. The device shall support this command. .PP Returns a ONVIF::Device::Elements::GetDot11StatusResponse object. .PP .Vb 4 \& $response = $interface\->GetDot11Status( { \& InterfaceToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIScanAvailableDot11Networks\fR .IX Subsection "ScanAvailableDot11Networks" .PP This operation returns a lists of the wireless networks in range of the device. A device should support this operation. .PP Returns a ONVIF::Device::Elements::ScanAvailableDot11NetworksResponse object. .PP .Vb 4 \& $response = $interface\->ScanAvailableDot11Networks( { \& InterfaceToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetSystemUris\fR .IX Subsection "GetSystemUris" .PP .Vb 1 \& If the device allows retrieval of system logs, support information or system backup data, it should make them available via HTTP GET. If it does, it shall support the GetSystemUris command. .Ve .PP Returns a ONVIF::Device::Elements::GetSystemUrisResponse object. .PP .Vb 3 \& $response = $interface\->GetSystemUris( { \& },, \& ); .Ve .PP \fIStartFirmwareUpgrade\fR .IX Subsection "StartFirmwareUpgrade" .PP .Vb 1 \& The value of the Content\-Type header in the HTTP POST request shall be "application/octetstream". .Ve .PP Returns a ONVIF::Device::Elements::StartFirmwareUpgradeResponse object. .PP .Vb 3 \& $response = $interface\->StartFirmwareUpgrade( { \& },, \& ); .Ve .PP \fIStartSystemRestore\fR .IX Subsection "StartSystemRestore" .PP .Vb 1 \& The value of the Content\-Type header in the HTTP POST request shall be "application/octetstream". .Ve .PP Returns a ONVIF::Device::Elements::StartSystemRestoreResponse object. .PP .Vb 3 \& $response = $interface\->StartSystemRestore( { \& },, \& ); .Ve .SH "AUTHOR" .IX Header "AUTHOR" Generated by \s-1SOAP::WSDL\s0 on Mon Jun 30 13:36:10 2014