62 lines
1.9 KiB
C
62 lines
1.9 KiB
C
|
#ifndef __LWIP_API_MESH_H__
|
||
|
#define __LWIP_API_MESH_H__
|
||
|
|
||
|
#include "ip_addr.h"
|
||
|
#include "user_interface.h"
|
||
|
#include "espconn.h"
|
||
|
|
||
|
typedef void (* espconn_mesh_callback)();
|
||
|
|
||
|
enum mesh_type {
|
||
|
MESH_CLOSE = 0,
|
||
|
MESH_LOCAL,
|
||
|
MESH_ONLINE,
|
||
|
MESH_NONE = 0xFF
|
||
|
};
|
||
|
|
||
|
enum mesh_status {
|
||
|
MESH_DISABLE = 0,
|
||
|
MESH_WIFI_CONN,
|
||
|
MESH_NET_CONN,
|
||
|
MESH_LOCAL_AVAIL,
|
||
|
MESH_ONLINE_AVAIL
|
||
|
};
|
||
|
|
||
|
enum mesh_node_type {
|
||
|
MESH_NODE_PARENT = 0,
|
||
|
MESH_NODE_CHILD,
|
||
|
MESH_NODE_ALL
|
||
|
};
|
||
|
|
||
|
bool espconn_mesh_local_addr(struct ip_addr *ip);
|
||
|
bool espconn_mesh_get_node_info(enum mesh_node_type type,
|
||
|
uint8_t **info, uint8_t *count);
|
||
|
bool espconn_mesh_get_router(struct station_config *router);
|
||
|
bool espconn_mesh_set_router(struct station_config *router);
|
||
|
bool espconn_mesh_encrypt_init(AUTH_MODE mode, uint8_t *passwd, uint8_t passwd_len);
|
||
|
bool espconn_mesh_set_ssid_prefix(uint8_t *prefix, uint8_t prefix_len);
|
||
|
bool espconn_mesh_set_max_hops(uint8_t max_hops);
|
||
|
|
||
|
char * espconn_json_find_section(const char *pbuf, u16 len, const char *section);
|
||
|
|
||
|
sint8 espconn_mesh_connect(struct espconn *usr_esp);
|
||
|
sint8 espconn_mesh_disconnect(struct espconn *usr_esp);
|
||
|
sint8 espconn_mesh_get_status();
|
||
|
sint8 espconn_mesh_sent(struct espconn *usr_esp, uint8 *pdata, uint16 len);
|
||
|
|
||
|
uint8 espconn_mesh_get_max_hops();
|
||
|
uint8 espconn_mesh_layer(struct ip_addr *ip);
|
||
|
uint32_t user_json_get_value(const char *pbuffer, uint16_t buf_len,
|
||
|
const uint8_t *json_key);
|
||
|
|
||
|
void espconn_mesh_enable(espconn_mesh_callback enable_cb, enum mesh_type type);
|
||
|
void espconn_mesh_disable(espconn_mesh_callback disable_cb);
|
||
|
void espconn_mesh_init();
|
||
|
void espconn_mesh_init_group_list(uint8_t *dev_mac, uint16_t dev_count);
|
||
|
void espconn_mesh_set_dev_type(uint8_t dev_type);
|
||
|
void espconn_mesh_setup_timer(os_timer_t *timer, uint32_t time,
|
||
|
os_timer_func_t cb, void *arg, bool repeat);
|
||
|
|
||
|
#endif
|
||
|
|