pub enum ClientControllerRequest {
    StartClientConnections {
        responder: ClientControllerStartClientConnectionsResponder,
    },
    StopClientConnections {
        responder: ClientControllerStopClientConnectionsResponder,
    },
    ScanForNetworks {
        iterator: ServerEnd<ScanResultIteratorMarker>,
        control_handle: ClientControllerControlHandle,
    },
    SaveNetwork {
        config: NetworkConfig,
        responder: ClientControllerSaveNetworkResponder,
    },
    RemoveNetwork {
        config: NetworkConfig,
        responder: ClientControllerRemoveNetworkResponder,
    },
    GetSavedNetworks {
        iterator: ServerEnd<NetworkConfigIteratorMarker>,
        control_handle: ClientControllerControlHandle,
    },
    Connect {
        id: NetworkIdentifier,
        responder: ClientControllerConnectResponder,
    },
}
Expand description

ClientControllers allow the caller to trigger wlan state changes. This includes whether connections will be attempted, scan triggers and saved network configuration changes.

Individual calls provided by the API are triggered after registering with the wlan ClientProvider via the OpenControlChannel call.

Variants§

§

StartClientConnections

Enables wlan to initiate connections to networks (either by autoconnecting to saved networks or acting on incoming calls triggering connections). Depending on the underlying capabilities of the device, this call may impact other device operation (for example, acting as an access point). The returned status represents acknowledgement of the request. The ClientListener protocol should be monitored to learn when client functionality has been enabled.

§

StopClientConnections

Tears down any existing connections to wlan networks and disables initiation of new connections. The returned status represents acknowledgements of the request. The ClientListener protocol should be monitored to learn when client functionality has been disabled.

§

ScanForNetworks

Triggers a network scan. Note, even in normal operation, some scan requests may be rejected due to timing with connection establishment or other critical connection maintenance. If the scan is cancelled or errors, the caller is notified via a status update in the ScanResultIterator. In the current implementation, client connections must be started for a scan to be performed.

Fields

§iterator: ServerEnd<ScanResultIteratorMarker>
§

SaveNetwork

Saves a network and any credential information needed to connect. Multiple entries for the same NetworkIdentifier can exist if the credentials are different. If a caller attempts to save a NetworkConfig with the same NetworkIdentifier and same Credentials as a previously saved network the method will effectively be a no-op.

§

RemoveNetwork

Removes a saved network configuration, if one exists. This method will automatically trigger a disconnection if the NetworkConfig was used to establish the connection.

§

GetSavedNetworks

Retrieve the currently saved networks using the provided iterator.

Fields

§iterator: ServerEnd<NetworkConfigIteratorMarker>
§

Connect

Request to attempt a connection to the specified network. The target of the connect call must already be a saved network. This call is not a blocking call for the duration of the connection attempt. If the call cannot be immediately attempted, a failure status will be returned. If the connection request will be attempted, an acknowledgment status will be returned. Updates to the connection status are disseminated via the ClientStateUpdates protocol. If the connect attempt fails, the service will fall back to default behavior with scanning and connecting via network selection.

Implementations§

Trait Implementations§

source§

impl Debug for ClientControllerRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Encode<Ambiguous1> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<T> Encode<Ambiguous2> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more