Simple Object Access Protocol)
OpenSSL SSL is the Secure Socket Layer (Secure Sockets Layer Protocol)
Nvr (network video recorder)
General coding process:
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 () function failed! \ N ");
Return-1;
}
Soap_set_namespaces (soap, namespaces );
// Use the soap_wsse_add_usernametokendigest function for user name and password authentication
// Next we can call the protocol functions provided by onvif.
The APIS provided by onvif are listed as follows:
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 _ createpullpointsubpoint
Soap_call ___ Dee _ geteventproperties
Soap_send ___ denc _ Policy
Soap_recv ___ denc _ Policy
Soap_recv ___ denc _ Policy
Soap_call ___ denf _ getcurrentmessage
Soap_call ___ Depp _ getmessages
Soap_call ___ Depp _ destroypullpoint
Soap_send ___ Depp _ paiy
Soap_recv ___ Depp _ 127y
Soap_call ___ Depps _ pullmessages
Soap_call ___ Depps _ setsynchronizationpoint
Soap_call ___ depsm _ renew
Soap_call ___ depsm _ unsubscribe
Soap_call ___ depsm _ pausesubscription
Soap_call ___ depsm _ resumesub.pdf
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 _ getnetworkdefagateway Gateway
Soap_call ___ TDS _ setnetworkdefagateway Gateway
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 _ assumereceiver
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