bmsd/nodes.h

Fri, 17 Jun 2022 16:18:04 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 17 Jun 2022 16:18:04 +0200
changeset 790
98bd22f6629b
parent 686
ca1fbb3bd3db
child 795
9472106a3143
permissions
-rw-r--r--

Version 0.3.39. Log ispindel, fermenters and co2pressure in MySQL. Limit logging to at most once per 10 minutes.

/**
 * @file nodes.h
 */

#ifndef _NODES_H
#define _NODES_H

void node_dump(sys_node_list *node);

/**
 * @brief Birth of a node or data update. Create it in the database if 
 *        never seen before, else just update the database entry.
 * @param topic The MQTT topic string, contains the node type and name.
 * @param payload The JSON formatted payload with the node details.
 */
void node_birth_data(char *topic, char *payload);

/**
 * @brief Death of a node. Mark it offline in the database.
 * @param topic The MQTT topic string, contains the node type and name.
 */
void node_death(char *topic);

/**
 * @brief Check if nodes are still online and mark them offline if not
 *        been seen for twice the node interval time plus a few seconds..
 */
void nodes_check_online(void);

#endif

mercurial