mirror of
https://github.com/jomjol/AI-on-the-edge-device.git
synced 2025-12-08 20:46:52 +03:00
* Run the Homeassistant Discovery directly after connecting to the broker. Before it was delayed 10s and happened while the first round alredy was in progress * schedule sending HA discovery and static topics * Allow setting QOS for MQTT topics * . * . * change MQTT QOS1 expiration time from (default) 30 to 5s * add logging of heap change on MQTT topic sendings * wait for MQTT transmission timeout after publishing * use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap * . * use PSRAM for the MQTT outbox * use QOS1 for HA discovery again * . * . * disable delay, not needed with PSRAM * . * consolidated scheduledSendingOf_DiscoveryAndStaticTopics into sendingOf_DiscoveryAndStaticTopics_scheduled * Send Homeasstsiatnt Discovery and static data in MQTT step instead of when the wifi gets connected * "WIFI roaming" by channel scan (AP switching at low RSSI) (#2120) * Activate 802.11kv wifi mesh roaming * Activate roaming by scanning * Revert stack reducation * move Wifi, LWIP and BSSI to PSRAm * added State Class "measurement" to rate_per_time_unit (#2116) Co-authored-by: CaCO3 <caco@ruinelli.ch> * use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap * use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap # Conflicts: # code/components/jomjol_mqtt/server_mqtt.cpp # Conflicts: # code/components/jomjol_mqtt/server_mqtt.cpp * . * . * move to next PR * Update code/components/jomjol_mqtt/server_mqtt.cpp * Update code/components/jomjol_mqtt/server_mqtt.cpp --------- Co-authored-by: CaCO3 <caco@ruinelli.ch> Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
31 lines
1.0 KiB
C++
31 lines
1.0 KiB
C++
#ifdef ENABLE_MQTT
|
|
|
|
#pragma once
|
|
|
|
#ifndef INTERFACE_MQTT_H
|
|
#define INTERFACE_MQTT_H
|
|
|
|
#include <string>
|
|
#include <map>
|
|
#include <functional>
|
|
|
|
bool MQTT_Configure(std::string _mqttURI, std::string _clientid, std::string _user, std::string _password,
|
|
std::string _maintopic, std::string _lwt, std::string _lwt_connected, std::string _lwt_disconnected,
|
|
int _keepalive, bool SetRetainFlag, void *callbackOnConnected);
|
|
int MQTT_Init();
|
|
void MQTTdestroy_client(bool _disable);
|
|
|
|
bool MQTTPublish(std::string _key, std::string _content, int qos, bool retained_flag = 1); // retained Flag as Standart
|
|
|
|
bool getMQTTisEnabled();
|
|
bool getMQTTisConnected();
|
|
|
|
void MQTTregisterConnectFunction(std::string name, std::function<void()> func);
|
|
void MQTTunregisterConnectFunction(std::string name);
|
|
void MQTTregisterSubscribeFunction(std::string topic, std::function<bool(std::string, char*, int)> func);
|
|
void MQTTdestroySubscribeFunction();
|
|
void MQTTconnected();
|
|
|
|
#endif //INTERFACE_MQTT_H
|
|
#endif //#ENABLE_MQTT
|