diff --git a/src/PhotoCollector/PhotoCollector.csproj b/src/PhotoCollector/PhotoCollector.csproj index 3fd0a62..b947c8f 100644 --- a/src/PhotoCollector/PhotoCollector.csproj +++ b/src/PhotoCollector/PhotoCollector.csproj @@ -40,6 +40,17 @@ + + + + + + + true + PreserveNewest + + + PreserveNewest diff --git a/src/PhotoCollector/Program.cs b/src/PhotoCollector/Program.cs index 48fd307..fce1186 100644 --- a/src/PhotoCollector/Program.cs +++ b/src/PhotoCollector/Program.cs @@ -6,6 +6,7 @@ using Serilog; using Serilog.Core; using Serilog.Events; using System.Diagnostics; +using System.Net; namespace PhotoCollector; @@ -81,9 +82,35 @@ internal static class Program webBuilder.UseSetting(WebHostDefaults.DetailedErrorsKey, "true"); webBuilder.UseContentRoot(AppContext.BaseDirectory); webBuilder.UseStartup(); - webBuilder.UseUrls("http://localhost:8440"); + webBuilder.UseUrls($"http://localhost:{GetDynamicFreePort()}"); + //webBuilder.UseUrls("http://localhost:48440"); }) .Build(); await WebHost.StartAsync(); } -} + + public static int GetDynamicFreePort() + { + var port = 49152; + while (port < 65535) + { + var listener = new HttpListener(); + listener.Prefixes.Add($"http://localhost:{port}/"); + try + { + listener.Start(); + break; + } + catch + { + port++; + } + finally + { + listener.Stop(); + listener.Close(); + } + } + return port; + } +} \ No newline at end of file diff --git a/src/PhotoCollector/wwwroot/favicon.ico b/src/PhotoCollector/wwwroot/favicon.ico new file mode 100644 index 0000000..63e859b Binary files /dev/null and b/src/PhotoCollector/wwwroot/favicon.ico differ diff --git a/src/PhotoCollector/wwwroot/index.html b/src/PhotoCollector/wwwroot/index.html index b829dd7..7d39a6a 100644 --- a/src/PhotoCollector/wwwroot/index.html +++ b/src/PhotoCollector/wwwroot/index.html @@ -245,10 +245,11 @@ select.innerHTML = ""; devices.forEach(function (device) { console.log(device); - if (device.kind === 'videoinput' && device.label) { - select.insertAdjacentHTML('beforeend', ``); + if (device.kind === 'videoinput' && device.groupId) { + select.insertAdjacentHTML('beforeend', ``); } }); + console.dir(select); if (select.children.length) { select.children[0].setAttribute("selected", "selected"); select.dispatchEvent(new Event('change')); @@ -258,8 +259,8 @@ console.log(err.name + ": " + err.message); }); } - //setInterval(init, 5000); - init(); + setInterval(init,2000); + //init(); \ No newline at end of file