1 /* 2 * Copyright (C) 2015-2020 Alibaba Group Holding Limited 3 */ 4 5 #ifndef _BLECFG_PUB_H_ 6 #define _BLECFG_PUB_H_ 7 8 #include <stdio.h> 9 #include <stdint.h> 10 11 #include "ulog/ulog.h" 12 #include "aos/ble.h" 13 #include "atomic.h" 14 #include "bluetooth/bluetooth.h" 15 #include "bluetooth/gatt.h" 16 #include "bluetooth/uuid.h" 17 #include "netmgr.h" 18 #include "netmgr_wifi.h" 19 #include "ble_netconfig.h" 20 #include "uservice/eventid.h" 21 #include "vfsdev/wifi_dev.h" 22 23 /* 日志系统 */ 24 #define BLECFG_TAG "BLECFG" 25 26 #define BLECFG_LOG_ERROR(fmt, ...) LOGE(BLECFG_TAG, fmt, ##__VA_ARGS__) 27 #define BLECFG_LOG_WARNING(fmt, ...) LOGW(BLECFG_TAG, fmt, ##__VA_ARGS__) 28 #define BLECFG_LOG_INFO(fmt, ...) LOGI(BLECFG_TAG, fmt, ##__VA_ARGS__) 29 #define BLECFG_LOG_DEBUG(fmt, ...) LOGD(BLECFG_TAG, fmt, ##__VA_ARGS__) 30 31 /* 返回给miniapp的消息类型 */ 32 typedef enum { 33 BLECFG_DHCP_SUCCESS = 0, 34 BLECFG_DHCP_FAIL, 35 BLECFG_PING_SUCCESS, 36 BLECFG_PING_FAIL, 37 } BLENET_RESPONSE; 38 39 /* 手机侧APP小程序下发命令的回调函数 */ 40 typedef void (*BleCfg_msg_cb)(uint8_t *buf, int32_t len); 41 42 /* wifi链接热点成功时的回调函数 */ 43 typedef void (*BleCfg_dhcp_cb)(); 44 45 /* 链接linksdk成功时的回调函数 */ 46 typedef void (*BleCfg_link_cb)(); 47 48 BLECFG_STATE BleCfg_stack_init(BleCfg_msg_cb msg_callback); 49 BLECFG_STATE BleCfg_stack_start(); 50 BLECFG_STATE BleCfg_stack_stop(); 51 BLECFG_STATE BleCfg_stack_disconnect(); 52 BLECFG_STATE BleCfg_notificate(const uint8_t *data, uint16_t size); 53 54 BLECFG_STATE BleCfg_wifi_set(char *ssid, char *passwd); 55 BLECFG_STATE BleCfg_wifi_connect(); 56 BLECFG_STATE BleCfg_wifi_save(); 57 BLECFG_STATE BleCfg_wifi_restore(); 58 BLECFG_STATE BleCfg_netmgr_init(BleCfg_dhcp_cb dhcp_callback); 59 60 BLECFG_STATE BleCfg_dev_set(char *pk, char *dn, char *ds); 61 BLECFG_STATE BleCfg_dev_connect(); 62 BLECFG_STATE BleCfg_dev_save(); 63 BLECFG_STATE BleCfg_dev_restore(); 64 BLECFG_STATE BleCfg_linksdk_init(BleCfg_link_cb linksdk_callback); 65 66 #endif 67