#ifndef MQTT_HANDLER_H #define MQTT_HANDLER_H #include #include #include // 用于永久存储 targetDeviceID // 声明 targetDeviceID 为外部变量 extern String targetDeviceID; extern String serverAddress; extern uint16_t serverPort; extern String deviceID; extern WiFiClient espClient; extern PubSubClient client; extern const char* mqttUser; extern const char* mqttPassword; // 声明 GPIO3_PIN #define GPIO3_PIN 3 // 定义 GPIO3 引脚 void mqttSetup(); bool connectMQTT(); void mqttLoop(); void mqttCallback(char* topic, byte* payload, unsigned int length); void sendMQTTMessage(const char* message); void sendRelayControlMessage(const char* state); String extractTargetDeviceIDFromMessage(const String& message); void handleGpio18State(); // 添加 handleGpio18State 的声明 void handleRelayControl(); //开关继电器 // 声明 addBlinkTask 为带参数的函数 void addBlinkTask(int blinkCount); // 添加闪烁任务,接受一个 int 参数 #endif