View Source VintageNetWizard.Backend behaviour (vintage_net_wizard v0.4.17)
Backends define the boundaries of getting access points, handling incoming messages, and scanning the network
Summary
Callbacks
Get all the access points that the backend knowns about
Apply the WiFi configurations
Perform final completion steps for the network configurations
Return the configuration status of a configuration that has been applied
Handle any message the is received by another process
Do any initialization work like subscribing to messages
Apply any actions required to set the backend back to an initial default state
Start scanning for WiFi access points
Stop the scan for WiFi access points
Types
@type configuration_status() :: :not_configured | :good | :bad
@type device_info_name() :: String.t()
@type device_info_value() :: String.t()
@type opt() :: {:device_info, [{device_info_name(), device_info_value()}]} | {:configurations, [map()]}
Callbacks
@callback access_points(state :: any()) :: [VintageNetWiFi.AccessPoint.t()]
Get all the access points that the backend knowns about
Apply the WiFi configurations
The configurations passed are network configurations that can be passed into
the :network
list in a VintageNetWiFi
configuration.
Perform final completion steps for the network configurations
@callback configuration_status(state :: any()) :: configuration_status()
Return the configuration status of a configuration that has been applied
@callback handle_info(any(), state :: any()) :: {:reply, any(), state :: any()} | {:noreply, state :: any()}
Handle any message the is received by another process
If you want the socket to send data to the client
return {:reply, message, state}
, otherwise return
{:noreply, state}
@callback init(VintageNet.ifname(), VintageNet.ifname()) :: state :: any()
Do any initialization work like subscribing to messages
Will be passed the interface names that the backend should use to scan and to set AP mode. By default
both will be "wlan0"
. If you want to use different interface names you
can pass them in as options to VintageNetWizard.run_wizard/1
.
Apply any actions required to set the backend back to an initial default state
Start scanning for WiFi access points
Stop the scan for WiFi access points