onvif协议学习笔记

简单对象访问协议(Simple Object Access Protocol)

OpenSSL     SSL是Secure Socket Layer(安全套接层协议


NVR(Network Video Recorder即网络硬盘录像机)



大致编码流程:

struct soap *soap;

char *username = "admin";
char *password = "12345";
const char *soap_endpoint = "http://192.168.1.170/onvif/device_service";
const char *soap_action = NULL;

soap = soap_new();
if( soap == NULL )
{
printf( "soap_new()函数失败!\n" );
return -1;
}
soap_set_namespaces( soap, namespaces );

//使用函数soap_wsse_add_UsernameTokenDigest进行用户名与密码认证

//紧接着下面就可以进行ONVIF提供的协议函数的调用了。


onvif提供的API函数罗列:

SOAP_FMAC5 int SOAP_FMAC6 soap_call___daae__GetSupportedAnalyticsModules

soap_call___daae__CreateAnalyticsModules

soap_call___daae__DeleteAnalyticsModules

soap_call___daae__GetAnalyticsModules

soap_call___daae__ModifyAnalyticsModules

soap_call___dare__GetSupportedRules

soap_call___dare__CreateRules

soap_call___dare__DeleteRules

soap_call___dare__GetRules

soap_call___dare__ModifyRules

soap_call___decpp__CreatePullPoint

soap_call___dee__GetServiceCapabilities

soap_call___dee__CreatePullPointSubscription

soap_call___dee__GetEventProperties

soap_send___denc__Notify

soap_recv___denc__Notify

soap_recv___denc__Notify

soap_call___denf__GetCurrentMessage

soap_call___depp__GetMessages

soap_call___depp__DestroyPullPoint

soap_send___depp__Notify

soap_recv___depp__Notify

soap_call___depps__PullMessages

soap_call___depps__SetSynchronizationPoint

soap_call___depsm__Renew

soap_call___depsm__Unsubscribe

soap_call___depsm__PauseSubscription

soap_call___depsm__ResumeSubscription

soap_call___desm__Renew

soap_call___desm__Unsubscribe

soap_call___dndl__Probe

soap_call___dnrd__Hello

soap_call___dnrd__Bye

soap_call___tad__GetServiceCapabilities

soap_call___tad__DeleteAnalyticsEngineControl

soap_call___tad__CreateAnalyticsEngineControl

soap_call___tad__SetAnalyticsEngineControl

soap_call___tad__GetAnalyticsEngineControl

soap_call___tad__GetAnalyticsEngineControls

soap_call___tad__GetAnalyticsEngine

soap_call___tad__GetAnalyticsEngines

soap_call___tad__SetVideoAnalyticsConfiguration

soap_call___tad__SetAnalyticsEngineInput

soap_call___tad__GetAnalyticsEngineInput

soap_call___tad__GetAnalyticsEngineInputs

soap_call___tad__GetAnalyticsDeviceStreamUri

soap_call___tad__GetVideoAnalyticsConfiguration

soap_call___tad__CreateAnalyticsEngineInputs

soap_call___tad__DeleteAnalyticsEngineInputs

soap_call___tad__GetAnalyticsState

soap_call___tds__GetServices

soap_call___tds__GetServiceCapabilities

soap_call___tds__GetDeviceInformation

soap_call___tds__SetSystemDateAndTime

soap_call___tds__GetSystemDateAndTime

soap_call___tds__SetSystemFactoryDefault

soap_call___tds__UpgradeSystemFirmware

soap_call___tds__SystemReboot

soap_call___tds__RestoreSystem

soap_call___tds__GetSystemBackup

soap_call___tds__GetSystemLog

soap_call___tds__GetSystemSupportInformation

soap_call___tds__GetScopes

soap_call___tds__SetScopes

soap_call___tds__AddScopes

soap_call___tds__RemoveScopes

soap_call___tds__GetDiscoveryMode

soap_call___tds__SetDiscoveryMode

soap_call___tds__GetRemoteDiscoveryMode

soap_call___tds__SetRemoteDiscoveryMode

soap_call___tds__GetDPAddresses

soap_call___tds__GetEndpointReference

soap_call___tds__GetRemoteUser

soap_call___tds__SetRemoteUser

soap_call___tds__GetUsers

soap_call___tds__CreateUsers

soap_call___tds__DeleteUsers

soap_call___tds__SetUser

soap_call___tds__GetWsdlUrl

soap_call___tds__GetCapabilities

soap_call___tds__SetDPAddresses

soap_call___tds__GetHostname

soap_call___tds__SetHostname

soap_call___tds__SetHostnameFromDHCP

soap_call___tds__GetDNS

soap_call___tds__SetDNS

soap_call___tds__GetNTP

soap_call___tds__SetNTP

soap_call___tds__GetDynamicDNS

soap_call___tds__SetDynamicDNS

soap_call___tds__GetNetworkInterfaces

soap_call___tds__SetNetworkInterfaces

soap_call___tds__GetNetworkProtocols

soap_call___tds__SetNetworkProtocols

soap_call___tds__GetNetworkDefaultGateway

soap_call___tds__SetNetworkDefaultGateway

soap_call___tds__GetZeroConfiguration

soap_call___tds__SetZeroConfiguration

soap_call___tds__GetIPAddressFilter

soap_call___tds__SetIPAddressFilter

soap_call___tds__AddIPAddressFilter

soap_call___tds__RemoveIPAddressFilter

soap_call___tds__GetAccessPolicy

soap_call___tds__SetAccessPolicy

soap_call___tds__CreateCertificate

soap_call___tds__GetCertificates

soap_call___tds__GetCertificatesStatus

soap_call___tds__SetCertificatesStatus

soap_call___tds__DeleteCertificates

soap_call___tds__GetPkcs10Request

soap_call___tds__LoadCertificates

soap_call___tds__GetClientCertificateMode

soap_call___tds__SetClientCertificateMode

soap_call___tds__GetRelayOutputs

soap_call___tds__SetRelayOutputSettings

soap_call___tds__SetRelayOutputState

soap_call___tds__SendAuxiliaryCommand

soap_call___tds__GetCACertificates

soap_call___tds__LoadCertificateWithPrivateKey

soap_call___tds__GetCertificateInformation

soap_call___tds__LoadCACertificates

soap_call___tds__CreateDot1XConfiguration

soap_call___tds__SetDot1XConfiguration

soap_call___tds__GetDot1XConfiguration

soap_call___tds__GetDot1XConfigurations

soap_call___tds__DeleteDot1XConfiguration

soap_call___tds__GetDot11Capabilities

soap_call___tds__GetDot11Status

soap_call___tds__ScanAvailableDot11Networks

soap_call___tds__GetSystemUris

soap_call___tds__StartFirmwareUpgrade

soap_call___tds__StartSystemRestore

soap_call___timg__GetServiceCapabilities

soap_call___timg__GetImagingSettings

soap_call___timg__SetImagingSettings

soap_call___timg__GetOptions

soap_call___timg__Move

soap_call___timg__Stop

soap_call___timg__GetStatus

soap_call___timg__GetMoveOptions

soap_call___tls__GetServiceCapabilities

soap_call___tls__GetLayout

soap_call___tls__SetLayout

soap_call___tls__GetDisplayOptions

soap_call___tls__GetPaneConfigurations

soap_call___tls__GetPaneConfiguration

soap_call___tls__SetPaneConfigurations

soap_call___tls__SetPaneConfiguration

soap_call___tls__CreatePaneConfiguration

soap_call___tls__DeletePaneConfiguration

soap_call___tmd__GetServiceCapabilities

soap_call___tmd__GetAudioSources

soap_call___tmd__GetAudioOutputs

soap_call___tmd__GetVideoSources

soap_call___tmd__GetVideoOutputs

soap_call___tmd__GetVideoSourceConfiguration

soap_call___tmd__GetVideoOutputConfiguration

soap_call___tmd__GetAudioSourceConfiguration

soap_call___tmd__GetAudioOutputConfiguration

soap_call___tmd__SetVideoSourceConfiguration

soap_call___tmd__SetVideoOutputConfiguration

soap_call___tmd__SetAudioSourceConfiguration

soap_call___tmd__SetAudioOutputConfiguration

soap_call___tmd__GetVideoSourceConfigurationOptions

soap_call___tmd__GetVideoOutputConfigurationOptions

soap_call___tmd__GetAudioSourceConfigurationOptions

soap_call___tmd__GetAudioOutputConfigurationOptions

soap_call___tmd__GetRelayOutputs

soap_call___tmd__SetRelayOutputSettings

soap_call___tmd__SetRelayOutputState

soap_call___tptz__GetServiceCapabilities

soap_call___tptz__GetConfigurations

soap_call___tptz__GetPresets

soap_call___tptz__SetPreset

soap_call___tptz__RemovePreset

soap_call___tptz__GotoPreset

soap_call___tptz__GetStatus

soap_call___tptz__GetConfiguration

soap_call___tptz__GetNodes

soap_call___tptz__GetNode

soap_call___tptz__SetConfiguration

soap_call___tptz__GetConfigurationOptions

soap_call___tptz__GotoHomePosition

soap_call___tptz__SetHomePosition

soap_call___tptz__ContinuousMove

soap_call___tptz__RelativeMove

soap_call___tptz__SendAuxiliaryCommand

soap_call___tptz__AbsoluteMove

soap_call___tptz__Stop

soap_call___trc__GetServiceCapabilities

soap_call___trc__CreateRecording

soap_call___trc__DeleteRecording

soap_call___trc__GetRecordings

soap_call___trc__SetRecordingConfiguration

soap_call___trc__GetRecordingConfiguration

soap_call___trc__CreateTrack

soap_call___trc__DeleteTrack

soap_call___trc__GetTrackConfiguration

soap_call___trc__SetTrackConfiguration

soap_call___trc__CreateRecordingJob

soap_call___trc__DeleteRecordingJob

soap_call___trc__GetRecordingJobs

soap_call___trc__SetRecordingJobConfiguration

soap_call___trc__GetRecordingJobConfiguration

soap_call___trc__SetRecordingJobMode

soap_call___trc__GetRecordingJobState

soap_call___trp__GetServiceCapabilities

soap_call___trp__GetReplayUri

soap_call___trp__GetReplayConfiguration

soap_call___trp__SetReplayConfiguration

soap_call___trt__GetServiceCapabilities

soap_call___trt__GetVideoSources

soap_call___trt__GetAudioSources

soap_call___trt__GetAudioOutputs

soap_call___trt__CreateProfile

soap_call___trt__GetProfile

soap_call___trt__GetProfiles

soap_call___trt__AddVideoEncoderConfiguration

soap_call___trt__AddVideoSourceConfiguration

soap_call___trt__AddAudioEncoderConfiguration

soap_call___trt__AddAudioSourceConfiguration

soap_call___trt__AddPTZConfiguration

soap_call___trt__AddVideoAnalyticsConfiguration

soap_call___trt__AddMetadataConfiguration

soap_call___trt__AddAudioDecoderConfiguration

soap_call___trt__AddAudioOutputConfiguration

soap_call___trt__RemoveVideoEncoderConfiguration

soap_call___trt__RemoveVideoSourceConfiguration

soap_call___trt__RemoveAudioEncoderConfiguration

soap_call___trt__RemoveAudioSourceConfiguration

soap_call___trt__RemovePTZConfiguration

soap_call___trt__RemoveVideoAnalyticsConfiguration

soap_call___trt__RemoveMetadataConfiguration

soap_call___trt__RemoveAudioOutputConfiguration

soap_call___trt__RemoveAudioDecoderConfiguration

soap_call___trt__DeleteProfile

soap_call___trt__GetVideoSourceConfigurations

soap_call___trt__GetVideoEncoderConfigurations

soap_call___trt__GetAudioSourceConfigurations

soap_call___trt__GetAudioEncoderConfigurations

soap_call___trt__GetVideoAnalyticsConfigurations

soap_call___trt__GetMetadataConfigurations

soap_call___trt__GetAudioOutputConfigurations

soap_call___trt__GetAudioDecoderConfigurations

soap_call___trt__GetVideoSourceConfiguration

soap_call___trt__GetVideoEncoderConfiguration

soap_call___trt__GetAudioSourceConfiguration

soap_call___trt__GetAudioEncoderConfiguration

soap_call___trt__GetVideoAnalyticsConfiguration

soap_call___trt__GetMetadataConfiguration

soap_call___trt__GetAudioOutputConfiguration

soap_call___trt__GetAudioDecoderConfiguration

soap_call___trt__GetCompatibleVideoEncoderConfigurations

soap_call___trt__GetCompatibleVideoSourceConfigurations

soap_call___trt__GetCompatibleAudioEncoderConfigurations

soap_call___trt__GetCompatibleAudioSourceConfigurations

soap_call___trt__GetCompatibleVideoAnalyticsConfigurations

soap_call___trt__GetCompatibleMetadataConfigurations

soap_call___trt__GetCompatibleAudioOutputConfigurations

soap_call___trt__GetCompatibleAudioDecoderConfigurations

soap_call___trt__SetVideoSourceConfiguration

soap_call___trt__SetVideoEncoderConfiguration

soap_call___trt__SetAudioSourceConfiguration

soap_call___trt__SetAudioEncoderConfiguration

soap_call___trt__SetVideoAnalyticsConfiguration

soap_call___trt__SetMetadataConfiguration

soap_call___trt__SetAudioOutputConfiguration

soap_call___trt__SetAudioDecoderConfiguration

soap_call___trt__GetVideoSourceConfigurationOptions

soap_call___trt__GetVideoEncoderConfigurationOptions

soap_call___trt__GetAudioSourceConfigurationOptions

soap_call___trt__GetAudioEncoderConfigurationOptions

soap_call___trt__GetMetadataConfigurationOptions

soap_call___trt__GetAudioOutputConfigurationOptions

soap_call___trt__GetAudioDecoderConfigurationOptions

soap_call___trt__GetGuaranteedNumberOfVideoEncoderInstances

soap_call___trt__GetStreamUri

soap_call___trt__StartMulticastStreaming

soap_call___trt__StopMulticastStreaming

soap_call___trt__SetSynchronizationPoint

soap_call___trt__GetSnapshotUri

soap_call___trv__GetServiceCapabilities

soap_call___trv__GetReceivers

soap_call___trv__GetReceiver

soap_call___trv__CreateReceiver

soap_call___trv__DeleteReceiver

soap_call___trv__ConfigureReceiver

soap_call___trv__SetReceiverMode

soap_call___trv__GetReceiverState

soap_call___tse__GetServiceCapabilities

soap_call___tse__GetRecordingSummary

soap_call___tse__GetRecordingInformation

soap_call___tse__GetMediaAttributes

soap_call___tse__FindRecordings

soap_call___tse__GetRecordingSearchResults

soap_call___tse__FindEvents

soap_call___tse__GetEventSearchResults

soap_call___tse__FindPTZPosition

soap_call___tse__GetPTZPositionSearchResults

soap_call___tse__GetSearchState

soap_call___tse__EndSearch

soap_call___tse__FindMetadata

soap_call___tse__GetMetadataSearchResults





你可能感兴趣的:(学习笔记)