46 lines
1.5 KiB
ReStructuredText
46 lines
1.5 KiB
ReStructuredText
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();
|
|
} |