/// <summary> /// Raises the event to all subscribers /// </summary> /// <param name="newStatus">Wireless connection status</param> private void OnConnectionStatusChanged(WifiStatus newStatus) { if (ConnectionStatusChanged != null) { ConnectionStatusChanged(this, new WifiStatusEventArgs(newStatus)); } }
public WifiInfo(int networkId, string name, string macAddress, string capabilities, WifiStrength wifiStrength, WifiStatus wifiStatus, bool needPassword, bool is5G) { NetworkId = networkId; Name = name; MacAddress = macAddress; Capabilities = capabilities; WifiStrength = wifiStrength; WifiStatus = wifiStatus; NeedPassword = needPassword; Is5G = is5G; }
public bool Is5G; //是否是5G信号 public WifiInfo(JWifiInfo jWifiInfo) { NetworkId = jWifiInfo.networkID; Name = jWifiInfo.SSID; MacAddress = jWifiInfo.BSSID; Capabilities = jWifiInfo.capabilities; WifiStrength = (WifiStrength)jWifiInfo.level; WifiStatus = (WifiStatus)jWifiInfo.wifiStatus; NeedPassword = jWifiInfo.needPassword; Is5G = jWifiInfo.is5G; }
private void PollCurrentState(WifiStatus wifiState) { string wifiSsid = ""; try { // WiFi wifiState = wifi.ConnectionStatus; // if connected find ssid if (wifiState == WifiStatus.Connected) { foreach (AccessPoint ap in wifi.GetAccessPoints()) { if (ap.IsConnected) { Console.WriteLine("i'm connected to " + ap.Name); wifiSsid = ap.Name; } } } } catch (Exception) { Console.WriteLine("cant check wifi state"); } // Network address // Evaluate Trigger candidate = null; foreach (Trigger trigger in triggers.Triggers) { bool wifiMatch = false, addressMatch = false; if (trigger.IsWiFiTrigger && trigger.WiFiSsid == wifiSsid && wifiState == WifiStatus.Connected) { Console.WriteLine("found a trigger for this ssid, "); wifiMatch = true; } //if(trigger.IsAddressTrigger && trigger.AddressMask ==?) //{ //addressMatch = true; //} // check if it doesn't match, and continue search if so if ((trigger.IsWiFiTrigger && trigger.IsAddressTrigger && !(wifiMatch && addressMatch)) || (trigger.IsWiFiTrigger && !wifiMatch) || (trigger.IsAddressTrigger && !addressMatch) || !(trigger.IsWiFiTrigger || trigger.IsAddressTrigger)) { Console.WriteLine(trigger.Title + " is no good, continue"); continue; } candidate = trigger; break; } // Enable if candidate found if (candidate != null) { Console.WriteLine("it seems we have a winner: " + candidate.Title); var proxy = profiles.FindProxyByTitle(candidate.ProfileToActivate); if (proxy != null) { bool activated = ProxyController.Instance.ActivateProxy(proxy); OnProxyTriggered?.Invoke(proxy, "trigger: " + candidate.Title + " activated: " + activated); } else { Console.WriteLine("proxy not found: " + candidate.ProfileToActivate); } } else { Console.WriteLine("no trigger found, maybe wanna disable?"); } }
internal WifiStatusEventArgs(WifiStatus status) : base() { this.NewStatus = status; }
private void OnConnectionStatusChanged(WifiStatus newStatus) { ConnectionStatus = newStatus; ConnectionStatusChanged?.Invoke(this, new WifiStatusEventArgs(newStatus)); }
internal WifiStatusEventArgs(WifiStatus status) : base() { this.NewStatus = status; }
private void OnConnectionStatusChanged(WifiStatus newStatus) { ConnectionStatus = newStatus; if (ConnectionStatusChanged != null) ConnectionStatusChanged(this, new WifiStatusEventArgs(newStatus)); }
public WifiStatusEventArgsMod(WifiStatus status) : base() { this.NewStatus = status; }
private WirelessNetworkStatus ToStatus(WifiStatus status) { return(status == WifiStatus.Connected ? WirelessNetworkStatus.Connected : WirelessNetworkStatus.Disconnected); }
public async Task <WifiStatusResponse> GetWifiStatusAsync() => await WifiStatus.CastTask <WifiStatusResponse>();
public WifiStatusEventArgs(WifiStatus status) : base() { this.NewStatus = status; }