This commit is contained in:
Stephan Mühl
2023-03-22 12:15:18 +01:00
committed by GitHub
parent 3e12414a87
commit adb5102869
203 changed files with 35010 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
Connection parameters
=====================
:doc:`HAMqtt </documents/api/core/ha-mqtt>` class exposes a few variants of the ``begin`` method that allows specifying the MQTT connection parameters.
**This method should be called only once and at the end of the setup logic.**
The example below presents all possible variants. Pick one that meets your requirements.
.. NOTE::
Connection to the MQTT broker is established asynchronously.
The :doc:`HAMqtt::begin </documents/api/core/ha-mqtt>` method just sets the parameters of the connection.
The connection attempt is made during the loop cycle.
::
#include <Ethernet.h>
#include <ArduinoHA.h>
byte mac[] = {0x00, 0x10, 0xFA, 0x6E, 0x38, 0x4A};
EthernetClient client;
HADevice device(mac, sizeof(mac));
HAMqtt mqtt(client, device);
void setup() {
Ethernet.begin(mac);
// anoymous connection on default port 1883
mqtt.begin("192.168.1.50");
// anoymous connection on port 8888
mqtt.begin("192.168.1.50", 8888);
// connection with credentials on default port 1883
mqtt.begin("192.168.1.50", "username", "password");
// connection with credentials on port 8888
mqtt.begin("192.168.1.50", 8888, "username", "password");
// you can also use hostname in all variants
mqtt.begin("mybroker.local");
}
void loop() {
Ethernet.maintain();
mqtt.loop();
}