Files
aqhomecontrol/apps/aqhome-react/server_p.h
2025-03-09 23:25:02 +01:00

65 lines
1.4 KiB
C

/****************************************************************************
* This file is part of the project AqHome.
* AqHome (c) by 2025 Martin Preuss, all rights reserved.
*
* The license for this file can be found in the file COPYING which you
* should have received along with this file.
****************************************************************************/
#ifndef AQHOME_REACT_SERVER_P_H
#define AQHOME_REACT_SERVER_P_H
#include "./server.h"
#include <gwenhywfar/db.h>
/* default values */
#define AQHOME_REACT_DEFAULT_PIDFILE "/var/run/aqhome-react.pid"
#define AQHOME_REACT_DEFAULT_DATADIR "/var/lib/aqhome-react"
#define AQHOME_REACT_DEFAULT_VARSFILE "vars.conf"
#define AQHOME_REACT_DEFAULT_BROKER_PORT 1899
#define AQHOME_REACT_DEFAULT_BROKER_CLIENTID "react"
typedef struct AQH_REACT_SERVER AQH_REACT_SERVER;
struct AQH_REACT_SERVER {
AQH_OBJECT *brokerEndpoint;
GWEN_DB_NODE *dbArgs;
char *pidFile;
char *varsFile;
int timeout; /* timeout for run e.g. inside valgrind */
char *brokerAddress;
int brokerPort;
char *brokerClientId;
AQHREACT_UNIT *timerUnit;
AQHREACT_UNIT *serverVarChangeUnit;
AQHREACT_UNIT *localVarChangeUnit;
AQHREACT_UNIT_LIST *unitList;
AQH_VARS *localVars;
time_t latestNetworkFileTime;
time_t timestampBrokerDown;
int timeoutInSeconds;
};
AQH_REACT_SERVER *AQH_ReactServer_GetServerData(const AQH_OBJECT *o);
#endif