Różnice
Różnice między wybraną wersją a wersją aktualną.
| Poprzednia rewizja po obu stronach Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
| programowanie:esp32:mqtt [2024/08/10 00:54] – sases | programowanie:esp32:mqtt [2024/09/08 18:10] (aktualna) – sases | ||
|---|---|---|---|
| Linia 1: | Linia 1: | ||
| - | ====== MQTT ====== | + | ====== MQTT na ESP32 ====== |
| + | \\ | ||
| \\ | \\ | ||
| - | === Deklaracje === | + | ===== Deklaracje |
| <code c> | <code c> | ||
| Linia 9: | Linia 10: | ||
| #include < | #include < | ||
| - | const String Device_ID = " | + | const String Device_ID = " |
| const String myHostname = " | const String myHostname = " | ||
| - | String Mqtt_Server = " | + | String Mqtt_Server = " |
| - | int Mqtt_Port = numer_portu; | + | int Mqtt_Port = numer_portu; |
| - | String Mqtt_User = " | + | String Mqtt_User = " |
| - | String Mqtt_Password = " | + | String Mqtt_Password = " |
| - | // const int Mqtt_Buffer_Size = 512; // | + | // const int Mqtt_Buffer_Size = 512; // powiększenie rozmiaru bufora publikowania |
| PubSubClient mqttClient(wifiClient); | PubSubClient mqttClient(wifiClient); | ||
| Linia 23: | Linia 24: | ||
| void connectMqtt(); | void connectMqtt(); | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Połączenie podczas uruchomienia === | + | ===== Połączenie podczas uruchomienia |
| <code c> | <code c> | ||
| Linia 34: | Linia 36: | ||
| } | } | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Ponowne łączenie w przypadku rozłączenia === | + | ===== Ponowne łączenie w przypadku rozłączenia |
| <code c> | <code c> | ||
| Linia 47: | Linia 50: | ||
| } | } | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Funkcja łączenia === | + | ===== Funkcja łączenia |
| <code c> | <code c> | ||
| Linia 61: | Linia 65: | ||
| mqttClient.setServer(Mqtt_Server.c_str(), | mqttClient.setServer(Mqtt_Server.c_str(), | ||
| mqttClient.setCallback(callback); | mqttClient.setCallback(callback); | ||
| - | mqttClient.setBufferSize(Mqtt_Buffer_Size); | + | |
| while (!mqttClient.connected() and apiGetSuccess) { | while (!mqttClient.connected() and apiGetSuccess) { | ||
| Linia 77: | Linia 81: | ||
| { | { | ||
| Serial.println(" | Serial.println(" | ||
| - | mqttClient.subscribe(" | + | mqttClient.subscribe(" |
| } | } | ||
| else | else | ||
| Linia 96: | Linia 100: | ||
| } | } | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Funkcja odbierania wiadomości === | + | ===== Funkcja odbierania wiadomości |
| <code c> | <code c> | ||
| Linia 116: | Linia 121: | ||
| } | } | ||
| - | if (splitTopic[0] == " | + | if (splitTopic[0] == " |
| { | { | ||
| ... | ... | ||
| Linia 122: | Linia 127: | ||
| } | } | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Publikowanie wiadomości === | + | ===== Publikowanie wiadomości ===== |
| + | |||
| + | == Proste | ||
| - | Proste | ||
| <code c> | <code c> | ||
| mqttClient.publish(" | mqttClient.publish(" | ||
| </ | </ | ||
| - | Sprawdzające rozmiar wiadomości | + | |
| + | == Sprawdzające rozmiar wiadomości | ||
| <code c> | <code c> | ||
| String topic = " | String topic = " | ||
| Linia 141: | Linia 150: | ||
| } | } | ||
| </ | </ | ||
| + | \\ | ||
| \\ | \\ | ||
| - | === Kody błędów połączenia === | + | ===== Kody błędów połączenia |
| ^ -4 | MQTT_CONNECTION_TIMEOUT | the server didn't respond within the keepalive time | | ^ -4 | MQTT_CONNECTION_TIMEOUT | the server didn't respond within the keepalive time | | ||