Подключение к камере по протоколу ONVIF - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь подключиться к камере Pelco Spectra Enhanced с прошивкой 2.13.1.3, используя протокол Onvif со следующим кодом

HttpTransportBindingElement httpTransport = new HttpTransportBindingElement();
            httpTransport.AuthenticationScheme = System.Net.AuthenticationSchemes.Digest;
            binding = new CustomBinding(new TextMessageEncodingBindingElement(MessageVersion.Soap12WSAddressing10, Encoding.UTF8), httpTransport);
            //this.StreamVideoOnVLC(prms);
            try
            {
                DeviceClient device = new DeviceClient(binding, new EndpointAddress(deviceUri.ToString()));
                Service[] services = device.GetServices(false);
                Service xmedia2 = services.FirstOrDefault(s => s.Namespace == "http://www.onvif.org/ver10/media/wsdl");

                if (xmedia2 != null)
                {
                    media = new MediaClient(binding, new EndpointAddress(deviceUri.ToString()));

                    media.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text;
                    media.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password;
                    media.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
                     profiles = media.GetProfiles();
}

Проблема в том, что я получаю «400 неверных запросов»ошибка при попытке получить профили мультимедиа с последней строкой.

Я могу просмотреть камеру в Onvif Device Manager, поэтому камера работает

...