aqhome-mqttlog: Implemented SETDATA.
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
#include "aqhome/aqhome.h"
|
||||
#include "aqhome/msg/msg_node.h"
|
||||
#include "aqhome/ipc/msg_ipc_result.h"
|
||||
#include "aqhome/ipc/data/msg_data_multidata.h"
|
||||
#include "aqhome/ipc/data/msg_data_set.h"
|
||||
#include "aqhome/ipc/data/ipc_data.h"
|
||||
|
||||
#include <gwenhywfar/args.h>
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
|
||||
static int _doSetData(GWEN_DB_NODE *dbArgs);
|
||||
static void _sendCommand(GWEN_MSG_ENDPOINT *epTcp, const char *valueName, const char *valueUnits, double dataToSend);
|
||||
static void _sendCommand(GWEN_MSG_ENDPOINT *epTcp, const char *valueName, const char *valueUnits, const char *valueData);
|
||||
|
||||
|
||||
|
||||
@@ -191,9 +191,7 @@ int _doSetData(GWEN_DB_NODE *dbArgs)
|
||||
const char *valueName;
|
||||
const char *valueUnits;
|
||||
const char *valueData;
|
||||
double dataToSend;
|
||||
GWEN_MSG *msg;
|
||||
int rv;
|
||||
|
||||
timeoutInSeconds=GWEN_DB_GetIntValue(dbArgs, "timeout", 0, 5);
|
||||
valueName=GWEN_DB_GetCharValue(dbArgs, "valueName", 0, NULL);
|
||||
@@ -209,12 +207,6 @@ int _doSetData(GWEN_DB_NODE *dbArgs)
|
||||
return 1;
|
||||
}
|
||||
|
||||
rv=GWEN_Text_StringToDouble(valueData, &dataToSend);
|
||||
if (rv<0) {
|
||||
DBG_ERROR(NULL, "ERROR: Invalid data");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*fprintf(stdout, "Sending SetData request\n");*/
|
||||
|
||||
|
||||
@@ -224,7 +216,7 @@ int _doSetData(GWEN_DB_NODE *dbArgs)
|
||||
return 2;
|
||||
}
|
||||
|
||||
_sendCommand(epTcp, valueName, valueUnits, dataToSend);
|
||||
_sendCommand(epTcp, valueName, valueUnits, valueData);
|
||||
|
||||
for (;;) {
|
||||
uint16_t code;
|
||||
@@ -262,7 +254,7 @@ int _doSetData(GWEN_DB_NODE *dbArgs)
|
||||
|
||||
|
||||
|
||||
void _sendCommand(GWEN_MSG_ENDPOINT *epTcp, const char *valueName, const char *valueUnits, double dataToSend)
|
||||
void _sendCommand(GWEN_MSG_ENDPOINT *epTcp, const char *valueName, const char *valueUnits, const char *valueData)
|
||||
{
|
||||
GWEN_MSG *msgOut;
|
||||
AQH_VALUE *v;
|
||||
@@ -271,7 +263,7 @@ void _sendCommand(GWEN_MSG_ENDPOINT *epTcp, const char *valueName, const char *v
|
||||
AQH_Value_SetNameForSystem(v, valueName);
|
||||
AQH_Value_SetValueUnits(v, valueUnits);
|
||||
|
||||
msgOut=AQH_MultiDataDataIpcMsg_newForOne(AQH_MSGTYPE_IPC_DATA_SETDATA, v, 0, dataToSend);
|
||||
msgOut=AQH_SetDataIpcMsg_new(AQH_MSGTYPE_IPC_DATA_SETDATA, v, valueData);
|
||||
AQH_Value_free(v);
|
||||
GWEN_MsgEndpoint_AddSendMessage(epTcp, msgOut);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user