private async Task<PortCheckStatus> CheckPortAsync()
{
var port_checker = pecaApp.Plugins.GetPlugin<PeerCastStation.UI.PCPPortCheckerPlugin>();
if (port_checker==null) return PortCheckStatus.Failed;
var result = await port_checker.CheckAsync();
if (!result.Success) {
return PortCheckStatus.Failed;
}
else {
var status = PortCheckStatus.Closed;
foreach (var port in ports) {
port.IsOpen = result.Ports.Contains(port.Port);
if (port.IsOpen.HasValue && port.IsOpen.Value) {
status = PortCheckStatus.Opened;
}
}
return status;
}
}