28 extern WIFI_State *wifi_state; ///< WiFi state |
28 extern WIFI_State *wifi_state; ///< WiFi state |
29 extern SemaphoreHandle_t xSemaphoreWiFi; ///< WiFi lock semaphore |
29 extern SemaphoreHandle_t xSemaphoreWiFi; ///< WiFi lock semaphore |
30 extern unit_t units[3]; |
30 extern unit_t units[3]; |
31 extern SemaphoreHandle_t xSemaphoreUnits; |
31 extern SemaphoreHandle_t xSemaphoreUnits; |
32 extern const esp_app_desc_t *app_desc; |
32 extern const esp_app_desc_t *app_desc; |
33 |
33 extern strConfig_t config; |
34 |
34 |
35 |
35 |
36 void connect_mqtt(bool state) |
36 void connect_mqtt(bool state) |
37 { |
37 { |
38 if (state) |
38 if (state) |
125 payload = xstrcat(payload, (char *)"\",\"alias\":\""); |
125 payload = xstrcat(payload, (char *)"\",\"alias\":\""); |
126 payload = xstrcat(payload, units[i].alias); |
126 payload = xstrcat(payload, units[i].alias); |
127 payload = xstrcat(payload, (char *)"\",\"mode\":\""); |
127 payload = xstrcat(payload, (char *)"\",\"mode\":\""); |
128 payload = xstrcat(payload, (char *)unitMode[units[i].mode]); |
128 payload = xstrcat(payload, (char *)unitMode[units[i].mode]); |
129 payload = xstrcat(payload, (char *)"\",\"alarm\":"); |
129 payload = xstrcat(payload, (char *)"\",\"alarm\":"); |
130 sprintf(buf, "%d", units[i].alarm); |
130 sprintf(buf, "%lu", units[i].alarm); |
131 payload = xstrcat(payload, buf); |
131 payload = xstrcat(payload, buf); |
132 |
132 |
133 // temperature_state temperature_address temperature |
133 // temperature_state temperature_address temperature |
134 payload = xstrcat(payload, (char *)",\"temperature\":{\"state\":\""); |
134 payload = xstrcat(payload, (char *)",\"temperature\":{\"state\":\""); |
135 payload = xstrcat(payload, (char *)sensState[units[i].temperature_state]); |
135 payload = xstrcat(payload, (char *)sensState[units[i].temperature_state]); |
361 |
361 |
362 /* event handler and event group for the wifi driver */ |
362 /* event handler and event group for the wifi driver */ |
363 xEventGroupMQTT = xEventGroupCreate(); |
363 xEventGroupMQTT = xEventGroupCreate(); |
364 EventBits_t uxBits; |
364 EventBits_t uxBits; |
365 esp_mqtt_client_config_t mqtt_cfg = { |
365 esp_mqtt_client_config_t mqtt_cfg = { |
366 .uri = "mqtt://localhost", |
366 .broker = { |
|
367 .address.uri = "mqtt://localhost", |
|
368 }, |
367 }; |
369 }; |
368 client = esp_mqtt_client_init(&mqtt_cfg); |
370 client = esp_mqtt_client_init(&mqtt_cfg); |
369 esp_mqtt_client_register_event(client, ESP_EVENT_ANY_ID, mqtt_event_handler, client); |
371 esp_mqtt_client_register_event(client, ESP_EVENT_ANY_ID, mqtt_event_handler, client); |
370 |
372 |
371 /* |
373 /* |