Telematics SDK - API Reference  v1.55.0
Access Point Management

Data Structures

struct  telux::wlan::ApNetConfig
 
struct  telux::wlan::ApConfig
 
struct  telux::wlan::DeviceInfo
 
struct  telux::wlan::DeviceStats
 
class  telux::wlan::IApInterfaceManager
 Manager class for configuring Wlan Access Points. More...
 
class  telux::wlan::IApListener
 

Macros

#define INVALID_AP_ID   0
 

Enumerations

enum  telux::wlan::ApInterworking { telux::wlan::ApInterworking::INTERNET_ACCESS = 0, telux::wlan::ApInterworking::FULL_ACCESS = 1 }
 
enum  telux::wlan::ApDeviceConnectionEvent { telux::wlan::ApDeviceConnectionEvent::CONNECTED = 0, telux::wlan::ApDeviceConnectionEvent::DISCONNECTED = 1, telux::wlan::ApDeviceConnectionEvent::IPV4_UPDATED = 2, telux::wlan::ApDeviceConnectionEvent::IPV6_UPDATED = 3 }
 

Functions

virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::setConfig (ApConfig config)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConfig (std::vector< ApConfig > &config)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getStatus (std::vector< ApStatus > &status)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConnectedDevices (std::vector< DeviceInfo > &clientsInfo)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConnectedDevicesStats (std::vector< DeviceStats > &clientsStats)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::manageApService (Id apId, ServiceOperation opr)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::registerListener (std::weak_ptr< IApListener > listener)=0
 
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::deregisterListener (std::weak_ptr< IApListener > listener)=0
 
virtual telux::wlan::IApInterfaceManager::~IApInterfaceManager ()
 
virtual void telux::wlan::IApListener::onApDeviceStatusChanged (ApDeviceConnectionEvent event, std::vector< DeviceInfo > info)
 
virtual void telux::wlan::IApListener::onApBandChanged (BandType radio)
 
virtual telux::wlan::IApListener::~IApListener ()
 

Variables

ApInfo telux::wlan::ApNetConfig::info
 
ApInterworking telux::wlan::ApNetConfig::interworking
 
Id telux::wlan::ApConfig::id
 
std::vector< ApNetConfig > telux::wlan::ApConfig::network
 
Id telux::wlan::DeviceInfo::id
 
std::string telux::wlan::DeviceInfo::name
 
std::string telux::wlan::DeviceInfo::ipv4Address
 
std::string telux::wlan::DeviceInfo::ipv6Address
 
std::string telux::wlan::DeviceInfo::macAddress
 
Id telux::wlan::DeviceStats::id
 
std::string telux::wlan::DeviceStats::macAddress
 
uint64_t telux::wlan::DeviceStats::bytesTx
 
uint64_t telux::wlan::DeviceStats::bytesRx
 

Detailed Description

This section contains APIs related to access point configuration management, such as private/guest, internet/local access, etc.


Data Structure Documentation

struct telux::wlan::ApNetConfig

Ap Network Configuration

Data Fields
ApInfo info

AP type

ApInterworking interworking

AP network access (internet/local)

struct telux::wlan::ApConfig

Ap Configuration

Data Fields
Id id

AP id

vector< ApNetConfig > network

Configurations supported by AP

struct telux::wlan::DeviceInfo

Wlan Client Device Info

Data Fields
Id id

AP id device is connected to

string name

User friendly string that identifies Wi-Fi device

string ipv4Address

IPv4 Address of Wi-Fi device

string ipv6Address

IPv6 Address of Wi-Fi device

string macAddress

MAC Address of Wi-Fi device

struct telux::wlan::DeviceStats

Wlan Client Device Statistics

Data Fields
Id id

AP id device is connected to

string macAddress

MAC Address of Wi-Fi device

uint64_t bytesTx

Number of bytes transmitted

uint64_t bytesRx

Number of bytes received

class telux::wlan::IApInterfaceManager

Manager class for configuring Wlan Access Points.

Public Member Functions

virtual telux::common::ErrorCode setConfig (ApConfig config)=0
 
virtual telux::common::ErrorCode getConfig (std::vector< ApConfig > &config)=0
 
virtual telux::common::ErrorCode getStatus (std::vector< ApStatus > &status)=0
 
virtual telux::common::ErrorCode getConnectedDevices (std::vector< DeviceInfo > &clientsInfo)=0
 
virtual telux::common::ErrorCode getConnectedDevicesStats (std::vector< DeviceStats > &clientsStats)=0
 
virtual telux::common::ErrorCode manageApService (Id apId, ServiceOperation opr)=0
 
virtual telux::common::ErrorCode registerListener (std::weak_ptr< IApListener > listener)=0
 
virtual telux::common::ErrorCode deregisterListener (std::weak_ptr< IApListener > listener)=0
 
virtual ~IApInterfaceManager ()
 
class telux::wlan::IApListener

Public Member Functions

virtual void onApDeviceStatusChanged (ApDeviceConnectionEvent event, std::vector< DeviceInfo > info)
 
virtual void onApBandChanged (BandType radio)
 
virtual ~IApListener ()
 

Macro Definition Documentation

#define INVALID_AP_ID   0

Enumeration Type Documentation

AP Interworking Information

Enumerator
INTERNET_ACCESS 

AP with internet access only - No LAN access

FULL_ACCESS 

AP Can Access LAN and Internet

AP Client Connection Status

Enumerator
CONNECTED 
DISCONNECTED 
IPV4_UPDATED 
IPV6_UPDATED 

Function Documentation

virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::setConfig ( ApConfig  config)
pure virtual

Set Access Point config: Used to fully configure access points including venue type, radio type (2.4/5 GHz), private/guest network and all other related settings. Configurations will take effect after hostapd service is restarted by calling telux::wlan::IApInterfaceManager::manageApService.

