.\" 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::PTZ::Interfaces::PTZ::PTZPort 3pm" .TH ONVIF::PTZ::Interfaces::PTZ::PTZPort 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::PTZ::Interfaces::PTZ::PTZPort \- SOAP Interface for the PTZ Web Service .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& use ONVIF::PTZ::Interfaces::PTZ::PTZPort; \& my $interface = ONVIF::PTZ::Interfaces::PTZ::PTZPort\->new(); \& \& my $response; \& $response = $interface\->GetServiceCapabilities(); \& $response = $interface\->GetConfigurations(); \& $response = $interface\->GetPresets(); \& $response = $interface\->SetPreset(); \& $response = $interface\->RemovePreset(); \& $response = $interface\->GotoPreset(); \& $response = $interface\->GetStatus(); \& $response = $interface\->GetConfiguration(); \& $response = $interface\->GetNodes(); \& $response = $interface\->GetNode(); \& $response = $interface\->SetConfiguration(); \& $response = $interface\->GetConfigurationOptions(); \& $response = $interface\->GotoHomePosition(); \& $response = $interface\->SetHomePosition(); \& $response = $interface\->ContinuousMove(); \& $response = $interface\->RelativeMove(); \& $response = $interface\->SendAuxiliaryCommand(); \& $response = $interface\->AbsoluteMove(); \& $response = $interface\->Stop(); \& $response = $interface\->GetPresetTours(); \& $response = $interface\->GetPresetTour(); \& $response = $interface\->GetPresetTourOptions(); \& $response = $interface\->CreatePresetTour(); \& $response = $interface\->ModifyPresetTour(); \& $response = $interface\->OperatePresetTour(); \& $response = $interface\->RemovePresetTour(); \& $response = $interface\->GetCompatibleConfigurations(); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1SOAP\s0 Interface for the \s-1PTZ\s0 web service located at http://www.examples.com/PTZ/. .SH "SERVICE PTZ" .IX Header "SERVICE PTZ" .SS "Port PTZPort" .IX Subsection "Port PTZPort" .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 \fIGetServiceCapabilities\fR .IX Subsection "GetServiceCapabilities" .PP Returns the capabilities of the \s-1PTZ\s0 service. The result is returned in a typed answer. .PP Returns a ONVIF::PTZ::Elements::GetServiceCapabilitiesResponse object. .PP .Vb 3 \& $response = $interface\->GetServiceCapabilities( { \& },, \& ); .Ve .PP \fIGetConfigurations\fR .IX Subsection "GetConfigurations" .PP The allowed pan and tilt range for Pan/Tilt Limits is defined by a two-dimensional space range that is mapped to a specific Absolute Pan/Tilt Position Space. At least one Pan/Tilt Position Space is required by the PTZNode to support Pan/Tilt limits. The limits apply to all supported absolute, relative and continuous Pan/Tilt movements. The limits shall be checked within the coordinate system for which the limits have been specified. That means that even if movements are specified in a different coordinate system, the requested movements shall be transformed to the coordinate system of the limits where the limits can be checked. When a relative or continuous movements is specified, which would leave the specified limits, the \s-1PTZ\s0 unit has to move along the specified limits. The Zoom Limits have to be interpreted accordingly. .PP Returns a ONVIF::PTZ::Elements::GetConfigurationsResponse object. .PP .Vb 2 \& $response = $interface\->GetConfigurations(,, \& ); .Ve .PP \fIGetPresets\fR .IX Subsection "GetPresets" .PP .Vb 1 \& Operation to request all PTZ presets for the PTZNode in the selected profile. The operation is supported if there is support for at least on PTZ preset by the PTZNode. .Ve .PP Returns a ONVIF::PTZ::Elements::GetPresetsResponse object. .PP .Vb 4 \& $response = $interface\->GetPresets( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fISetPreset\fR .IX Subsection "SetPreset" .PP The SetPreset command saves the current device position parameters so that the device can move to the saved preset position through the GotoPreset operation. In order to create a new preset, the SetPresetRequest contains no PresetToken. If creation is successful, the Response contains the PresetToken which uniquely identifies the Preset. An existing Preset can be overwritten by specifying the PresetToken of the corresponding Preset. In both cases (overwriting or creation) an optional PresetName can be specified. The operation fails if the \s-1PTZ\s0 device is moving during the SetPreset operation. The device \s-1MAY\s0 internally save additional states such as imaging properties in the \s-1PTZ\s0 Preset which then should be recalled in the GotoPreset operation. .PP Returns a ONVIF::PTZ::Elements::SetPresetResponse object. .PP .Vb 6 \& $response = $interface\->SetPreset( { \& ProfileToken => $some_value, # ReferenceToken \& PresetName => $some_value, # string \& PresetToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIRemovePreset\fR .IX Subsection "RemovePreset" .PP Operation to remove a \s-1PTZ\s0 preset for the Node in the selected profile. The operation is supported if the PresetPosition capability exists for the Node in the selected profile. .PP Returns a ONVIF::PTZ::Elements::RemovePresetResponse object. .PP .Vb 5 \& $response = $interface\->RemovePreset( { \& ProfileToken => $some_value, # ReferenceToken \& PresetToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGotoPreset\fR .IX Subsection "GotoPreset" .PP .Vb 1 \& Operation to go to a saved preset position for the PTZNode in the selected profile. The operation is supported if there is support for at least on PTZ preset by the PTZNode. .Ve .PP Returns a ONVIF::PTZ::Elements::GotoPresetResponse object. .PP .Vb 9 \& $response = $interface\->GotoPreset( { \& ProfileToken => $some_value, # ReferenceToken \& PresetToken => $some_value, # ReferenceToken \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& },, \& ); .Ve .PP \fIGetStatus\fR .IX Subsection "GetStatus" .PP .Vb 1 \& Operation to request PTZ status for the Node in the selected profile. .Ve .PP Returns a ONVIF::PTZ::Elements::GetStatusResponse object. .PP .Vb 4 \& $response = $interface\->GetStatus( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetConfiguration\fR .IX Subsection "GetConfiguration" .PP The allowed pan and tilt range for Pan/Tilt Limits is defined by a two-dimensional space range that is mapped to a specific Absolute Pan/Tilt Position Space. At least one Pan/Tilt Position Space is required by the PTZNode to support Pan/Tilt limits. The limits apply to all supported absolute, relative and continuous Pan/Tilt movements. The limits shall be checked within the coordinate system for which the limits have been specified. That means that even if movements are specified in a different coordinate system, the requested movements shall be transformed to the coordinate system of the limits where the limits can be checked. When a relative or continuous movements is specified, which would leave the specified limits, the \s-1PTZ\s0 unit has to move along the specified limits. The Zoom Limits have to be interpreted accordingly. .PP Returns a ONVIF::PTZ::Elements::GetConfigurationResponse object. .PP .Vb 4 \& $response = $interface\->GetConfiguration( { \& PTZConfigurationToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetNodes\fR .IX Subsection "GetNodes" .PP A PTZ-capable device may have multiple \s-1PTZ\s0 Nodes. The \s-1PTZ\s0 Nodes may represent mechanical \s-1PTZ\s0 drivers, uploaded \s-1PTZ\s0 drivers or digital \s-1PTZ\s0 drivers. \s-1PTZ\s0 Nodes are the lowest level entities in the \s-1PTZ\s0 control \s-1API\s0 and reflect the supported \s-1PTZ\s0 capabilities. The \s-1PTZ\s0 Node is referenced either by its name or by its reference token. .PP Returns a ONVIF::PTZ::Elements::GetNodesResponse object. .PP .Vb 2 \& $response = $interface\->GetNodes(,, \& ); .Ve .PP \fIGetNode\fR .IX Subsection "GetNode" .PP Get a specific \s-1PTZ\s0 Node identified by a reference token or a name. .PP Returns a ONVIF::PTZ::Elements::GetNodeResponse object. .PP .Vb 4 \& $response = $interface\->GetNode( { \& NodeToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fISetConfiguration\fR .IX Subsection "SetConfiguration" .PP Set/update a existing PTZConfiguration on the device. .PP Returns a ONVIF::PTZ::Elements::SetConfigurationResponse object. .PP .Vb 10 \& $response = $interface\->SetConfiguration( { \& PTZConfiguration => { # ONVIF::PTZ::Types::PTZConfiguration \& NodeToken => $some_value, # ReferenceToken \& DefaultAbsolutePantTiltPositionSpace => $some_value, # anyURI \& DefaultAbsoluteZoomPositionSpace => $some_value, # anyURI \& DefaultRelativePanTiltTranslationSpace => $some_value, # anyURI \& DefaultRelativeZoomTranslationSpace => $some_value, # anyURI \& DefaultContinuousPanTiltVelocitySpace => $some_value, # anyURI \& DefaultContinuousZoomVelocitySpace => $some_value, # anyURI \& DefaultPTZSpeed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& DefaultPTZTimeout => $some_value, # duration \& PanTiltLimits => { # ONVIF::PTZ::Types::PanTiltLimits \& Range => { # ONVIF::PTZ::Types::Space2DDescription \& URI => $some_value, # anyURI \& XRange => { # ONVIF::PTZ::Types::FloatRange \& Min => $some_value, # float \& Max => $some_value, # float \& }, \& YRange => { # ONVIF::PTZ::Types::FloatRange \& Min => $some_value, # float \& Max => $some_value, # float \& }, \& }, \& }, \& ZoomLimits => { # ONVIF::PTZ::Types::ZoomLimits \& Range => { # ONVIF::PTZ::Types::Space1DDescription \& URI => $some_value, # anyURI \& XRange => { # ONVIF::PTZ::Types::FloatRange \& Min => $some_value, # float \& Max => $some_value, # float \& }, \& }, \& }, \& Extension => { # ONVIF::PTZ::Types::PTZConfigurationExtension \& PTControlDirection => { # ONVIF::PTZ::Types::PTControlDirection \& EFlip => { # ONVIF::PTZ::Types::EFlip \& Mode => $some_value, # EFlipMode \& }, \& Reverse => { # ONVIF::PTZ::Types::Reverse \& Mode => $some_value, # ReverseMode \& }, \& Extension => { # ONVIF::PTZ::Types::PTControlDirectionExtension \& }, \& }, \& Extension => { # ONVIF::PTZ::Types::PTZConfigurationExtension2 \& }, \& }, \& }, \& ForcePersistence => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetConfigurationOptions\fR .IX Subsection "GetConfigurationOptions" .PP List supported coordinate systems including their range limitations. Therefore, the options \s-1MAY\s0 differ depending on whether the \s-1PTZ\s0 Configuration is assigned to a Profile containing a Video Source Configuration. In that case, the options may additionally contain coordinate systems referring to the image coordinate system described by the Video Source Configuration. If the \s-1PTZ\s0 Node supports continuous movements, it shall return a Timeout Range within which Timeouts are accepted by the \s-1PTZ\s0 Node. .PP Returns a ONVIF::PTZ::Elements::GetConfigurationOptionsResponse object. .PP .Vb 4 \& $response = $interface\->GetConfigurationOptions( { \& ConfigurationToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGotoHomePosition\fR .IX Subsection "GotoHomePosition" .PP .Vb 1 \& Operation to move the PTZ device to it\*(Aqs "home" position. The operation is supported if the HomeSupported element in the PTZNode is true. .Ve .PP Returns a ONVIF::PTZ::Elements::GotoHomePositionResponse object. .PP .Vb 8 \& $response = $interface\->GotoHomePosition( { \& ProfileToken => $some_value, # ReferenceToken \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& },, \& ); .Ve .PP \fISetHomePosition\fR .IX Subsection "SetHomePosition" .PP Operation to save current position as the home position. The SetHomePosition command returns with a failure if the \*(L"home\*(R" position is fixed and cannot be overwritten. If the SetHomePosition is successful, it is possible to recall the Home Position with the GotoHomePosition command. .PP Returns a ONVIF::PTZ::Elements::SetHomePositionResponse object. .PP .Vb 4 \& $response = $interface\->SetHomePosition( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIContinuousMove\fR .IX Subsection "ContinuousMove" .PP Operation for continuous Pan/Tilt and Zoom movements. The operation is supported if the PTZNode supports at least one continuous Pan/Tilt or Zoom space. If the space argument is omitted, the default space set by the PTZConfiguration will be used. .PP Returns a ONVIF::PTZ::Elements::ContinuousMoveResponse object. .PP .Vb 9 \& $response = $interface\->ContinuousMove( { \& ProfileToken => $some_value, # ReferenceToken \& Velocity => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& Timeout => $some_value, # duration \& },, \& ); .Ve .PP \fIRelativeMove\fR .IX Subsection "RelativeMove" .PP The speed argument is optional. If an x/y speed value is given it is up to the device to either use the x value as absolute resoluting speed vector or to map x and y to the component speed. If the speed argument is omitted, the default speed set by the PTZConfiguration will be used. .PP Returns a ONVIF::PTZ::Elements::RelativeMoveResponse object. .PP .Vb 12 \& $response = $interface\->RelativeMove( { \& ProfileToken => $some_value, # ReferenceToken \& Translation => { # ONVIF::PTZ::Types::PTZVector \& PanTilt => , \& Zoom => , \& }, \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& },, \& ); .Ve .PP \fISendAuxiliaryCommand\fR .IX Subsection "SendAuxiliaryCommand" .PP Operation to send auxiliary commands to the \s-1PTZ\s0 device mapped by the PTZNode in the selected profile. The operation is supported if the AuxiliarySupported element of the PTZNode is true .PP Returns a ONVIF::PTZ::Elements::SendAuxiliaryCommandResponse object. .PP .Vb 5 \& $response = $interface\->SendAuxiliaryCommand( { \& ProfileToken => $some_value, # ReferenceToken \& AuxiliaryData => $some_value, # AuxiliaryData \& },, \& ); .Ve .PP \fIAbsoluteMove\fR .IX Subsection "AbsoluteMove" .PP The speed argument is optional. If an x/y speed value is given it is up to the device to either use the x value as absolute resoluting speed vector or to map x and y to the component speed. If the speed argument is omitted, the default speed set by the PTZConfiguration will be used. .PP Returns a ONVIF::PTZ::Elements::AbsoluteMoveResponse object. .PP .Vb 12 \& $response = $interface\->AbsoluteMove( { \& ProfileToken => $some_value, # ReferenceToken \& Position => { # ONVIF::PTZ::Types::PTZVector \& PanTilt => , \& Zoom => , \& }, \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& },, \& ); .Ve .PP \fIStop\fR .IX Subsection "Stop" .PP Operation to stop ongoing pan, tilt and zoom movements of absolute relative and continuous type. If no stop argument for pan, tilt or zoom is set, the device will stop all ongoing pan, tilt and zoom movements. .PP Returns a ONVIF::PTZ::Elements::StopResponse object. .PP .Vb 6 \& $response = $interface\->Stop( { \& ProfileToken => $some_value, # ReferenceToken \& PanTilt => $some_value, # boolean \& Zoom => $some_value, # boolean \& },, \& ); .Ve .PP \fIGetPresetTours\fR .IX Subsection "GetPresetTours" .PP Operation to request \s-1PTZ\s0 preset tours in the selected media profiles. .PP Returns a ONVIF::PTZ::Elements::GetPresetToursResponse object. .PP .Vb 4 \& $response = $interface\->GetPresetTours( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetPresetTour\fR .IX Subsection "GetPresetTour" .PP Operation to request a specific \s-1PTZ\s0 preset tour in the selected media profile. .PP Returns a ONVIF::PTZ::Elements::GetPresetTourResponse object. .PP .Vb 5 \& $response = $interface\->GetPresetTour( { \& ProfileToken => $some_value, # ReferenceToken \& PresetTourToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetPresetTourOptions\fR .IX Subsection "GetPresetTourOptions" .PP Operation to request available options to configure \s-1PTZ\s0 preset tour. .PP Returns a ONVIF::PTZ::Elements::GetPresetTourOptionsResponse object. .PP .Vb 5 \& $response = $interface\->GetPresetTourOptions( { \& ProfileToken => $some_value, # ReferenceToken \& PresetTourToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fICreatePresetTour\fR .IX Subsection "CreatePresetTour" .PP Operation to create a preset tour for the selected media profile. .PP Returns a ONVIF::PTZ::Elements::CreatePresetTourResponse object. .PP .Vb 4 \& $response = $interface\->CreatePresetTour( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIModifyPresetTour\fR .IX Subsection "ModifyPresetTour" .PP Operation to modify a preset tour for the selected media profile. .PP Returns a ONVIF::PTZ::Elements::ModifyPresetTourResponse object. .PP .Vb 10 \& $response = $interface\->ModifyPresetTour( { \& ProfileToken => $some_value, # ReferenceToken \& PresetTour => { # ONVIF::PTZ::Types::PresetTour \& Name => $some_value, # Name \& Status => { # ONVIF::PTZ::Types::PTZPresetTourStatus \& State => $some_value, # PTZPresetTourState \& CurrentTourSpot => { # ONVIF::PTZ::Types::PTZPresetTourSpot \& PresetDetail => { # ONVIF::PTZ::Types::PTZPresetTourPresetDetail \& # One of the following elements. \& # No occurrence checks yet, so be sure to pass just one... \& PresetToken => $some_value, # ReferenceToken \& Home => $some_value, # boolean \& PTZPosition => { # ONVIF::PTZ::Types::PTZVector \& PanTilt => , \& Zoom => , \& }, \& TypeExtension => { # ONVIF::PTZ::Types::PTZPresetTourTypeExtension \& }, \& }, \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& StayTime => $some_value, # duration \& Extension => { # ONVIF::PTZ::Types::PTZPresetTourSpotExtension \& }, \& }, \& Extension => { # ONVIF::PTZ::Types::PTZPresetTourStatusExtension \& }, \& }, \& AutoStart => $some_value, # boolean \& StartingCondition => { # ONVIF::PTZ::Types::PTZPresetTourStartingCondition \& RecurringTime => $some_value, # int \& RecurringDuration => $some_value, # duration \& Direction => $some_value, # PTZPresetTourDirection \& Extension => { # ONVIF::PTZ::Types::PTZPresetTourStartingConditionExtension \& }, \& }, \& TourSpot => { # ONVIF::PTZ::Types::PTZPresetTourSpot \& PresetDetail => { # ONVIF::PTZ::Types::PTZPresetTourPresetDetail \& # One of the following elements. \& # No occurrence checks yet, so be sure to pass just one... \& PresetToken => $some_value, # ReferenceToken \& Home => $some_value, # boolean \& PTZPosition => { # ONVIF::PTZ::Types::PTZVector \& PanTilt => , \& Zoom => , \& }, \& TypeExtension => { # ONVIF::PTZ::Types::PTZPresetTourTypeExtension \& }, \& }, \& Speed => { # ONVIF::PTZ::Types::PTZSpeed \& PanTilt => , \& Zoom => , \& }, \& StayTime => $some_value, # duration \& Extension => { # ONVIF::PTZ::Types::PTZPresetTourSpotExtension \& }, \& }, \& Extension => { # ONVIF::PTZ::Types::PTZPresetTourExtension \& }, \& }, \& },, \& ); .Ve .PP \fIOperatePresetTour\fR .IX Subsection "OperatePresetTour" .PP Operation to perform specific operation on the preset tour in selected media profile. .PP Returns a ONVIF::PTZ::Elements::OperatePresetTourResponse object. .PP .Vb 6 \& $response = $interface\->OperatePresetTour( { \& ProfileToken => $some_value, # ReferenceToken \& PresetTourToken => $some_value, # ReferenceToken \& Operation => $some_value, # PTZPresetTourOperation \& },, \& ); .Ve .PP \fIRemovePresetTour\fR .IX Subsection "RemovePresetTour" .PP Operation to delete a specific preset tour from the media profile. .PP Returns a ONVIF::PTZ::Elements::RemovePresetTourResponse object. .PP .Vb 5 \& $response = $interface\->RemovePresetTour( { \& ProfileToken => $some_value, # ReferenceToken \& PresetTourToken => $some_value, # ReferenceToken \& },, \& ); .Ve .PP \fIGetCompatibleConfigurations\fR .IX Subsection "GetCompatibleConfigurations" .PP A device providing more than one PTZConfiguration or more than one VideoSourceConfiguration or which has any other resource interdependency between PTZConfiguration entities and other resources listable in a media profile should implement this operation. PTZConfiguration entities returned by this operation shall not fail on adding them to the referenced media profile. .PP Returns a ONVIF::PTZ::Elements::GetCompatibleConfigurationsResponse object. .PP .Vb 4 \& $response = $interface\->GetCompatibleConfigurations( { \& ProfileToken => $some_value, # ReferenceToken \& },, \& ); .Ve .SH "AUTHOR" .IX Header "AUTHOR" Generated by \s-1SOAP::WSDL\s0 on Mon Jun 30 13:37:28 2014