private void OnConnect(object sender, RoutedEventArgs e) { buttonAdd.IsEnabled = false; //buttonLoad.IsEnabled = false; //buttonSave.IsEnabled = false; buttonAction.IsEnabled = false; listBox.Items.Clear(); ///// var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif_device"));onvif/device_service var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); try { var services = device.GetServices(false); var xmedia2 = services.FirstOrDefault(s => s.Namespace == "http://www.onvif.org/ver20/media/wsdl"); if (xmedia2 != null) { listBox.Items.Clear(); media = new onvif.Media2Client(WsdlBinding, new EndpointAddress(xmedia2.XAddr)); media.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; media.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; media.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; try { profiles = media.GetProfiles(null, null); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", System.Windows.MessageBoxButton.OK, MessageBoxImage.Question); /////Console.WriteLine("{0} Second exception caught.", ex.Message ); } if (profiles != null) { foreach (var p in profiles) { listBox.Items.Add(p.Name); } } } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", System.Windows.MessageBoxButton.OK, MessageBoxImage.Question); /////Console.WriteLine("{0} Second exception caught.", ex.Message ); } }
private void TestThis() { // //or "/onvif_device")); try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; var services = device.GetServices(false); } catch (Exception ex) { listBox.Items.Add(address.Text); listBox.Items.Add("GetServices throw an exception:"); listBox.Items.Add(ex.Message); } string Model = ""; string FirmwareVersion = ""; string SerialNumber = ""; string HardwareId = ""; string returnDeviceInformation = ""; try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; returnDeviceInformation = device.GetDeviceInformation(out Model, out FirmwareVersion, out SerialNumber, out HardwareId); } catch (Exception ex) { listBox.Items.Add(address.Text); listBox.Items.Add("GetDeviceInformation throw an exception:"); listBox.Items.Add(ex.Message); } //OnvifVideoSample.device.RelayOutput[] outputnum = device.GetRelayOutputs(); listBox.Items.Add("Device under test: " + returnDeviceInformation); listBox.Items.Add("Model: " + Model); listBox.Items.Add("FW: " + FirmwareVersion); listBox.Items.Add("SerialNumber: " + SerialNumber); listBox.Items.Add(""); listBox.Items.Add("Result for GetSystemLog with \"Access\""); try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; device.SystemLog Log = device.GetSystemLog(OnvifVideoSample.device.SystemLogType.Access); //OnvifVideoSample.device.SystemLogType.Access string output = "Log-String: " + Log.String; listBox.Items.Add(output); if (Log.Binary == null) { listBox.Items.Add("Log-Binary was NULL"); } else { output = "Log-Binary" + Log.Binary; listBox.Items.Add(output); } } catch (Exception ex) { listBox.Items.Add("GetSystemLog with \"Access\" did throw an exception:"); listBox.Items.Add(ex.Message); } listBox.Items.Add(""); listBox.Items.Add(""); listBox.Items.Add("Result for GetSystemLog with \"System\""); try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; device.SystemLog Log = device.GetSystemLog(OnvifVideoSample.device.SystemLogType.System); //OnvifVideoSample.device.SystemLogType.Access string output = "Log-String: " + Log.String; listBox.Items.Add(output); if (Log.Binary == null) { listBox.Items.Add("Log-Binary was NULL"); } else { output = "Log-Binary" + Log.Binary; listBox.Items.Add(output); } } catch (Exception ex) { listBox.Items.Add("GetSystemLog with \"System\" did throw an exception: "); listBox.Items.Add(ex.Message); } listBox.Items.Add(""); listBox.Items.Add(""); listBox.Items.Add("GetSystemSupportInformation TEST: "); try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; OnvifVideoSample.device.SupportInformation supportInfo = device.GetSystemSupportInformation(); listBox.Items.Add("SupportInformation got string: " + supportInfo.String); } catch (Exception ex) { listBox.Items.Add("GetSystemSupportInformation did throw an exception: "); listBox.Items.Add(ex.Message); } listBox.Items.Add(""); listBox.Items.Add(""); listBox.Items.Add("GetSystemBackup TEST: "); try { var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; OnvifVideoSample.device.BackupFile[] backupFile = device.GetSystemBackup(); listBox.Items.Add("BackupFile did return."); } catch (Exception ex) { listBox.Items.Add("GetSystemBackup did throw an exception: "); listBox.Items.Add(ex.Message); } listBox.Items.Add(""); listBox.Items.Add(""); listBox.Items.Add("GetSystemUris TEST: "); try { string SupportInfoUri; string SystemBackupUri; var device = new device.DeviceClient(WsdlBinding, new EndpointAddress("http://" + address.Text + "/onvif/device_service")); device.ClientCredentials.HttpDigest.ClientCredential.UserName = user.Text; device.ClientCredentials.HttpDigest.ClientCredential.Password = password.Password; device.ClientCredentials.HttpDigest.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; OnvifVideoSample.device.GetSystemUrisResponseExtension Extension; OnvifVideoSample.device.SystemLogUri[] systemUris = device.GetSystemUris(out SupportInfoUri, out SystemBackupUri, out Extension); listBox.Items.Add("systemUris: " + systemUris); listBox.Items.Add("SupportInfoUri: " + SupportInfoUri); listBox.Items.Add("SystemBackupUri: " + SystemBackupUri); listBox.Items.Add("Extension: " + Extension); } catch (Exception ex) { listBox.Items.Add("GetSystemUris did throw an exception: "); listBox.Items.Add(ex.Message); } int b = 0; }