new/app/qsetting/Rk_wifi.h
2025-05-10 21:58:58 +08:00

93 lines
2.4 KiB
C

#ifndef __RK_WIFI_H__
#define __RK_WIFI_H__
#ifdef __cplusplus
extern "C" {
#endif
#define RK_WIFI_VERSION "V1.1"
#define RK_WIFI_SAVED_INFO_MAX 10
#define SSID_BUF_LEN 64
#define BSSID_BUF_LEN 20
#define STATE_BUF_LEN 20
typedef enum {
RK_WIFI_State_IDLE = 0,
RK_WIFI_State_CONNECTING,
RK_WIFI_State_CONNECTFAILED,
RK_WIFI_State_CONNECTFAILED_WRONG_KEY,
RK_WIFI_State_CONNECTED,
RK_WIFI_State_DISCONNECTED,
RK_WIFI_State_OPEN,
RK_WIFI_State_OFF,
RK_WIFI_State_SCAN_RESULTS,
RK_WIFI_State_DHCP_OK,
} RK_WIFI_RUNNING_State_e;
typedef enum {
NONE = 0,
WPA,
WEP
} RK_WIFI_CONNECTION_Encryp_e;
typedef struct {
int id;
char bssid[BSSID_BUF_LEN];
char ssid[SSID_BUF_LEN];
int freq;
char mode[20];
char wpa_state[20];
char ip_address[20];
char mac_address[20];
int reason;
} RK_WIFI_INFO_Connection_s;
typedef struct {
int id;
char bssid[BSSID_BUF_LEN];
char ssid[SSID_BUF_LEN];
char state[STATE_BUF_LEN];
} RK_WIFI_SAVED_INFO_s;
typedef struct {
int count;
RK_WIFI_SAVED_INFO_s save_info[RK_WIFI_SAVED_INFO_MAX];
} RK_WIFI_SAVED_INFO;
typedef int(*RK_wifi_state_callback)(RK_WIFI_RUNNING_State_e state, RK_WIFI_INFO_Connection_s *info);
int RK_wifi_register_callback(RK_wifi_state_callback cb);
int RK_wifi_running_getState(RK_WIFI_RUNNING_State_e* pState);
int RK_wifi_running_getConnectionInfo(RK_WIFI_INFO_Connection_s* pInfo);
int RK_wifi_enable(int enable);
int RK_wifi_scan(void);
char* RK_wifi_scan_r(void);
char* RK_wifi_scan_r_sec(const unsigned int cols);
int RK_wifi_connect(char* ssid, const char* psk);
int RK_wifi_connect_wep(char* ssid, const char* psk);
int RK_wifi_connect1(char* ssid, const char* psk, const RK_WIFI_CONNECTION_Encryp_e encryp, const int hide);
int RK_wifi_disconnect_network(void);
int RK_wifi_restart_network(void);
int RK_wifi_set_hostname(const char* name);
int RK_wifi_get_hostname(char* name, int len);
int RK_wifi_get_mac(char *wifi_mac);
int RK_wifi_has_config(void);
int RK_wifi_ping(char *address);
int RK_wifi_recovery(void);
int RK_wifi_airkiss_start(char *ssid, char *password);
void RK_wifi_airkiss_stop(void);
int RK_wifi_forget_with_ssid(char *ssid);
int RK_wifi_cancel(void);
int RK_wifi_getSavedInfo(RK_WIFI_SAVED_INFO_s **pInfo, int *ap_cnt);
int RK_wifi_connect_with_ssid(char* ssid);
int RK_wifi_reset(void);
int RK_wifi_get_connected_ap_rssi(void);
char *RK_wifi_scan_for_softap(void);
#ifdef __cplusplus
}
#endif
#endif