Files
onvif/Device/types.go
2018-04-03 12:32:56 +03:00

1134 lines
15 KiB
Go

package Device
import (
"github.com/yakovlevdmv/goonvif/xsd"
"github.com/yakovlevdmv/goonvif/xsd/onvif"
)
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
}
type StorageConfigurationData struct {
Type xsd.String `xml:"type,attr"`
LocalPath xsd.AnyURI
StorageUri xsd.AnyURI
User UserCredential
Extension xsd.AnyURI
}
type UserCredential struct {
UserName xsd.String
Password xsd.String
Extension xsd.AnyType
}
//Device main types
type GetServices struct {
IncludeCapability xsd.Boolean
}
type GetServicesResponse struct {
Service Service
}
type GetServiceCapabilities struct {
}
type GetServiceCapabilitiesResponse struct {
Capabilities DeviceServiceCapabilities
}
type GetDeviceInformation struct {
XMLName string `xml:"wsdl:GetDeviceInformation"`
nmsp string `xml:"wsdl:"`
}
type GetDeviceInformationResponse struct {
Manufacturer string
Model string
FirmwareVersion string
SerialNumber string
HardwareId string
}
type SetSystemDateAndTime struct {
DateTimeType onvif.SetDateTimeType
DaylightSavings xsd.Boolean
TimeZone onvif.TimeZone
UTCDateTime xsd.DateTime
}
type SetSystemDateAndTimeResponse struct {
}
type GetSystemDateAndTime struct {
}
type GetSystemDateAndTimeResponse struct {
SystemDateAndTime onvif.SystemDateTime
}
type SetSystemFactoryDefault struct {
FactoryDefault onvif.FactoryDefaultType
}
type SetSystemFactoryDefaultResponse struct {
}
type UpgradeSystemFirmware struct {
Firmware onvif.AttachmentData
}
type UpgradeSystemFirmwareResponse struct {
Message string
}
type SystemReboot struct {
}
type SystemRebootResponse struct {
Message string
}
type RestoreSystem struct {
BackupFiles onvif.BackupFile
}
type RestoreSystemResponse struct {
}
type GetSystemBackup struct {
}
type GetSystemBackupResponse struct {
BackupFiles onvif.BackupFile
}
type GetSystemLog struct {
LogType onvif.SystemLogType
}
type GetSystemLogResponse struct {
SystemLog onvif.SystemLog
}
type GetSystemSupportInformation struct {
}
type GetSystemSupportInformationResponse struct {
SupportInformation onvif.SupportInformation
}
type GetScopes struct {
}
type GetScopesResponse struct {
Scopes onvif.Scope
}
type SetScopes struct {
Scopes xsd.AnyURI
}
type SetScopesResponse struct {
}
type AddScopes struct {
ScopeItem xsd.AnyURI
}
type AddScopesResponse struct {
}
type RemoveScopes struct {
ScopeItem xsd.AnyURI
}
type RemoveScopesResponse struct {
ScopeItem xsd.AnyURI
}
type GetDiscoveryMode struct {
}
type GetDiscoveryModeResponse struct {
DiscoveryMode onvif.DiscoveryMode
}
type SetDiscoveryMode struct {
DiscoveryMode onvif.DiscoveryMode
}
type SetDiscoveryModeResponse struct {
}
type GetRemoteDiscoveryMode struct {
}
type GetRemoteDiscoveryModeResponse struct {
RemoteDiscoveryMode onvif.DiscoveryMode
}
type SetRemoteDiscoveryMode struct {
RemoteDiscoveryMode onvif.DiscoveryMode
}
type SetRemoteDiscoveryModeResponse struct {
}
type GetDPAddresses struct {
}
type GetDPAddressesResponse struct {
DPAddress onvif.NetworkHost
}
type SetDPAddresses struct {
DPAddress onvif.NetworkHost
}
type SetDPAddressesResponse struct {
}
type GetEndpointReference struct {
}
type GetEndpointReferenceResponse struct {
GUID string
}
type GetRemoteUser struct {
}
type GetRemoteUserResponse struct {
RemoteUser onvif.RemoteUser
}
type SetRemoteUser struct {
RemoteUser onvif.RemoteUser
}
type SetRemoteUserResponse struct {
}
type GetUsers struct {
}
type GetUsersResponse struct {
User onvif.User
}
type CreateUsers struct {
User onvif.User
}
type CreateUsersResponse struct {
}
type DeleteUsers struct {
Username string
}
type DeleteUsersResponse struct {
}
type SetUser struct {
User onvif.User
}
type SetUserResponse struct {
}
type GetWsdlUrl struct {
}
type GetWsdlUrlResponse struct {
WsdlUrl xsd.AnyURI
}
type GetCapabilities struct {
Category onvif.CapabilityCategory
}
type GetCapabilitiesResponse struct {
Capabilities onvif.Capabilities
}
type GetHostname struct {
}
type GetHostnameResponse struct {
HostnameInformation onvif.HostnameInformation
}
type SetHostname struct {
Name xsd.Token
}
type SetHostnameResponse struct {
}
type SetHostnameFromDHCP struct {
FromDHCP xsd.Boolean
}
type SetHostnameFromDHCPResponse struct {
RebootNeeded xsd.Boolean
}
type GetDNS struct {
}
type GetDNSResponse struct {
DNSInformation onvif.DNSInformation
}
type SetDNS struct {
FromDHCP xsd.Boolean
SearchDomain xsd.Token
DNSManual onvif.IPAddress
}
type SetDNSResponse struct {
}
type GetNTP struct {
}
type GetNTPResponse struct {
NTPInformation onvif.NTPInformation
}
type SetNTP struct {
FromDHCP xsd.Boolean
NTPManual onvif.NetworkHost
}
type SetNTPResponse struct {
}
type GetDynamicDNS struct {
}
type GetDynamicDNSResponse struct {
DynamicDNSInformation onvif.DynamicDNSInformation
}
type SetDynamicDNS struct {
Type onvif.DynamicDNSType
Name onvif.DNSName
TTL xsd.Duration
}
type SetDynamicDNSResponse struct {
}
type GetNetworkInterfaces struct {
}
type GetNetworkInterfacesResponse struct {
NetworkInterfaces onvif.NetworkInterface
}
type SetNetworkInterfaces struct {
InterfaceToken onvif.ReferenceToken
NetworkInterface onvif.NetworkInterfaceSetConfiguration
}
type SetNetworkInterfacesResponse struct {
RebootNeeded xsd.Boolean
}
type GetNetworkProtocols struct {
}
type GetNetworkProtocolsResponse struct {
NetworkProtocols onvif.NetworkProtocol
}
type SetNetworkProtocols struct {
NetworkProtocols onvif.NetworkProtocol
}
type SetNetworkProtocolsResponse struct {
}
type GetNetworkDefaultGateway struct {
}
type GetNetworkDefaultGatewayResponse struct {
NetworkGateway onvif.NetworkGateway
}
type SetNetworkDefaultGateway struct {
IPv4Address onvif.IPv4Address
IPv6Address onvif.IPv6Address
}
type SetNetworkDefaultGatewayResponse struct {
}
type GetZeroConfiguration struct {
}
type GetZeroConfigurationResponse struct {
ZeroConfiguration onvif.NetworkZeroConfiguration
}
type SetZeroConfiguration struct {
InterfaceToken onvif.ReferenceToken
Enabled xsd.Boolean
}
type SetZeroConfigurationResponse struct {
}
type GetIPAddressFilter struct {
}
type GetIPAddressFilterResponse struct {
IPAddressFilter onvif.IPAddressFilter
}
type SetIPAddressFilter struct {
IPAddressFilter onvif.IPAddressFilter
}
type SetIPAddressFilterResponse struct {
}
type AddIPAddressFilter struct {
IPAddressFilter onvif.IPAddressFilter
}
type AddIPAddressFilterResponse struct {
}
type RemoveIPAddressFilter struct {
IPAddressFilter onvif.IPAddressFilter
}
type RemoveIPAddressFilterResponse struct {
}
type GetAccessPolicy struct {
}
type GetAccessPolicyResponse struct {
PolicyFile onvif.BinaryData
}
type SetAccessPolicy struct {
PolicyFile onvif.BinaryData
}
type SetAccessPolicyResponse struct {
}
type CreateCertificate struct {
CertificateID xsd.Token
Subject string
ValidNotBefore xsd.DateTime
ValidNotAfter xsd.DateTime
}
type CreateCertificateResponse struct {
NvtCertificate onvif.Certificate
}
type GetCertificates struct {
}
type GetCertificatesResponse struct {
NvtCertificate onvif.Certificate
}
type GetCertificatesStatus struct {
}
type GetCertificatesStatusResponse struct {
CertificateStatus onvif.CertificateStatus
}
type SetCertificatesStatus struct {
CertificateStatus onvif.CertificateStatus
}
type SetCertificatesStatusResponse struct {
}
type DeleteCertificates struct {
CertificateID xsd.Token
}
type DeleteCertificatesResponse struct {
}
type GetPkcs10Request struct {
CertificateID xsd.Token
Subject xsd.String
Attributes onvif.BinaryData
}
type GetPkcs10RequestResponse struct {
Pkcs10Request onvif.BinaryData
}
type LoadCertificates struct {
NVTCertificate onvif.Certificate
}
type LoadCertificatesResponse struct {
}
type GetClientCertificateMode struct {
}
type GetClientCertificateModeResponse struct {
Enabled xsd.Boolean
}
type SetClientCertificateMode struct {
Enabled xsd.Boolean
}
type SetClientCertificateModeResponse struct {
}
type GetRelayOutputs struct {
}
type GetRelayOutputsResponse struct {
RelayOutputs onvif.RelayOutput
}
type SetRelayOutputSettings struct {
RelayOutputToken onvif.ReferenceToken
Properties onvif.RelayOutputSettings
}
type SetRelayOutputSettingsResponse struct {
}
type SetRelayOutputState struct {
RelayOutputToken onvif.ReferenceToken
LogicalState onvif.RelayLogicalState
}
type SetRelayOutputStateResponse struct {
}
type SendAuxiliaryCommand struct {
AuxiliaryCommand onvif.AuxiliaryData
}
type SendAuxiliaryCommandResponse struct {
AuxiliaryCommandResponse onvif.AuxiliaryData
}
type GetCACertificates struct {
}
type GetCACertificatesResponse struct {
CACertificate onvif.Certificate
}
type LoadCertificateWithPrivateKey struct {
CertificateWithPrivateKey onvif.CertificateWithPrivateKey
}
type LoadCertificateWithPrivateKeyResponse struct {
}
type GetCertificateInformation struct {
CertificateID xsd.Token
}
type GetCertificateInformationResponse struct {
CertificateInformation onvif.CertificateInformation
}
type LoadCACertificates struct {
CACertificate onvif.Certificate
}
type LoadCACertificatesResponse struct {
}
type CreateDot1XConfiguration struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
type CreateDot1XConfigurationResponse struct {
}
type SetDot1XConfiguration struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
type SetDot1XConfigurationResponse struct {
}
type GetDot1XConfiguration struct {
Dot1XConfigurationToken onvif.ReferenceToken
}
type GetDot1XConfigurationResponse struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
type GetDot1XConfigurations struct {
}
type GetDot1XConfigurationsResponse struct {
Dot1XConfiguration onvif.Dot1XConfiguration
}
type DeleteDot1XConfiguration struct {
Dot1XConfigurationToken onvif.ReferenceToken
}
type DeleteDot1XConfigurationResponse struct {
}
type GetDot11Capabilities struct {
}
type GetDot11CapabilitiesResponse struct {
Capabilities onvif.Dot11Capabilities
}
type GetDot11Status struct {
InterfaceToken onvif.ReferenceToken
}
type GetDot11StatusResponse struct {
Status onvif.Dot11Status
}
type ScanAvailableDot11Networks struct {
InterfaceToken onvif.ReferenceToken
}
type ScanAvailableDot11NetworksResponse struct {
Networks onvif.Dot11AvailableNetworks
}
type GetSystemUris struct {
}
type GetSystemUrisResponse struct {
SystemLogUris onvif.SystemLogUriList
SupportInfoUri xsd.AnyURI
SystemBackupUri xsd.AnyURI
Extension xsd.AnyType
}
type StartFirmwareUpgrade struct {
}
type StartFirmwareUpgradeResponse struct {
UploadUri xsd.AnyURI
UploadDelay xsd.Duration
ExpectedDownTime xsd.Duration
}
type StartSystemRestore struct {
}
type StartSystemRestoreResponse struct {
UploadUri xsd.AnyURI
ExpectedDownTime xsd.Duration
}
type GetStorageConfigurations struct {
}
type GetStorageConfigurationsResponse struct {
StorageConfigurations StorageConfiguration
}
type CreateStorageConfiguration struct {
StorageConfiguration StorageConfigurationData
}
type CreateStorageConfigurationResponse struct {
Token onvif.ReferenceToken
}
type GetStorageConfiguration struct {
Token onvif.ReferenceToken
}
type GetStorageConfigurationResponse struct {
StorageConfiguration StorageConfiguration
}
type SetStorageConfiguration struct {
StorageConfiguration StorageConfiguration
}
type SetStorageConfigurationResponse struct {
}
type DeleteStorageConfiguration struct {
Token onvif.ReferenceToken
}
type DeleteStorageConfigurationResponse struct {
}
type GetGeoLocation struct {
}
type GetGeoLocationResponse struct {
Location onvif.LocationEntity
}
type SetGeoLocation struct {
Location onvif.LocationEntity
}
type SetGeoLocationResponse struct {
}
type DeleteGeoLocation struct {
Location onvif.LocationEntity
}
type DeleteGeoLocationResponse struct {
}