Class WifiNetworkHelper
- Namespace
- nanoFramework.Networking
- Assembly
- System.Device.Wifi.dll
Network helper class providing helper methods to assist on connecting to a Wifi network.
public static class WifiNetworkHelper
- Inheritance
-
WifiNetworkHelper
- Inherited Members
Properties
HelperException
Exception that occurred when waiting for the network to become ready.
public static Exception HelperException { get; }
Property Value
NetworkReady
Event signaling that networking it's ready.
public static ManualResetEvent NetworkReady { get; }
Property Value
Remarks
The conditions for this are setup in the call to SetupNetworkHelper(bool). It will be a composition of network connected, IpAddress available and valid system DateTime.
Status
Status of NetworkHelper.
public static NetworkHelperStatus Status { get; }
Property Value
WifiAdapter
Gets the Wifi Adapter.
public static WifiAdapter WifiAdapter { get; }
Property Value
Methods
ConnectDhcp(string, string, WifiReconnectionKind, bool, int, CancellationToken)
This method will connect the network with DHCP enabled, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.
public static bool ConnectDhcp(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int wifiAdapterId = 0, CancellationToken token = default)
Parameters
ssidstringThe SSID of the network you are trying to connect to.
passwordstringThe password associated to the SSID of the network you are trying to connect to.
reconnectionKindWifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTimeboolSet to true if valid date and time are required.
wifiAdapterIdintThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
tokenCancellationTokenA CancellationToken used for timing out the operation.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
ConnectFixAddress(string, string, IPConfiguration, WifiReconnectionKind, bool, int, CancellationToken)
This method will connect the network with the static IP address you are providing, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.
public static bool ConnectFixAddress(string ssid, string password, IPConfiguration ipConfiguration, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int WifiAdapter = 0, CancellationToken token = default)
Parameters
ssidstringThe SSID you are trying to connect to.
passwordstringThe password associated to the SSID you are trying to connect to.
ipConfigurationIPConfigurationThe static IPv4 configuration to apply to the Wifi network interface.
reconnectionKindWifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTimeboolSet to true if valid date and time are required.
WifiAdapterintThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
tokenCancellationTokenA CancellationToken used for timing out the operation.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
Disconnect()
Disconnect from the network.
public static void Disconnect()
Reconnect(bool, int, CancellationToken)
This method will connect the network, the information used to connect is the one already stored on the device.
public static bool Reconnect(bool requiresDateTime = false, int wifiAdapterId = 0, CancellationToken token = default)
Parameters
requiresDateTimeboolSet to true if valid date and time are required.
wifiAdapterIdintThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
tokenCancellationTokenA CancellationToken used for timing out the operation.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
Remarks
This function can be called only if an existing network has been setup previously and if the credentials are valid.
ScanAndConnectDhcp(string, string, WifiReconnectionKind, bool, int, CancellationToken)
This method will scan and connect the network with DHCP enabled, for your SSID and try to connect to it with the credentials you've passed. This will save as well the configuration of your network.
public static bool ScanAndConnectDhcp(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false, int WifiAdapter = 0, CancellationToken token = default)
Parameters
ssidstringThe SSID you are trying to connect to.
passwordstringThe password associated to the SSID you are trying to connect to.
reconnectionKindWifiReconnectionKindThe reconnection type to the network.
requiresDateTimeboolSet to true if valid date and time are required.
WifiAdapterintThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
tokenCancellationTokenA CancellationToken used for timing out the operation.
Returns
- bool
true on success. On failure returns false and details with the cause of the failure are made available in the Status property
SetupNetworkHelper(bool)
This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.
public static void SetupNetworkHelper(bool requiresDateTime = false)
Parameters
Exceptions
- InvalidOperationException
If any of the NetworkHelper methods is called more than once.
- NotSupportedException
There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.
SetupNetworkHelper(string, string, WifiReconnectionKind, bool)
This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.
public static void SetupNetworkHelper(string ssid, string password, WifiReconnectionKind reconnectionKind = WifiReconnectionKind.Automatic, bool requiresDateTime = false)
Parameters
ssidstringThe SSID of the network you are trying to connect to.
passwordstringThe password associated to the SSID of the network you are trying to connect to.
reconnectionKindWifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTimeboolSet to true if valid date and time are required.
Exceptions
- InvalidOperationException
If any of the NetworkHelper methods is called more than once.
- NotSupportedException
There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.
SetupNetworkHelper(IPConfiguration, bool)
This method will setup the network configurations so that the NetworkReady event will fire when the required conditions are met. That will be the network connection to be up, having a valid IpAddress and optionally for a valid date and time to become available.
public static void SetupNetworkHelper(IPConfiguration ipConfiguration, bool requiresDateTime = false)
Parameters
ipConfigurationIPConfigurationThe static IP configuration you want to apply.
requiresDateTimeboolSet to true if valid date and time are required.
Exceptions
- NotSupportedException
There is no network interface configured. Open the 'Edit Network Configuration' in Device Explorer and configure one.