SolarEnergy/esp32_device/main/sync_response.h

46 lines
794 B
C

/**
* Synchronisation response
*/
#pragma once
#include <stddef.h>
#include <stdbool.h>
#include <cJSON.h>
#ifdef __cplusplus
extern "C"
{
#endif
typedef struct sync_response
{
size_t len;
char *available_update;
bool relays[];
} sync_response;
/**
* Decode synchronize response from server
*/
sync_response *sync_response_parse(cJSON *res);
/**
* Print synchronize reponse content
*/
void sync_response_print(sync_response *res);
/**
* Free memory allocated for synchronize response
*/
void sync_response_free(sync_response *res);
/**
* Check the desired status of a relay
*/
bool sync_response_is_relay_on(sync_response *res, int relay_number);
#ifdef __cplusplus
}
#endif