Sie müssen dort nur eine HTTP-Anfrage senden, da SOAP über HTTP arbeitet. Zum Beispiel über CURL würde es so aussehen:
curl 10.10.10.10:1234/onvif/device_service -d '<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope"><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><GetSystemDateAndTime xmlns="http://www.onvif.org/ver10/device/wsdl"/></s:Body></s:Envelope>'
Als Ergebnis erhalten Sie so etwas wie dies mit einigen Header bekommen: inklusive
<tds:GetSystemDateAndTimeResponse>
<tds:SystemDateAndTime>
<tt:DateTimeType>Manual</tt:DateTimeType>
<tt:DaylightSavings>false</tt:DaylightSavings>
<tt:TimeZone>
<tt:TZ>MoroccoStandardTime0</tt:TZ>
</tt:TimeZone>
<tt:UTCDateTime>
<tt:Time>
<tt:Hour>10</tt:Hour>
<tt:Minute>5</tt:Minute>
<tt:Second>35</tt:Second>
</tt:Time>
<tt:Date>
<tt:Year>2014</tt:Year>
<tt:Month>3</tt:Month>
<tt:Day>14</tt:Day>
</tt:Date>
</tt:UTCDateTime>
</tds:SystemDateAndTime>
</tds:GetSystemDateAndTimeResponse>
Und auch vergessen Sie nicht, dass die meisten der Aktionen erfordert Genehmigung Header in die Anfrage.
AUTHENTICATION
In ONVIF Application Programmer's Guide auf Seite 35 beschrieben, wie Auth gemacht wird. Zum Beispiel sieht es so aus:
<s:Header>
<Security s:mustUnderstand="1" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<UsernameToken>
<Username>admin</Username>
<Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">MuMnyh3wTxGWOCc=</Password>
<Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">8Qqve9KCkNhQAAAAAAA==</Nonce>
<Created xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-03-04T14:03:05.130Z</Created>
</UsernameToken>
</Security>
</s:Header>
Ich weiß, dass GetSystemDateAndTimeResponse keine Authentifizierung erfordert. Sie haben ein Curl-Beispiel für einen Befehl, der Benutzername/Passwort erfordert? –
@RoundSparrowhilltx yap, nur einen Moment, ich werde meine Post aktualisieren ... – Kin
Cool, danke. –