#pragma once #include "logic/display_controller.h" #include "logic/settings.h" // Home Assistant integration over MQTT (with discovery): // FlipDot Display Clock switch: on = clock, off = Nintendo logo // FlipDot Display Power switch: off = clear the display and switch it off // FlipDot Display Firmware sensor: version and health, e.g. "2.1.0, ok, 0 crashes, ..." // FlipDot Display Recovery button: restart into the recovery app (for 10 minutes) // // The broker comes from the settings (web UI); an empty host means BROKER_ADDR, MQTT_USER // and MQTT_PASSWORD from secrets.h. Changes need a restart. void homeAssistantBegin(DisplayController &controller, const HomeAssistantSettings &settings); void homeAssistantLoop(); bool homeAssistantConnected(); // Publish the firmware status (only sent when it changes, and again after a reconnect) void homeAssistantSetFirmwareStatus(const char *status);