45 lines
762 B
C
45 lines
762 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;
|
|
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
|