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
ssid
stringThe SSID of the network you are trying to connect to.
password
stringThe password associated to the SSID of the network you are trying to connect to.
reconnectionKind
WifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTime
boolSet to true if valid date and time are required.
wifiAdapterId
intThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
token
CancellationTokenA 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
ssid
stringThe SSID you are trying to connect to.
password
stringThe password associated to the SSID you are trying to connect to.
ipConfiguration
IPConfigurationThe static IPv4 configuration to apply to the Wifi network interface.
reconnectionKind
WifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTime
boolSet to true if valid date and time are required.
WifiAdapter
intThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
token
CancellationTokenA 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
requiresDateTime
boolSet to true if valid date and time are required.
wifiAdapterId
intThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
token
CancellationTokenA 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
ssid
stringThe SSID you are trying to connect to.
password
stringThe password associated to the SSID you are trying to connect to.
reconnectionKind
WifiReconnectionKindThe reconnection type to the network.
requiresDateTime
boolSet to true if valid date and time are required.
WifiAdapter
intThe index of the Wifi adapter to be used. Relevant only if there are multiple Wifi adapters.
token
CancellationTokenA 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
ssid
stringThe SSID of the network you are trying to connect to.
password
stringThe password associated to the SSID of the network you are trying to connect to.
reconnectionKind
WifiReconnectionKindThe WifiReconnectionKind to setup for the connection.
requiresDateTime
boolSet 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
ipConfiguration
IPConfigurationThe static IP configuration you want to apply.
requiresDateTime
boolSet 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.