Files
onvif/Device/types.go
2018-04-04 21:07:25 +03:00

1224 lines
22 KiB
Go

package Device
import (
"github.com/yakovlevdmv/goonvif/xsd"
"github.com/yakovlevdmv/goonvif/xsd/onvif"
)
const WSDL = "http://www.onvif.org/ver10/device/wsdl"
type Service struct {
Namespace xsd.AnyURI
XAddr xsd.AnyURI
Capabilities
Version onvif.OnvifVersion
}
type Capabilities struct {
Any string
}
type DeviceServiceCapabilities struct {
Network NetworkCapabilities
Security SecurityCapabilities
System SystemCapabilities
Misc MiscCapabilities
}
type NetworkCapabilities struct {
IPFilter xsd.Boolean `xml:"IPFilter,attr"`
ZeroConfiguration xsd.Boolean `xml:"ZeroConfiguration,attr"`
IPVersion6 xsd.Boolean `xml:"IPVersion6,attr"`
DynDNS xsd.Boolean `xml:"DynDNS,attr"`
Dot11Configuration xsd.Boolean `xml:"Dot11Configuration,attr"`
Dot1XConfigurations int `xml:"Dot1XConfigurations,attr"`
HostnameFromDHCP xsd.Boolean `xml:"HostnameFromDHCP,attr"`
NTP int `xml:"NTP,attr"`
DHCPv6 xsd.Boolean `xml:"DHCPv6,attr"`
}
type SecurityCapabilities struct {
TLS1_0 xsd.Boolean `xml:"TLS1_0,attr"`
TLS1_1 xsd.Boolean `xml:"TLS1_1,attr"`
TLS1_2 xsd.Boolean `xml:"TLS1_2,attr"`
OnboardKeyGeneration xsd.Boolean `xml:"OnboardKeyGeneration,attr"`
AccessPolicyConfig xsd.Boolean `xml:"AccessPolicyConfig,attr"`
DefaultAccessPolicy xsd.Boolean `xml:"DefaultAccessPolicy,attr"`
Dot1X xsd.Boolean `xml:"Dot1X,attr"`
RemoteUserHandling xsd.Boolean `xml:"RemoteUserHandling,attr"`
X_509Token xsd.Boolean `xml:"X_509Token,attr"`
SAMLToken xsd.Boolean `xml:"SAMLToken,attr"`
KerberosToken xsd.Boolean `xml:"KerberosToken,attr"`
UsernameToken xsd.Boolean `xml:"UsernameToken,attr"`
HttpDigest xsd.Boolean `xml:"HttpDigest,attr"`
RELToken xsd.Boolean `xml:"RELToken,attr"`
SupportedEAPMethods EAPMethodTypes `xml:"SupportedEAPMethods,attr"`
MaxUsers int `xml:"MaxUsers,attr"`
MaxUserNameLength int `xml:"MaxUserNameLength,attr"`
MaxPasswordLength int `xml:"MaxPasswordLength,attr"`
}
type EAPMethodTypes struct {
Types []int
}
type SystemCapabilities struct {
DiscoveryResolve xsd.Boolean `xml:"DiscoveryResolve,attr"`
DiscoveryBye xsd.Boolean `xml:"DiscoveryBye,attr"`
RemoteDiscovery xsd.Boolean `xml:"RemoteDiscovery,attr"`
SystemBackup xsd.Boolean `xml:"SystemBackup,attr"`
SystemLogging xsd.Boolean `xml:"SystemLogging,attr"`
FirmwareUpgrade xsd.Boolean `xml:"FirmwareUpgrade,attr"`
HttpFirmwareUpgrade xsd.Boolean `xml:"HttpFirmwareUpgrade,attr"`
HttpSystemBackup xsd.Boolean `xml:"HttpSystemBackup,attr"`
HttpSystemLogging xsd.Boolean `xml:"HttpSystemLogging,attr"`
HttpSupportInformation xsd.Boolean `xml:"HttpSupportInformation,attr"`
StorageConfiguration xsd.Boolean `xml:"StorageConfiguration,attr"`
MaxStorageConfigurations int `xml:"MaxStorageConfigurations,attr"`
GeoLocationEntries int `xml:"GeoLocationEntries,attr"`
AutoGeo onvif.StringAttrList `xml:"AutoGeo,attr"`
}
type MiscCapabilities struct {
AuxiliaryCommands onvif.StringAttrList `xml:"AuxiliaryCommands,attr"`
}
type StorageConfiguration struct {
onvif.DeviceEntity
Data StorageConfigurationData `xml:"wsdl:Data"`
}
type StorageConfigurationData struct {
Type xsd.String `xml:"type,attr"`
LocalPath xsd.AnyURI `xml:"wsdl:LocalPath"`
StorageUri xsd.AnyURI `xml:"wsdl:StorageUri"`
User UserCredential `xml:"wsdl:User"`
Extension xsd.AnyURI `xml:"wsdl:Extension"`
}
type UserCredential struct {
UserName xsd.String `xml:"wsdl:UserName"`
Password xsd.String `xml:"wsdl:Password"`
Extension xsd.AnyType `xml:"wsdl:Extension"`
}
//Device main types
type GetServices struct {
XMLName string `xml:"wsdl:GetServices"`
IncludeCapability xsd.Boolean `xml:"wsdl:IncludeCapability"`
}
type GetServicesResponse struct {
Service Service
}
type GetServiceCapabilities struct {
XMLName string `xml:"wsdl:GetServiceCapabilities"`
}
type GetServiceCapabilitiesResponse struct {
Capabilities DeviceServiceCapabilities
}
type GetDeviceInformation struct {
XMLName string `xml:"wsdl:GetDeviceInformation"`
}
type GetDeviceInformationResponse struct {
Manufacturer string
Model string
FirmwareVersion string
SerialNumber string
HardwareId string
}
type SetSystemDateAndTime struct {
XMLName string `xml:"wsdl:SetSystemDateAndTime"`
DateTimeType onvif.SetDateTimeType `xml:"wsdl:DateTimeType"`
DaylightSavings xsd.Boolean `xml:"wsdl:DaylightSavings"`
TimeZone onvif.TimeZone `xml:"wsdl:TimeZone"`
UTCDateTime onvif.DateTime `xml:"wsdl:UTCDateTime"`
}
type SetSystemDateAndTimeResponse struct {
}
type GetSystemDateAndTime struct {
XMLName string `xml:"wsdl:GetSystemDateAndTime"`
}
type GetSystemDateAndTimeResponse struct {
SystemDateAndTime onvif.SystemDateTime
}
type SetSystemFactoryDefault struct {
XMLName string `xml:"wsdl:SetSystemFactoryDefault"`
FactoryDefault onvif.FactoryDefaultType `xml:"wsdl:FactoryDefault"`
}
type SetSystemFactoryDefaultResponse struct {
}
type UpgradeSystemFirmware struct {
XMLName string `xml:"wsdl:UpgradeSystemFirmware"`
Firmware onvif.AttachmentData `xml:"wsdl:Firmware"`
}
type UpgradeSystemFirmwareResponse struct {
Message string
}
type SystemReboot struct {
XMLName string `xml:"wsdl:SystemReboot"`
}
type SystemRebootResponse struct {
Message string
}
//TODO: one or more repetitions
type RestoreSystem struct {
XMLName string `xml:"wsdl:RestoreSystem"`
BackupFiles onvif.BackupFile `xml:"wsdl:BackupFiles"`
}
type RestoreSystemResponse struct {
}
type GetSystemBackup struct {
XMLName string `xml:"wsdl:GetSystemBackup"`
}
type GetSystemBackupResponse struct {
BackupFiles onvif.BackupFile
}
type GetSystemLog struct {
XMLName string `xml:"wsdl:GetSystemLog"`
LogType onvif.SystemLogType `xml:"wsdl:LogType"`
}
type GetSystemLogResponse struct {
SystemLog onvif.SystemLog
}
type GetSystemSupportInformation struct {
XMLName string `xml:"wsdl:GetSystemSupportInformation"`
}
type GetSystemSupportInformationResponse struct {
SupportInformation onvif.SupportInformation
}
type GetScopes struct {
XMLName string `xml:"wsdl:GetScopes"`
}
type GetScopesResponse struct {
Scopes onvif.Scope
}
//TODO: one or more scopes
type SetScopes struct {
XMLName string `xml:"wsdl:SetScopes"`
Scopes xsd.AnyURI `xml:"wsdl:Scopes"`
}
type SetScopesResponse struct {
}
//TODO: list of scopes
type AddScopes struct {
XMLName string `xml:"wsdl:AddScopes"`
ScopeItem xsd.AnyURI`xml:"wsdl:ScopeItem"`
}
type AddScopesResponse struct {
}
//TODO: One or more repetitions
type RemoveScopes struct {
XMLName string `xml:"wsdl:RemoveScopes"`
ScopeItem xsd.AnyURI `xml:"onvif:ScopeItem"`
}
type RemoveScopesResponse struct {
ScopeItem xsd.AnyURI
}
type GetDiscoveryMode struct {
XMLName string `xml:"wsdl:GetDiscoveryMode"`
}
type GetDiscoveryModeResponse struct {
DiscoveryMode onvif.DiscoveryMode
}
type SetDiscoveryMode struct {
XMLName string `xml:"wsdl:SetDiscoveryMode"`
DiscoveryMode onvif.DiscoveryMode `xml:"wsdl:DiscoveryMode"`
}
type SetDiscoveryModeResponse struct {
}
type GetRemoteDiscoveryMode struct {
XMLName string `xml:"wsdl:GetRemoteDiscoveryMode"`
}
type GetRemoteDiscoveryModeResponse struct {
RemoteDiscoveryMode onvif.DiscoveryMode
}
type SetRemoteDiscoveryMode struct {
XMLName string `xml:"wsdl:SetRemoteDiscoveryMode"`
RemoteDiscoveryMode onvif.DiscoveryMode `xml:"wsdl:RemoteDiscoveryMode"`
}
type SetRemoteDiscoveryModeResponse struct {
}
type GetDPAddresses struct {
XMLName string `xml:"wsdl:GetDPAddresses"`
}
type GetDPAddressesResponse struct {
DPAddress onvif.NetworkHost
}
type SetDPAddresses struct {
XMLName string `xml:"wsdl:SetDPAddresses"`
DPAddress onvif.NetworkHost `xml:"wsdl:DPAddress"`
}
type SetDPAddressesResponse struct {
}
type GetEndpointReference struct {
XMLName string `xml:"wsdl:GetEndpointReference"`
}
type GetEndpointReferenceResponse struct {
GUID string
}
type GetRemoteUser struct {
XMLName string `xml:"wsdl:GetRemoteUser"`
}
type GetRemoteUserResponse struct {
RemoteUser onvif.RemoteUser
}
type SetRemoteUser struct {
XMLName string `xml:"wsdl:SetRemoteUser"`
RemoteUser onvif.RemoteUser `xml:"wsdl:RemoteUser"`
}
type SetRemoteUserResponse struct {
}
type GetUsers struct {
XMLName string `xml:"wsdl:GetUsers"`
}
type GetUsersResponse struct {
User onvif.User
}
//TODO: List of users
type CreateUsers struct {
XMLName string `xml:"wsdl:CreateUsers"`
User onvif.User `xml:"wsdl:User,omitempty"`
}
type CreateUsersResponse struct {
}
//TODO: one or more Username
type DeleteUsers struct {
XMLName xsd.String `xml:"wsdl:DeleteUsers"`
Username xsd.String `xml:"wsdl:Username"`
}
type DeleteUsersResponse struct {
}
type SetUser struct {
XMLName string `xml:"wsdl:SetUser"`
User onvif.User `xml:"wsdl:User"`
}
type SetUserResponse struct {
}
type GetWsdlUrl struct {
XMLName string `xml:"wsdl:GetWsdlUrl"`
}
type GetWsdlUrlResponse struct {
WsdlUrl xsd.AnyURI
}
type GetCapabilities struct {
XMLName string `xml:"wsdl:GetCapabilities"`
Category onvif.CapabilityCategory `xml:"wsdl:Category"`
}
type GetCapabilitiesResponse struct {
Capabilities onvif.Capabilities
}
type GetHostname struct {
XMLName string `xml:"wsdl:GetHostname"`
}
type GetHostnameResponse struct {
HostnameInformation onvif.HostnameInformation
}
type SetHostname struct {
XMLName string `xml:"wsdl:SetHostname"`
Name xsd.Token `xml:"wsdl:Name"`
}
type SetHostnameResponse struct {
}
type SetHostnameFromDHCP struct {
XMLName string `xml:"wsdl:SetHostnameFromDHCP"`
FromDHCP xsd.Boolean `xml:"wsdl:FromDHCP"`
}
type SetHostnameFromDHCPResponse struct {
RebootNeeded xsd.Boolean
}
type GetDNS struct {
XMLName string `xml:"wsdl:GetDNS"`
}
type GetDNSResponse struct {
DNSInformation onvif.DNSInformation
}
type SetDNS struct {
XMLName string `xml:"wsdl:SetDNS"`
FromDHCP xsd.Boolean `xml:"wsdl:FromDHCP"`
SearchDomain xsd.Token `xml:"wsdl:SearchDomain"`
DNSManual onvif.IPAddress `xml:"wsdl:DNSManual"`
}
type SetDNSResponse struct {
}
type GetNTP struct {
XMLName string `xml:"wsdl:GetNTP"`
}
type GetNTPResponse struct {
NTPInformation onvif.NTPInformation
}
type SetNTP struct {
XMLName string `xml:"wsdl:SetNTP"`
FromDHCP xsd.Boolean `xml:"wsdl:FromDHCP"`
NTPManual onvif.NetworkHost `xml:"wsdl:NTPManual"`
}
type SetNTPResponse struct {
}
type GetDynamicDNS struct {
XMLName string `xml:"wsdl:GetDynamicDNS"`
}
type GetDynamicDNSResponse struct {
DynamicDNSInformation onvif.DynamicDNSInformation
}
type SetDynamicDNS struct {
XMLName string `xml:"wsdl:SetDynamicDNS"`
Type onvif.DynamicDNSType `xml:"wsdl:Type"`
Name onvif.DNSName `xml:"wsdl:Name"`
TTL xsd.Duration `xml:"wsdl:TTL"`
}
type SetDynamicDNSResponse struct {
}
type GetNetworkInterfaces struct {
XMLName string `xml:"wsdl:GetNetworkInterfaces"`
}
type GetNetworkInterfacesResponse struct {
NetworkInterfaces onvif.NetworkInterface
}
type SetNetworkInterfaces struct {
XMLName string `xml:"wsdl:SetNetworkInterfaces"`
InterfaceToken onvif.ReferenceToken `xml:"wsdl:InterfaceToken"`
NetworkInterface onvif.NetworkInterfaceSetConfiguration `xml:"wsdl:NetworkInterface"`
}
type SetNetworkInterfacesResponse struct {
RebootNeeded xsd.Boolean
}
type GetNetworkProtocols struct {
XMLName string `xml:"wsdl:GetNetworkProtocols"`
}
type GetNetworkProtocolsResponse struct {
NetworkProtocols onvif.NetworkProtocol
}
type SetNetworkProtocols struct {
XMLName string `xml:"wsdl:SetNetworkProtocols"`
NetworkProtocols onvif.NetworkProtocol `xml:"wsdl:NetworkProtocols"`
}
type SetNetworkProtocolsResponse struct {
}
type GetNetworkDefaultGateway struct {
XMLName string `xml:"wsdl:GetNetworkDefaultGateway"`
}
type GetNetworkDefaultGatewayResponse struct {
NetworkGateway onvif.NetworkGateway
}
type SetNetworkDefaultGateway struct {
XMLName string `xml:"wsdl:SetNetworkDefaultGateway"`
IPv4Address onvif.IPv4Address `xml:"wsdl:IPv4Address"`
IPv6Address onvif.IPv6Address `xml:"wsdl:IPv6Address"`
}
type SetNetworkDefaultGatewayResponse struct {
}
type GetZeroConfiguration struct {
XMLName string `xml:"wsdl:GetZeroConfiguration"`
}
type GetZeroConfigurationResponse struct {
ZeroConfiguration onvif.NetworkZeroConfiguration
}
type SetZeroConfiguration struct {
XMLName string `xml:"wsdl:SetZeroConfiguration"`
InterfaceToken onvif.ReferenceToken `xml:"wsdl:InterfaceToken"`
Enabled xsd.Boolean `xml:"wsdl:Enabled"`
}
type SetZeroConfigurationResponse struct {
}
type GetIPAddressFilter struct {
XMLName string `xml:"wsdl:GetIPAddressFilter"`
}
type GetIPAddressFilterResponse struct {
IPAddressFilter onvif.IPAddressFilter
}
type SetIPAddressFilter struct {
XMLName string `xml:"wsdl:SetIPAddressFilter"`
IPAddressFilter onvif.IPAddressFilter `xml:"wsdl:IPAddressFilter"`
}
type SetIPAddressFilterResponse struct {
}
//This operation adds an IP filter address to a device.
//If the device supports device access control based on
//IP filtering rules (denied or accepted ranges of IP addresses),
//the device shall support adding of IP filtering addresses through
//the AddIPAddressFilter command.
type AddIPAddressFilter struct {
XMLName string `xml:"wsdl:AddIPAddressFilter"`
IPAddressFilter onvif.IPAddressFilter `xml:"wsdl:IPAddressFilter"`
}
type AddIPAddressFilterResponse struct {
}
type RemoveIPAddressFilter struct {
XMLName string `xml:"wsdl:RemoveIPAddressFilter"`
IPAddressFilter onvif.IPAddressFilter `xml:"onvif:IPAddressFilter"`
}
type RemoveIPAddressFilterResponse struct {
}
type GetAccessPolicy struct {
XMLName string `xml:"wsdl:GetAccessPolicy"`
}
type GetAccessPolicyResponse struct {
PolicyFile onvif.BinaryData
}
type SetAccessPolicy struct {
XMLName string `xml:"wsdl:SetAccessPolicy"`
PolicyFile onvif.BinaryData `xml:"wsdl:PolicyFile"`
}
type SetAccessPolicyResponse struct {
}
type CreateCertificate struct {
XMLName string `xml:"wsdl:CreateCertificate"`
CertificateID xsd.Token `xml:"wsdl:CertificateID,omitempty"`
Subject string `xml:"wsdl:Subject,omitempty"`
ValidNotBefore xsd.DateTime `xml:"wsdl:ValidNotBefore,omitempty"`
ValidNotAfter xsd.DateTime `xml:"wsdl:ValidNotAfter,omitempty"`
}
type CreateCertificateResponse struct {
NvtCertificate onvif.Certificate
}
type GetCertificates struct {
XMLName string `xml:"wsdl:GetCertificates"`
}
type GetCertificatesResponse struct {
NvtCertificate onvif.Certificate
}
type GetCertificatesStatus struct {
XMLName string `xml:"wsdl:GetCertificatesStatus"`
}
type GetCertificatesStatusResponse struct {
CertificateStatus onvif.CertificateStatus
}
type SetCertificatesStatus struct {
XMLName string `xml:"wsdl:SetCertificatesStatus"`
CertificateStatus onvif.CertificateStatus `xml:"wsdl:CertificateStatus"`
}
type SetCertificatesStatusResponse struct {
}
//TODO: List of CertificateID
type DeleteCertificates struct {
XMLName string `xml:"wsdl:DeleteCertificates"`
CertificateID xsd.Token `xml:"wsdl:CertificateID"`
}
type DeleteCertificatesResponse struct {
}
//TODO: Откуда onvif:data = cid:21312413412
type GetPkcs10Request struct {
XMLName string `xml:"wsdl:GetPkcs10Request"`
CertificateID xsd.Token `xml:"wsdl:CertificateID"`
Subject xsd.String `xml:"wsdl:Subject"`
Attributes onvif.BinaryData `xml:"wsdl:Attributes"`
}
type GetPkcs10RequestResponse struct {
Pkcs10Request onvif.BinaryData
}
//TODO: one or more NTVCertificate
type LoadCertificates struct {
XMLName string `xml:"wsdl:LoadCertificates"`
NVTCertificate onvif.Certificate `xml:"wsdl:NVTCertificate"`
}
type LoadCertificatesResponse struct {
}
type GetClientCertificateMode struct {
XMLName string `xml:"wsdl:GetClientCertificateMode"`
}
type GetClientCertificateModeResponse struct {
Enabled xsd.Boolean
}
type SetClientCertificateMode struct {
XMLName string `xml:"wsdl:SetClientCertificateMode"`
Enabled xsd.Boolean `xml:"wsdl:Enabled"`
}
type SetClientCertificateModeResponse struct {
}
type GetRelayOutputs struct {
XMLName string `xml:"wsdl:GetRelayOutputs"`
}
type GetRelayOutputsResponse struct {
RelayOutputs onvif.RelayOutput
}
type SetRelayOutputSettings struct {
XMLName string `xml:"wsdl:SetRelayOutputSettings"`
RelayOutputToken onvif.ReferenceToken `xml:"wsdl:RelayOutputToken"`
Properties onvif.RelayOutputSettings `xml:"wsdl:Properties"`
}
type SetRelayOutputSettingsResponse struct {
}
type SetRelayOutputState struct {
XMLName string `xml:"wsdl:SetRelayOutputState"`
RelayOutputToken onvif.ReferenceToken `xml:"wsdl:RelayOutputToken"`
LogicalState onvif.RelayLogicalState `xml:"wsdl:LogicalState"`
}
type SetRelayOutputStateResponse struct {
}
type SendAuxiliaryCommand struct {
XMLName string `xml:"wsdl:SendAuxiliaryCommand"`
AuxiliaryCommand onvif.AuxiliaryData `xml:"wsdl:AuxiliaryCommand"`
}
type SendAuxiliaryCommandResponse struct {
AuxiliaryCommandResponse onvif.AuxiliaryData
}
type GetCACertificates struct {
XMLName string `xml:"wsdl:GetCACertificates"`
}
type GetCACertificatesResponse struct {
CACertificate onvif.Certificate
}
//TODO: one or more CertificateWithPrivateKey
type LoadCertificateWithPrivateKey struct {
XMLName string `xml:"wsdl:LoadCertificateWithPrivateKey"`
CertificateWithPrivateKey onvif.CertificateWithPrivateKey `xml:"wsdl:CertificateWithPrivateKey"`
}
type LoadCertificateWithPrivateKeyResponse struct {
}
type GetCertificateInformation struct {
XMLName string `xml:"wsdl:GetCertificateInformation"`
CertificateID xsd.Token `xml:"wsdl:CertificateID"`
}
type GetCertificateInformationResponse struct {
CertificateInformation onvif.CertificateInformation
}
type LoadCACertificates struct {
XMLName string `xml:"wsdl:LoadCACertificates"`
CACertificate onvif.Certificate `xml:"wsdl:CACertificate"`
}
type LoadCACertificatesResponse struct {
}
type CreateDot1XConfiguration struct {
XMLName string `xml:"wsdl:CreateDot1XConfiguration"`
Dot1XConfiguration onvif.Dot1XConfiguration `xml:"wsdl:Dot1XConfiguration"`
}
type CreateDot1XConfigurationResponse struct {
}
type SetDot1XConfiguration struct {
XMLName string `xml:"wsdl:SetDot1XConfiguration"`
Dot1XConfiguration onvif.Dot1XConfiguration `xml:"wsdl:Dot1XConfiguration"`
}
type SetDot1XConfigurationResponse struct {
}
type GetDot1XConfiguration struct {
XMLName string `xml:"wsdl:GetDot1XConfiguration"`
Dot1XConfigurationToken onvif.ReferenceToken `xml:"wsdl:Dot1XConfigurationToken"`
}
type GetDot1XConfigurationResponse struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
type GetDot1XConfigurations struct {
XMLName string `xml:"wsdl:GetDot1XConfigurations"`
}
type GetDot1XConfigurationsResponse struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
//TODO: Zero or more Dot1XConfigurationToken
type DeleteDot1XConfiguration struct {
XMLName string `xml:"wsdl:DeleteDot1XConfiguration"`
Dot1XConfigurationToken onvif.ReferenceToken `xml:"wsdl:Dot1XConfigurationToken"`
}
type DeleteDot1XConfigurationResponse struct {
}
type GetDot11Capabilities struct {
XMLName string `xml:"wsdl:GetDot11Capabilities"`
}
type GetDot11CapabilitiesResponse struct {
Capabilities onvif.Dot11Capabilities
}
type GetDot11Status struct {
XMLName string `xml:"wsdl:GetDot11Status"`
InterfaceToken onvif.ReferenceToken `xml:"wsdl:InterfaceToken"`
}
type GetDot11StatusResponse struct {
Status onvif.Dot11Status
}
type ScanAvailableDot11Networks struct {
XMLName string `xml:"wsdl:ScanAvailableDot11Networks"`
InterfaceToken onvif.ReferenceToken `xml:"wsdl:InterfaceToken"`
}
type ScanAvailableDot11NetworksResponse struct {
Networks onvif.Dot11AvailableNetworks
}
type GetSystemUris struct {
XMLName string `xml:"wsdl:GetSystemUris"`
}
type GetSystemUrisResponse struct {
SystemLogUris onvif.SystemLogUriList
SupportInfoUri xsd.AnyURI
SystemBackupUri xsd.AnyURI
Extension xsd.AnyType
}
type StartFirmwareUpgrade struct {
XMLName string `xml:"wsdl:StartFirmwareUpgrade"`
}
type StartFirmwareUpgradeResponse struct {
UploadUri xsd.AnyURI
UploadDelay xsd.Duration
ExpectedDownTime xsd.Duration
}
type StartSystemRestore struct {
XMLName string `xml:"wsdl:StartSystemRestore"`
}
type StartSystemRestoreResponse struct {
UploadUri xsd.AnyURI
ExpectedDownTime xsd.Duration
}
type GetStorageConfigurations struct {
XMLName string `xml:"wsdl:GetStorageConfigurations"`
}
type GetStorageConfigurationsResponse struct {
StorageConfigurations StorageConfiguration
}
type CreateStorageConfiguration struct {
XMLName string `xml:"wsdl:CreateStorageConfiguration"`
StorageConfiguration StorageConfigurationData
}
type CreateStorageConfigurationResponse struct {
Token onvif.ReferenceToken
}
type GetStorageConfiguration struct {
XMLName string `xml:"wsdl:GetStorageConfiguration"`
Token onvif.ReferenceToken `xml:"wsdl:Token"`
}
type GetStorageConfigurationResponse struct {
StorageConfiguration StorageConfiguration
}
type SetStorageConfiguration struct {
XMLName string `xml:"wsdl:SetStorageConfiguration"`
StorageConfiguration StorageConfiguration `xml:"wsdl:StorageConfiguration"`
}
type SetStorageConfigurationResponse struct {
}
type DeleteStorageConfiguration struct {
XMLName string `xml:"wsdl:DeleteStorageConfiguration"`
Token onvif.ReferenceToken `xml:"wsdl:Token"`
}
type DeleteStorageConfigurationResponse struct {
}
type GetGeoLocation struct {
XMLName string `xml:"wsdl:GetGeoLocation"`
}
type GetGeoLocationResponse struct {
Location onvif.LocationEntity
}
//TODO: one or more Location
type SetGeoLocation struct {
XMLName string `xml:"wsdl:SetGeoLocation"`
Location onvif.LocationEntity `xml:"wsdl:Location"`
}
type SetGeoLocationResponse struct {
}
type DeleteGeoLocation struct {
XMLName string `xml:"wsdl:DeleteGeoLocation"`
Location onvif.LocationEntity `xml:"wsdl:Location"`
}
type DeleteGeoLocationResponse struct {
}