Я полностью застрял с ONVIF аутентификацией. Я думаю, что перепробовал все или, по крайней мере, почти все, и я не нахожу достаточно информации в Интернете. Я создал клиент-заглушку с помощью svcutil, мой код для аутентификации (один из них, потому что я много чего пробовал):
string uri = "http://140.0.22.39/onvif/services";
EndpointAddress serviceAddressPrueba = new EndpointAddress(uri);
HttpTransportBindingElement httpBinding = new HttpTransportBindingElement();
httpBinding.AuthenticationScheme = AuthenticationSchemes.Digest;
var messegeElement = new TextMessageEncodingBindingElement();
messegeElement.MessageVersion = MessageVersion.CreateVersion(EnvelopeVersion.Soap12, AddressingVersion.None);
CustomBinding bindprueba = new CustomBinding(messegeElement, httpBinding);
DeviceClient clientprueba = new DeviceClient(bindprueba, serviceAddressPrueba);
string passwordDigestBase64;
//HERE I PUT THE CODE TO ENCRYPT THE PASSWORD.
PasswordDigestBehavior behavior1 = new PasswordDigestBehavior("root",passwordDigestBase64);
clientprueba.Endpoint.Behaviors.Add(behavior1);
string d1;
string d2;
string d3;
string d4;
clientprueba.GetDeviceInformation(out d1, out d2, out d3, out d4);
После этого возникает следующая ошибка:
{"The remote server returned an unexpected response: (400) Bad Request."}
Я буду очень, очень признателен, если вы поможете мне с любой информацией, чтобы решить эту проблему.