main/task_mqtt.h

Tue, 04 Apr 2023 20:57:49 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 04 Apr 2023 20:57:49 +0200
changeset 15
64028e178ff1
parent 7
2b337dd92f25
permissions
-rw-r--r--

Splitted wifi and mqtt connect states to make the connections more robust. Protect the mqtt connection request against requests when a request is already done or in progress.

/**
 * @file task_mqtt.h
 * @brief The FreeRTOS task to maintain MQTT connections.
 */

#ifndef	_TASK_MQTT_H
#define	_TASK_MQTT_H



/**
 * @brief Request a MQTT connection
 * @param state Request of disconnect a connection.
 */
void request_mqtt(bool state);


/**
 * @brief Check if MQTT is connected
 * @return Returns true if MQTT is connected
 */
bool ready_mqtt(void);


/**
 * @brief Wait for disconnect with timeout.
 * @param time Timeout in milliseconds.
 */
void wait_mqtt(int time);


/**
 * @brief Publish
 */
void publish(void);


/**
 * @brief The FreeRTOS task to run MQTT connections.
 * @param pvParameters Parameters for the task.
 */
void task_mqtt(void *pvParameters);


#endif

mercurial