diff --git a/MainForm.cs b/MainForm.cs index d00d46a..a8a4045 100644 --- a/MainForm.cs +++ b/MainForm.cs @@ -14,10 +14,10 @@ namespace robospot_camera_finder { public partial class MainForm : Form { - private BindingList all_cameras = new(); + private BindingList allCameras = new(); - public static string cam_username = "admin"; - public static string cam_password = "RoboSpot10"; + public static string CAM_USERNAME = "admin"; + public static string CAM_PASSWORD = "RoboSpot10"; // UDP discovery constants private const int SEND_PORT = 7701; @@ -34,19 +34,19 @@ namespace robospot_camera_finder { public Camera(string name, string ip, string location, string serial) { - camera_name = name; - camera_ip = ip; - camera_location = location; - camera_serial = serial; + cameraName = name; + cameraIP = ip; + cameraLocation = location; + cameraSerial = serial; } - public string camera_name { get; set; } + public string cameraName { get; set; } - public string camera_ip { get; set; } + public string cameraIP { get; set; } - public string camera_location { get; set; } + public string cameraLocation { get; set; } - public string camera_serial { get; set; } + public string cameraSerial { get; set; } } [StructLayout(LayoutKind.Sequential, Pack = 1)] @@ -98,26 +98,26 @@ namespace robospot_camera_finder { InitializeComponent(); - bool got_proper_ip = false; - foreach (var net_interface in NetworkInterface.GetAllNetworkInterfaces()) + bool gotProperIP = false; + foreach (NetworkInterface networkInterface in NetworkInterface.GetAllNetworkInterfaces()) { - IPInterfaceProperties prop = net_interface.GetIPProperties(); - foreach (var ip in prop.UnicastAddresses) + IPInterfaceProperties interfaceProperties = networkInterface.GetIPProperties(); + foreach (UnicastIPAddressInformation interfaceUnicastAddr in interfaceProperties.UnicastAddresses) { - if (ip.Address.ToString().StartsWith("10.")) + if (interfaceUnicastAddr.Address.ToString().StartsWith("10.")) { - if (ip.IPv4Mask.ToString() == "255.0.0.0") + if (interfaceUnicastAddr.IPv4Mask.ToString() == "255.0.0.0") { - got_proper_ip = true; + gotProperIP = true; } } } } - if (!got_proper_ip) + if (!gotProperIP) { - DialogResult open_netsettings = MessageBox.Show("No Ethernet interface on the 10.0.0.0/8 subnet found. Cameras might not be detected. Do you want to open network settings ?", "Wrong IP configuration", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1); + DialogResult openNetworkSettings = MessageBox.Show("No Ethernet interface on the 10.0.0.0/8 subnet found. Cameras might not be detected. Do you want to open network settings ?", "Wrong IP configuration", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1); - if (open_netsettings == DialogResult.Yes) + if (openNetworkSettings == DialogResult.Yes) { ProcessStartInfo startInfo = new ProcessStartInfo("NCPA.cpl"); startInfo.UseShellExecute = true; @@ -127,15 +127,15 @@ namespace robospot_camera_finder } - lbMain.DataSource = all_cameras; - lbMain.DisplayMember = "camera_name"; - lbMain.ValueMember = "camera_ip"; + lbMain.DataSource = allCameras; + lbMain.DisplayMember = "cameraName"; + lbMain.ValueMember = "cameraIP"; // Initialize UDP clients InitializeUdpClients(); // Discover cameras - discover_cameras(); + DiscoverCameras(); } private void InitializeUdpClients() @@ -153,24 +153,24 @@ namespace robospot_camera_finder } } - private void add_camera(Camera new_camera) + private void AddCamera(Camera newCamera) { - if (all_cameras.Count == 0) + if (allCameras.Count == 0) { - all_cameras.Add(new_camera); + allCameras.Add(newCamera); } else { - Camera find_cam = all_cameras.FirstOrDefault(cam => cam.camera_serial == new_camera.camera_serial); + Camera searchCamera = allCameras.FirstOrDefault(cam => cam.cameraSerial == newCamera.cameraSerial); - if (find_cam != null) + if (searchCamera != null) { - int i = all_cameras.IndexOf(find_cam); - all_cameras[i] = new_camera; + int i = allCameras.IndexOf(searchCamera); + allCameras[i] = newCamera; } else { - all_cameras.Add(new_camera); + allCameras.Add(newCamera); } } } @@ -180,7 +180,7 @@ namespace robospot_camera_finder if (lbMain.SelectedItem != null) { toolStripStatusLabel.Text = "Loading camera..."; - Camera camera = all_cameras.FirstOrDefault(cam => cam.camera_ip.ToString() == lbMain.SelectedValue.ToString()); + Camera camera = allCameras.FirstOrDefault(cam => cam.cameraIP.ToString() == lbMain.SelectedValue.ToString()); Form viewer = new StreamViewer(lbMain.GetItemText(lbMain.SelectedItem), lbMain.SelectedValue.ToString(), camera, this); viewer.Show(); toolStripStatusLabel.Text = ""; @@ -198,18 +198,21 @@ namespace robospot_camera_finder { json = File.ReadAllText(openFile.FileName); - List cameras_in_file = JsonSerializer.Deserialize>(json); + List? camerasInFile = JsonSerializer.Deserialize>(json); - foreach (Camera new_camera in cameras_in_file) + if (camerasInFile is List) { - add_camera(new_camera); + foreach (Camera camera in camerasInFile) + { + AddCamera(camera); + } } } } private void saveToolStripMenuItem_Click(object sender, EventArgs e) { - string json = JsonSerializer.Serialize>(all_cameras, new JsonSerializerOptions + string json = JsonSerializer.Serialize>(allCameras, new JsonSerializerOptions { WriteIndented = true }); @@ -225,14 +228,14 @@ namespace robospot_camera_finder private void manualAddToolStripMenuItem_Click(object sender, EventArgs e) { - Manual_IP_Form manualForm = new Manual_IP_Form(); + ManualIPForm manualForm = new ManualIPForm(); if (manualForm.ShowDialog(this) == DialogResult.OK) { string ipAddress = manualForm.ipAddress; - Camera camera_to_add = new Camera("Camera " + ipAddress, ipAddress, "", ""); - add_camera(camera_to_add); + Camera cameraToAdd = new Camera("Camera " + ipAddress, ipAddress, "", ipAddress.Replace(".", "")); + AddCamera(cameraToAdd); } } @@ -426,7 +429,7 @@ namespace robospot_camera_finder // Add camera to list (must be done on UI thread) this.Invoke(new Action(() => { - add_camera(discoveredCamera); + AddCamera(discoveredCamera); toolStripStatusLabel.Text = $"Found camera: {cameraName} ({cameraIP})"; })); } @@ -442,7 +445,7 @@ namespace robospot_camera_finder } // Main discovery method - private async void discover_cameras() + private async void DiscoverCameras() { if (isDiscovering) { @@ -486,7 +489,7 @@ namespace robospot_camera_finder finally { isDiscovering = false; - toolStripStatusLabel.Text = $"Discovery complete. Found {all_cameras.Count} cameras."; + toolStripStatusLabel.Text = $"Discovery complete. Found {allCameras.Count} cameras."; } } diff --git a/Manual_IP_Form.Designer.cs b/ManualIPForm.Designer.cs similarity index 98% rename from Manual_IP_Form.Designer.cs rename to ManualIPForm.Designer.cs index e079653..e0d9161 100644 --- a/Manual_IP_Form.Designer.cs +++ b/ManualIPForm.Designer.cs @@ -1,6 +1,6 @@ namespace robospot_camera_finder { - partial class Manual_IP_Form + partial class ManualIPForm { /// /// Required designer variable. diff --git a/Manual_IP_Form.cs b/ManualIPForm.cs similarity index 88% rename from Manual_IP_Form.cs rename to ManualIPForm.cs index 8ef8eea..a9f8504 100644 --- a/Manual_IP_Form.cs +++ b/ManualIPForm.cs @@ -10,12 +10,12 @@ using System.Windows.Forms; namespace robospot_camera_finder { - public partial class Manual_IP_Form : Form + public partial class ManualIPForm : Form { public string ipAddress { get; set; } - public Manual_IP_Form() + public ManualIPForm() { InitializeComponent(); } diff --git a/Manual_IP_Form.resx b/ManualIPForm.resx similarity index 100% rename from Manual_IP_Form.resx rename to ManualIPForm.resx diff --git a/StreamViewer.cs b/StreamViewer.cs index 705a786..2a40ce7 100644 --- a/StreamViewer.cs +++ b/StreamViewer.cs @@ -41,7 +41,7 @@ namespace robospot_camera_finder private void updateZoomSlider() { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://" + cam_ip + "/stw-cgi/ptzcontrol.cgi?msubmenu=query&action=view&Query=Zoom"); - request.Credentials = new NetworkCredential(MainForm.cam_username, MainForm.cam_password); + request.Credentials = new NetworkCredential(MainForm.CAM_USERNAME, MainForm.CAM_PASSWORD); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); string text; using (var sr = new StreamReader(response.GetResponseStream())) { text = sr.ReadToEnd(); } @@ -64,7 +64,7 @@ namespace robospot_camera_finder } HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://" + cam_ip + "/stw-cgi/ptzcontrol.cgi?msubmenu=absolute&action=control&ZoomPulse=" + zoom_pulse); - request.Credentials = new NetworkCredential(MainForm.cam_username, MainForm.cam_password); + request.Credentials = new NetworkCredential(MainForm.CAM_USERNAME, MainForm.CAM_PASSWORD); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); } @@ -72,7 +72,7 @@ namespace robospot_camera_finder private void sendZoomValueManual(string zoom_value) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://" + cam_ip + "/stw-cgi/ptzcontrol.cgi?msubmenu=continuous&NormalizedSpeed=True&action=control&Channel=0&Zoom=" + zoom_value); - request.Credentials = new NetworkCredential(MainForm.cam_username, MainForm.cam_password); + request.Credentials = new NetworkCredential(MainForm.CAM_USERNAME, MainForm.CAM_PASSWORD); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); }