Wifi.Linux
1.0.1
dotnet add package Wifi.Linux --version 1.0.1
NuGet\Install-Package Wifi.Linux -Version 1.0.1
<PackageReference Include="Wifi.Linux" Version="1.0.1" />
paket add Wifi.Linux --version 1.0.1
#r "nuget: Wifi.Linux, 1.0.1"
// Install Wifi.Linux as a Cake Addin
#addin nuget:?package=Wifi.Linux&version=1.0.1
// Install Wifi.Linux as a Cake Tool
#tool nuget:?package=Wifi.Linux&version=1.0.1
Wifi.Linux
This library allows you to connect WIFI on Linux (wrap commands like wpa_cli of wpa_supplicant) - Retrieve available WIFIs for dotnet app hosted on Linux. - Connect to selected WIFI
SCENARIO
You need to connect WIFI to you server app using a client app, connected via Bluetooth.
- Server app running on a Raspberry Pi (Debian) (with or without UI)
- Client app running on mobile / device
- Both use Bluetooth (see my other repository "Bluetooth.Linux" to advertise BLE from Linux)
- Once connected, client ask host for Wifis list
- Host return Wifis
- Client select Wifi and send info to host
- Host initiate connection (ask for password, connect and reboot)
SCENARIO's STEPS
(Bluetooth.Linux) - Initialize BLE
(Bluetooth.Linux) - (Linux) Advertise BLE
(Bluetooth.Linux) - (client) Scan BLE
(Bluetooth.Linux) - (client) Connect BLE
(Bluetooth.Linux) - (client) Connected - Send data to ignite action (ask for Wifis)
(Bluetooth.Linux) - (Linux) Connected - Received data, telling what to do
(Wifi.Linux) - (Linux) Retrieve Wifis list and send it back to client
(Wifi.Linux) - (client) Choose a ESSID
(Wifi.Linux) - (Linux) Receive choosen ESSID
(Wifi.Linux) - (Linux) Connect to selected WIFI
HOW TO USE
// Define targeted interface
Wpa wpa = new Wpa("wlan0");
// Retrieve available WIFIs
var wifis = await wpa.ScanAsync();
// Set targeted SSID
if (await wpa.SetAsync(selectedWifi.Ssid))
{
// Try enable using provided password
if (await wpa.TryEnableAsync("0123456789"))
{
// Save config and reboot host
await wpa.SaveAndRebootAsync();
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net7.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.