|
Sistema Embarcado LockWise
Sistema de fechadura inteligente com autenticação por voz, controle MQTT e aplicativo móvel
|
#include "config.h"#include "esp_event.h"#include "esp_log.h"#include "esp_mac.h"#include "esp_netif.h"#include "esp_peripherals.h"#include "esp_wifi.h"#include "freertos/idf_additions.h"#include "freertos/task.h"#include "lwip/sockets.h"#include "periph_wifi.h"#include "system_utils.h"#include "wifi.h"#include <ctype.h>#include <stdio.h>#include <string.h>Funções | |
| static void | ip_event_handler (void *arg, esp_event_base_t event_base, int32_t event_id, void *event_data) |
| Handler de eventos IP. | |
| static void | handle_pairing_client (int client_sock) |
| Trata cliente conectado ao servidor de pareamento. | |
| static void | parse_configure_request (const char *request, char *wifi_ssid, char *wifi_pass, char *user_id) |
| Analisa requisição de configuração HTTP. | |
| static void | timeout_task (void *param) |
| Tarefa de timeout para o modo de pareamento. | |
| void | wifi_init (void) |
| Inicializa a conectividade Wi-Fi em modo station (STA). | |
| static void | wifi_init_ap (void) |
| Inicializa Wi-Fi em modo Access Point para pareamento. | |
| void | start_pairing_server (void) |
| Inicia o servidor de pareamento Wi-Fi em modo Access Point (AP). | |
Variáveis | |
| static const char * | TAG = "\033[1mLOCKWISE:\033[34mWIFI\033[0m\033[34m" |
| static int | pairing_sock = -1 |
| Socket para servidor de pareamento. | |
| static bool | paired = false |
| Flag indicando se o pareamento foi concluído. | |
| static SemaphoreHandle_t | pair_mutex |
| Mutex para sincronização do processo de pareamento. | |
| static bool | ip_handler_registered = false |
| Flag indicando se o handler de eventos IP está registrado. | |
|
static |
Trata cliente conectado ao servidor de pareamento.
| client_sock | Socket do cliente. |
Processa requisições HTTP POST /configure para configuração inicial.
|
static |
Handler de eventos IP.
| arg | Argumentos do handler. |
| event_base | Base do evento. |
| event_id | ID do evento. |
| event_data | Dados do evento. |
Processa eventos de obtenção de IP, configurando DNS.
|
static |
Analisa requisição de configuração HTTP.
| request | Requisição HTTP completa. |
| wifi_ssid | Buffer para SSID Wi-Fi. |
| wifi_pass | Buffer para senha Wi-Fi. |
| user_id | Buffer para ID do usuário. |
Extrai parâmetros da requisição POST para configuração inicial.
| void start_pairing_server | ( | void | ) |
Inicia o servidor de pareamento Wi-Fi em modo Access Point (AP).
Esta função configura o dispositivo como um ponto de acesso Wi-Fi para permitir configuração inicial via aplicativo móvel.
|
static |
Tarefa de timeout para o modo de pareamento.
| param | Parâmetros da tarefa (não usado). |
Aguarda o tempo limite de pareamento e reinicializa se não pareado.
| void wifi_init | ( | void | ) |
Inicializa a conectividade Wi-Fi em modo station (STA).
Esta função configura e conecta o dispositivo à rede Wi-Fi usando as credenciais armazenadas na configuração (SSID e senha).
|
static |
Inicializa Wi-Fi em modo Access Point para pareamento.
Configura o dispositivo como AP com SSID e senha derivados do device_id.
|
static |
Flag indicando se o handler de eventos IP está registrado.
|
static |
Mutex para sincronização do processo de pareamento.
|
static |
Flag indicando se o pareamento foi concluído.
|
static |
Socket para servidor de pareamento.
|
static |