On platforms with Access control enabled, Caller needs to have TELUX_WLAN_AP_CONFIG permission to invoke this API successfully.

Parameters
[in]configAP configuration parameters telux::wlan::ApConfig
Returns
operation error code (if any). telux::common::ErrorCode telux::common::Status::NOTALLOWED is returned if AP to be configured was not enabled in telux::wlan::WlanDeviceManager::setMode.
Note
Eval: This is a new API and is being evaluated. It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConfig ( std::vector< ApConfig > &  config)
pure virtual

Request Access Point Configurations

Parameters
[in]configVector of AP configurations telux::wlan::ApConfig as set by telux::wlan::IApInterfaceManager::setConfig
Returns
operation error code (if any). telux::common::ErrorCode
Note
Eval: This is a new API and is being evaluated. It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getStatus ( std::vector< ApStatus > &  status)
pure virtual

Request AP Status

Parameters
[in]statusVector of AP network Status telux::wlan::ApStatus
Returns
operation error code (if any). telux::common::ErrorCode
Note
Eval: This is a new API and is being evaluated. It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConnectedDevices ( std::vector< DeviceInfo > &  clientsInfo)
pure virtual

Request Connected Devices to all enabled access points. Each entry in returned list will contain information about a device such as access point it is connected to and IP and MAC address as defined in telux::wlan::DeviceInfo

On platforms with Access control enabled, Caller needs to have TELUX_WLAN_AP_DEVICES permission to invoke this API successfully.

Parameters
[in]clientsInfoList of connected devices Info telux::wlan::DeviceInfo
Returns
operation error code (if any). telux::common::ErrorCode
Note
Eval: This is a new API and is being evaluated.It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::getConnectedDevicesStats ( std::vector< DeviceStats > &  clientsStats)
pure virtual

Request statistics for all devices connected to all access points. Each entry in returned list will contains transmitted and recieved bytes for a device as defined in telux::common::DeviceStats

On platforms with Access control enabled, Caller needs to have TELUX_WLAN_AP_DEVICES permission to invoke this API successfully.

Parameters
[in]clientStatsList of connected clients statistics telux::wlan::DeviceStats
Returns
operation error code (if any). telux::common::ErrorCode
Note
Eval: This is a new API and is being evaluated.It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::manageApService ( Id  apId,
ServiceOperation  opr 
)
pure virtual

Execute an operation on hostapd service. Provides ability for client to either stop/start or restart hostapd service for selected access point. Restarting hostapd service is required for any changes made to hosapd.conf file and changes made by telux::wlan::IApInterfaceManager::setConfig to take effect. Stop/Start operation telux::wlan::ServiceOperation will Stop/Start WiFi service for access point. Access points selected to execute operation on, will temporarily go out of service when this API is called. This API should be called only when access point is configured through

On platforms with Access control enabled, Caller needs to have TELUX_WLAN_AP_CONFIG permission to invoke this API successfully.

telux::wlan::IDeviceManager::setMode

Parameters
[in]apIdAP identifier to execute operation on. telux::wlan::Id
[in]oprOperation to be performed on hostapd telux::wlan::ServiceOperation
Returns
operation error code (if any). telux::common::ErrorCode
Note
Eval: This is a new API and is being evaluated.It is subject to change and could break backwards compatibility.
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::registerListener ( std::weak_ptr< IApListener listener)
pure virtual

Register a listener for specific events in Access Point Manager

Parameters
[in]listenerpointer of IApListener object that processes the notification
Returns
operation error code (if any). telux::common::ErrorCode
virtual telux::common::ErrorCode telux::wlan::IApInterfaceManager::deregisterListener ( std::weak_ptr< IApListener listener)
pure virtual

Removes a previously added listener.

Parameters
[in]listenerpointer of IApListener object that needs to be removed
Returns
operation error code (if any). telux::common::ErrorCode
virtual telux::wlan::IApInterfaceManager::~IApInterfaceManager ( )
virtual
virtual void telux::wlan::IApListener::onApDeviceStatusChanged ( ApDeviceConnectionEvent  event,
std::vector< DeviceInfo info 
)
virtual

This function is called when AP device status has changed

Parameters
[in]eventEvent detected on device telux::wlan::ApDeviceConnectionEvent
[in]infoInfo about devices telux::wlan::DeviceInfo
virtual void telux::wlan::IApListener::onApBandChanged ( BandType  radio)
virtual

This function is called when AP switch to different operation band

Parameters
[in]radioNew AP operation band telux::wlan::BandType
virtual telux::wlan::IApListener::~IApListener ( )
virtual

Variable Documentation

ApInfo telux::wlan::ApNetConfig::info

AP type

ApInterworking telux::wlan::ApNetConfig::interworking

AP network access (internet/local)

Id telux::wlan::ApConfig::id

AP id

std::vector<ApNetConfig> telux::wlan::ApConfig::network

Configurations supported by AP

Id telux::wlan::DeviceInfo::id

AP id device is connected to

std::string telux::wlan::DeviceInfo::name

User friendly string that identifies Wi-Fi device

std::string telux::wlan::DeviceInfo::ipv4Address

IPv4 Address of Wi-Fi device

std::string telux::wlan::DeviceInfo::ipv6Address

IPv6 Address of Wi-Fi device

std::string telux::wlan::DeviceInfo::macAddress

MAC Address of Wi-Fi device

Id telux::wlan::DeviceStats::id

AP id device is connected to

std::string telux::wlan::DeviceStats::macAddress

MAC Address of Wi-Fi device

uint64_t telux::wlan::DeviceStats::bytesTx

Number of bytes transmitted

uint64_t telux::wlan::DeviceStats::bytesRx

Number of bytes received