diff --git a/aqhome/0BUILD b/aqhome/0BUILD index 3803226..8cec642 100644 --- a/aqhome/0BUILD +++ b/aqhome/0BUILD @@ -63,10 +63,8 @@ ipc nodes mqtt - http hexfile data - service @@ -75,10 +73,8 @@ aqhipc aqhnodes aqhmqtt - aqhhttp aqhhexfile aqhdata - aqhservice diff --git a/aqhome/data/0BUILD b/aqhome/data/0BUILD index c7f5840..e22b5a9 100644 --- a/aqhome/data/0BUILD +++ b/aqhome/data/0BUILD @@ -28,36 +28,20 @@ - room.t2d - device.t2d - mqtttopic.t2d value.t2d - datapoint.t2d - room.c - device.c - mqtttopic.c value.c - datapoint.c - room.h - device.h - mqtttopic.h value.h - datapoint.h - room_p.h - device_p.h - mqtttopic_p.h value_p.h - datapoint_p.h diff --git a/aqhome/data/mqtttopic.t2d b/aqhome/data/mqtttopic.t2d deleted file mode 100644 index cd6a1f9..0000000 --- a/aqhome/data/mqtttopic.t2d +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - AQH_MQTT_TOPIC - AQH_MqttTopic - mqtttopic - - - with_xml - with_db - with_list1 - with_list2 - - - -
aqhome/api.h
-
- - - - -
- - - - - - - numeric type - - - - json data - - - - - - - - - - - 0 - 0 - public - with_getbymember - - - - 0 - 0 - public - - - - - 0 - 0 - public - own with_getbymember - - - - 0 - 0 - public - - - - - -
- -
- diff --git a/aqhome/data/storage.c b/aqhome/data/storage.c index 06d5240..41cc72f 100644 --- a/aqhome/data/storage.c +++ b/aqhome/data/storage.c @@ -31,13 +31,6 @@ */ -static void _handleJsonTopic(AQH_STORAGE *sto, const AQH_MQTT_TOPIC *topic, const char *sValue); -static void _handleNumTopic(AQH_STORAGE *sto, const AQH_MQTT_TOPIC *topic, const char *sValue); -static void _handleValueForJsonElement(AQH_STORAGE *sto, - const AQH_MQTT_TOPIC *topic, - GWEN_JSON_ELEM *json, - time_t timestamp, - const AQH_VALUE *value); static AQH_DATAFILE *_getDataFileByValueId(AQH_STORAGE *sto, uint64_t valueId); static AQH_DATAFILE *_findDataFileByValueId(const AQH_STORAGE *sto, uint64_t valueId); static AQH_DATAFILE *_openOrCreateDataFileByValueId(AQH_STORAGE *sto, uint64_t valueId); @@ -56,12 +49,8 @@ AQH_STORAGE *AQH_Storage_new(void) AQH_STORAGE *sto; GWEN_NEW_OBJECT(AQH_STORAGE, sto); - sto->roomList=AQH_Room_List_new(); - sto->deviceList=AQH_Device_List_new(); - sto->mqttTopicList=AQH_MqttTopic_List_new(); sto->valueList=AQH_Value_List_new(); sto->dataFileList=AQH_DataFile_List_new(); - sto->recvdTopicList=GWEN_StringList_new(); return sto; } @@ -73,10 +62,6 @@ void AQH_Storage_free(AQH_STORAGE *sto) if (sto) { AQH_DataFile_List_free(sto->dataFileList); AQH_Value_List_free(sto->valueList); - AQH_MqttTopic_List_free(sto->mqttTopicList); - AQH_Device_List_free(sto->deviceList); - AQH_Room_List_free(sto->roomList); - GWEN_StringList_free(sto->recvdTopicList); free(sto->dataFileFolder); free(sto->stateFile); @@ -103,117 +88,6 @@ void AQH_Storage_SetStateFile(AQH_STORAGE *sto, const char *s) -GWEN_STRINGLIST *AQH_Storage_GetRecvdTopicList(const AQH_STORAGE *sto) -{ - return sto?sto->recvdTopicList:NULL; -} - - - - - -void AQH_Storage_AddRoom(AQH_STORAGE *sto, AQH_ROOM *r) -{ - if (sto && r) { - uint64_t id; - - id=++(sto->lastRoomId); - AQH_Room_SetId(r, id); - AQH_Room_List_Add(r, sto->roomList); - } -} - - - -AQH_ROOM_LIST *AQH_Storage_GetRoomList(const AQH_STORAGE *sto) -{ - return sto?sto->roomList:NULL; -} - - - -AQH_ROOM *AQH_Storage_GetRoomById(const AQH_STORAGE *sto, uint64_t id) -{ - return sto?AQH_Room_List_GetById(sto->roomList, id):NULL; -} - - - -AQH_ROOM *AQH_Storage_GetRoomByName(const AQH_STORAGE *sto, const char *s) -{ - return sto?AQH_Room_List_GetByName(sto->roomList, s):NULL; -} - - - -void AQH_Storage_AddDevice(AQH_STORAGE *sto, AQH_DEVICE *dev) -{ - if (sto && dev) { - uint64_t id; - - id=++(sto->lastDeviceId); - AQH_Device_SetId(dev, id); - AQH_Device_List_Add(dev, sto->deviceList); - } -} - - - -AQH_DEVICE_LIST *AQH_Storage_GetDeviceList(const AQH_STORAGE *sto) -{ - return sto?sto->deviceList:NULL; -} - - - -AQH_DEVICE *AQH_Storage_GetDeviceById(const AQH_STORAGE *sto, uint64_t id) -{ - return sto?AQH_Device_List_GetById(sto->deviceList, id):NULL; -} - - - -AQH_DEVICE *AQH_Storage_GetDeviceByName(const AQH_STORAGE *sto, const char *s) -{ - return sto?AQH_Device_List_GetByName(sto->deviceList, s):NULL; -} - - - -void AQH_Storage_AddMqttTopic(AQH_STORAGE *sto, AQH_MQTT_TOPIC *t) -{ - if (sto && t) { - uint64_t id; - - id=++(sto->lastTopicId); - AQH_MqttTopic_SetId(t, id); - AQH_MqttTopic_List_Add(t, sto->mqttTopicList); - } -} - - - -AQH_MQTT_TOPIC_LIST *AQH_Storage_GetMqttTopicList(const AQH_STORAGE *sto) -{ - return sto?sto->mqttTopicList:NULL; -} - - - -AQH_MQTT_TOPIC *AQH_Storage_GetMqttTopicById(const AQH_STORAGE *sto, uint64_t id) -{ - return sto?AQH_MqttTopic_List_GetById(sto->mqttTopicList, id):NULL; -} - - - -AQH_MQTT_TOPIC *AQH_Storage_GetMqttTopicByTopic(const AQH_STORAGE *sto, const char *topic) -{ - return sto?AQH_MqttTopic_List_GetByTopic(sto->mqttTopicList, topic):NULL; -} - - - void AQH_Storage_AddValue(AQH_STORAGE *sto, AQH_VALUE *value) { if (sto && value) { @@ -499,143 +373,6 @@ int AQH_Storage_GetLastDataPoint(AQH_STORAGE *sto, uint64_t valueId, uint64_t *p -void AQH_Storage_HandleMqttPublish(AQH_STORAGE *sto, const char *sTopic, const char *sValue) -{ - if (sto) { - const AQH_MQTT_TOPIC *topic; - - topic=AQH_Storage_GetMqttTopicByTopic(sto, sTopic); - if (topic) { - DBG_INFO(AQH_LOGDOMAIN, "Handling MQTT topic \"%s\"", sTopic); - if (AQH_MqttTopic_GetDataType(topic)==AQH_MqttTopicType_Json) - _handleJsonTopic(sto, topic, sValue); - else - _handleNumTopic(sto, topic, sValue); - } - else { - DBG_INFO(AQH_LOGDOMAIN, "Unknown MQTT topic \"%s\"", sTopic); - GWEN_StringList_AppendString(sto->recvdTopicList, sTopic, 0, 1); - } - } -} - - - -void _handleJsonTopic(AQH_STORAGE *sto, const AQH_MQTT_TOPIC *topic, const char *sValue) -{ - time_t now; - GWEN_JSON_ELEM *json; - - now=time(NULL); - json=GWEN_JsonElement_fromString(sValue); - if (json) { - AQH_VALUE *value; - uint64_t topicId; - - topicId=AQH_MqttTopic_GetId(topic); - value=AQH_Value_List_First(sto->valueList); - while(value) { - if (AQH_Value_GetTopicId(value)==topicId) { - _handleValueForJsonElement(sto, topic, json, now, value); - } - value=AQH_Value_List_Next(value); - } - } - else { - DBG_ERROR(AQH_LOGDOMAIN, "Error parsing JSON data [%s]", sValue); - } -} - - - -void _handleValueForJsonElement(AQH_STORAGE *sto, - const AQH_MQTT_TOPIC *topic, - GWEN_JSON_ELEM *json, - time_t timestamp, - const AQH_VALUE *value) -{ - const char *dataPath; - - dataPath=AQH_Value_GetDataPath(value); - if (dataPath) { - GWEN_JSON_ELEM *jsonElem; - - jsonElem=GWEN_JsonElement_GetElementByPath(json, dataPath, GWEN_PATH_FLAGS_PATHMUSTEXIST); - if (jsonElem) { - const char *s; - - s=GWEN_JsonElement_GetData(jsonElem); - if (s && *s) { - int rv; - double v; - - rv=GWEN_Text_StringToDouble(s, &v); - if (rv<0) { - DBG_ERROR(AQH_LOGDOMAIN, "Invalid value \"%s\" for topic %s:%s", s, AQH_MqttTopic_GetTopic(topic), dataPath); - } - else { - AQH_DATAFILE *df; - - df=_getDataFileByValueId(sto, AQH_Value_GetId(value)); - if (df) { - DBG_INFO(AQH_LOGDOMAIN, "Appending record to datafile"); - AQH_DataFile_AppendRecord(df, timestamp, v); - } - } - } - else { - DBG_INFO(AQH_LOGDOMAIN, "Empty JSON element \"%s\"", dataPath); - } - } - else { - DBG_ERROR(AQH_LOGDOMAIN, "No value for topic %s:%s", AQH_MqttTopic_GetTopic(topic), dataPath); - } - } - else { - DBG_INFO(AQH_LOGDOMAIN, "No datapath in value \"%s\"", AQH_Value_GetNameForSystem(value)); - } -} - - - -void _handleNumTopic(AQH_STORAGE *sto, const AQH_MQTT_TOPIC *topic, const char *sValue) -{ - int rv; - double v; - time_t now; - - now=time(NULL); - - rv=GWEN_Text_StringToDouble(sValue, &v); - if (rv<0) { - DBG_ERROR(AQH_LOGDOMAIN, "Invalid value \"%s\" for topic %s, ignoring", sValue, AQH_MqttTopic_GetTopic(topic)); - } - else { - AQH_VALUE *value; - uint64_t topicId; - - topicId=AQH_MqttTopic_GetId(topic); - value=AQH_Value_List_First(sto->valueList); - while(value) { - if (AQH_Value_GetTopicId(value)==topicId) - break; - value=AQH_Value_List_Next(value); - } - if (value) { - AQH_DATAFILE *df; - - df=_getDataFileByValueId(sto, AQH_Value_GetId(value)); - if (df) { - DBG_INFO(AQH_LOGDOMAIN, "Appending record to datafile"); - AQH_DataFile_AppendRecord(df, now, v); - } - } - } -} - - - - AQH_DATAFILE *_getDataFileByValueId(AQH_STORAGE *sto, uint64_t valueId) { AQH_DATAFILE *df; diff --git a/aqhome/data/storage.h b/aqhome/data/storage.h index 85e0946..d77bc2e 100644 --- a/aqhome/data/storage.h +++ b/aqhome/data/storage.h @@ -49,21 +49,6 @@ extern "C" { AQHOME_API AQH_STORAGE *AQH_Storage_new(void); AQHOME_API void AQH_Storage_free(AQH_STORAGE *sto); -AQHOME_API void AQH_Storage_AddRoom(AQH_STORAGE *sto, AQH_ROOM *r); -AQHOME_API AQH_ROOM_LIST *AQH_Storage_GetRoomList(const AQH_STORAGE *sto); -AQHOME_API AQH_ROOM *AQH_Storage_GetRoomById(const AQH_STORAGE *sto, uint64_t id); -AQHOME_API AQH_ROOM *AQH_Storage_GetRoomByName(const AQH_STORAGE *sto, const char *s); - -AQHOME_API void AQH_Storage_AddDevice(AQH_STORAGE *sto, AQH_DEVICE *dev); -AQHOME_API AQH_DEVICE_LIST *AQH_Storage_GetDeviceList(const AQH_STORAGE *sto); -AQHOME_API AQH_DEVICE *AQH_Storage_GetDeviceById(const AQH_STORAGE *sto, uint64_t id); -AQHOME_API AQH_DEVICE *AQH_Storage_GetDeviceByName(const AQH_STORAGE *sto, const char *s); - -AQHOME_API void AQH_Storage_AddMqttTopic(AQH_STORAGE *sto, AQH_MQTT_TOPIC *t); -AQHOME_API AQH_MQTT_TOPIC_LIST *AQH_Storage_GetMqttTopicList(const AQH_STORAGE *sto); -AQHOME_API AQH_MQTT_TOPIC *AQH_Storage_GetMqttTopicById(const AQH_STORAGE *sto, uint64_t id); -AQHOME_API AQH_MQTT_TOPIC *AQH_Storage_GetMqttTopicByTopic(const AQH_STORAGE *sto, const char *topic); - AQHOME_API void AQH_Storage_AddValue(AQH_STORAGE *sto, AQH_VALUE *value); AQHOME_API AQH_VALUE_LIST *AQH_Storage_GetValueList(const AQH_STORAGE *sto); AQHOME_API AQH_VALUE *AQH_Storage_GetValueById(const AQH_STORAGE *sto, uint64_t id); @@ -93,11 +78,6 @@ AQHOME_API uint64_t *AQH_Storage_GetDataPoints(AQH_STORAGE *sto, uint64_t valueI AQHOME_API int AQH_Storage_GetLastDataPoint(AQH_STORAGE *sto, uint64_t valueId, uint64_t *pTimestamp, double *pValue); -AQHOME_API void AQH_Storage_HandleMqttPublish(AQH_STORAGE *sto, const char *topic, const char *value); - -AQHOME_API GWEN_STRINGLIST *AQH_Storage_GetRecvdTopicList(const AQH_STORAGE *sto); - - #ifdef __cplusplus diff --git a/aqhome/data/storage_p.h b/aqhome/data/storage_p.h index 3eb91ef..a2c8492 100644 --- a/aqhome/data/storage_p.h +++ b/aqhome/data/storage_p.h @@ -16,29 +16,14 @@ #define AQH_STORAGE_XML_ELEMENTNAME_LASTIDS "lastIds" -#define AQH_STORAGE_XML_ELEMENTNAME_ROOMS "rooms" -#define AQH_STORAGE_XML_ELEMENTNAME_ROOM "room" - -#define AQH_STORAGE_XML_ELEMENTNAME_DEVICES "devices" -#define AQH_STORAGE_XML_ELEMENTNAME_DEVICE "device" - -#define AQH_STORAGE_XML_ELEMENTNAME_TOPICS "topics" -#define AQH_STORAGE_XML_ELEMENTNAME_TOPIC "topic" - #define AQH_STORAGE_XML_ELEMENTNAME_VALUES "values" #define AQH_STORAGE_XML_ELEMENTNAME_VALUE "value" struct AQH_STORAGE { - AQH_ROOM_LIST *roomList; - AQH_DEVICE_LIST *deviceList; - AQH_MQTT_TOPIC_LIST *mqttTopicList; AQH_VALUE_LIST *valueList; - uint64_t lastRoomId; - uint64_t lastDeviceId; - uint64_t lastTopicId; uint64_t lastValueId; char *stateFile; @@ -46,8 +31,6 @@ struct AQH_STORAGE { AQH_DATAFILE_LIST *dataFileList; - GWEN_STRINGLIST *recvdTopicList; - uint32_t runtimeFlags; }; diff --git a/aqhome/data/storage_readxml.c b/aqhome/data/storage_readxml.c index ef820c9..2eb81c4 100644 --- a/aqhome/data/storage_readxml.c +++ b/aqhome/data/storage_readxml.c @@ -26,9 +26,6 @@ static void _readLastIdsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _readRoomsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _readDevicesFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _readTopicsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); static void _readValuesFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); @@ -52,9 +49,6 @@ int AQH_Storage_ReadStateFile(AQH_STORAGE *sto, const char *sFilename) } _readLastIdsFromXml(sto, rootNode); - _readRoomsFromXml(sto, rootNode); - _readDevicesFromXml(sto, rootNode); - _readTopicsFromXml(sto, rootNode); _readValuesFromXml(sto, rootNode); GWEN_XMLNode_free(rootNode); @@ -70,90 +64,15 @@ void _readLastIdsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) nLastIds=GWEN_XMLNode_FindFirstTag(rootNode, AQH_STORAGE_XML_ELEMENTNAME_LASTIDS, NULL, NULL); if (nLastIds) { - sto->lastRoomId=GWEN_XMLNode_GetIntValue(nLastIds, "lastRoomId", 0); - sto->lastDeviceId=GWEN_XMLNode_GetIntValue(nLastIds, "lastDeviceId", 0); - sto->lastTopicId=GWEN_XMLNode_GetIntValue(nLastIds, "lastTopicId", 0); sto->lastValueId=GWEN_XMLNode_GetIntValue(nLastIds, "lastValueId", 0); } else { - sto->lastRoomId=0; - sto->lastDeviceId=0; - sto->lastTopicId=0; sto->lastValueId=0; } } -void _readRoomsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nRooms; - - nRooms=GWEN_XMLNode_FindFirstTag(rootNode, AQH_STORAGE_XML_ELEMENTNAME_ROOMS, NULL, NULL); - if (nRooms) { - GWEN_XMLNODE *nRoom; - - nRoom=GWEN_XMLNode_FindFirstTag(nRooms, AQH_STORAGE_XML_ELEMENTNAME_ROOM, NULL, NULL); - while(nRoom) { - AQH_ROOM *r; - - r=AQH_Room_fromXml(nRoom); - if (r) { - AQH_Room_List_Add(r, sto->roomList); - } - nRoom=GWEN_XMLNode_FindNextTag(nRoom, AQH_STORAGE_XML_ELEMENTNAME_ROOM, NULL, NULL); - } - } -} - - - -void _readDevicesFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nDevices; - - nDevices=GWEN_XMLNode_FindFirstTag(rootNode, AQH_STORAGE_XML_ELEMENTNAME_DEVICES, NULL, NULL); - if (nDevices) { - GWEN_XMLNODE *nDevice; - - nDevice=GWEN_XMLNode_FindFirstTag(nDevices, AQH_STORAGE_XML_ELEMENTNAME_DEVICE, NULL, NULL); - while(nDevice) { - AQH_DEVICE *device; - - device=AQH_Device_fromXml(nDevice); - if (device) { - AQH_Device_List_Add(device, sto->deviceList); - } - nDevice=GWEN_XMLNode_FindNextTag(nDevice, AQH_STORAGE_XML_ELEMENTNAME_DEVICE, NULL, NULL); - } - } -} - - - -void _readTopicsFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nTopics; - - nTopics=GWEN_XMLNode_FindFirstTag(rootNode, AQH_STORAGE_XML_ELEMENTNAME_TOPICS, NULL, NULL); - if (nTopics) { - GWEN_XMLNODE *nTopic; - - nTopic=GWEN_XMLNode_FindFirstTag(nTopics, AQH_STORAGE_XML_ELEMENTNAME_TOPIC, NULL, NULL); - while(nTopic) { - AQH_MQTT_TOPIC *topic; - - topic=AQH_MqttTopic_fromXml(nTopic); - if (topic) { - AQH_MqttTopic_List_Add(topic, sto->mqttTopicList); - } - nTopic=GWEN_XMLNode_FindNextTag(nTopic, AQH_STORAGE_XML_ELEMENTNAME_TOPIC, NULL, NULL); - } - } -} - - - void _readValuesFromXml(AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) { GWEN_XMLNODE *nValues; diff --git a/aqhome/data/storage_writexml.c b/aqhome/data/storage_writexml.c index af7528c..e434e99 100644 --- a/aqhome/data/storage_writexml.c +++ b/aqhome/data/storage_writexml.c @@ -31,9 +31,6 @@ static void _writeLastIdsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _writeRoomsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _writeDevicesToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); -static void _writeTopicsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); static void _writeValuesToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode); @@ -51,9 +48,6 @@ int AQH_Storage_WriteStateFile(const AQH_STORAGE *sto, const char *sFilename) rootNode=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, "root"); _writeLastIdsToXml(sto, rootNode); - _writeRoomsToXml(sto, rootNode); - _writeDevicesToXml(sto, rootNode); - _writeTopicsToXml(sto, rootNode); _writeValuesToXml(sto, rootNode); nbuf=GWEN_Buffer_new(0, 256, 0, 1); @@ -88,9 +82,6 @@ void _writeLastIdsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) GWEN_XMLNODE *nLastIds; nLastIds=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_LASTIDS); - GWEN_XMLNode_SetIntValue(nLastIds, "lastRoomId", sto->lastRoomId); - GWEN_XMLNode_SetIntValue(nLastIds, "lastDeviceId", sto->lastDeviceId); - GWEN_XMLNode_SetIntValue(nLastIds, "lastTopicId", sto->lastTopicId); GWEN_XMLNode_SetIntValue(nLastIds, "lastValueId", sto->lastValueId); GWEN_XMLNode_AddChild(rootNode, nLastIds); @@ -98,69 +89,6 @@ void _writeLastIdsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -void _writeRoomsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nElems; - AQH_ROOM *elem; - - nElems=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_ROOMS); - - elem=AQH_Room_List_First(sto->roomList); - while(elem) { - GWEN_XMLNODE *nElem; - - nElem=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_ROOM); - AQH_Room_toXml(elem, nElem); - GWEN_XMLNode_AddChild(nElems, nElem); - elem=AQH_Room_List_Next(elem); - } - GWEN_XMLNode_AddChild(rootNode, nElems); -} - - - -void _writeDevicesToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nElems; - AQH_DEVICE *elem; - - nElems=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_DEVICES); - - elem=AQH_Device_List_First(sto->deviceList); - while(elem) { - GWEN_XMLNODE *nElem; - - nElem=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_DEVICE); - AQH_Device_toXml(elem, nElem); - GWEN_XMLNode_AddChild(nElems, nElem); - elem=AQH_Device_List_Next(elem); - } - GWEN_XMLNode_AddChild(rootNode, nElems); -} - - - -void _writeTopicsToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) -{ - GWEN_XMLNODE *nElems; - AQH_MQTT_TOPIC *elem; - - nElems=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_TOPICS); - - elem=AQH_MqttTopic_List_First(sto->mqttTopicList); - while(elem) { - GWEN_XMLNODE *nElem; - - nElem=GWEN_XMLNode_new(GWEN_XMLNodeTypeTag, AQH_STORAGE_XML_ELEMENTNAME_TOPIC); - AQH_MqttTopic_toXml(elem, nElem); - GWEN_XMLNode_AddChild(nElems, nElem); - elem=AQH_MqttTopic_List_Next(elem); - } - GWEN_XMLNode_AddChild(rootNode, nElems); -} - - - void _writeValuesToXml(const AQH_STORAGE *sto, GWEN_XMLNODE *rootNode) { GWEN_XMLNODE *nElems; diff --git a/aqhome/data/value.t2d b/aqhome/data/value.t2d index 77b233e..d804333 100644 --- a/aqhome/data/value.t2d +++ b/aqhome/data/value.t2d @@ -73,13 +73,6 @@ own with_getbymember - - 0 - 0 - public - - - 0 0 @@ -94,6 +87,14 @@ own + + + 0 + 0 + public + + + 0 0 @@ -102,6 +103,13 @@ + + public + none + 0 + 0 + + diff --git a/aqhome/libtest.c b/aqhome/libtest.c index 2a15307..fc74c69 100644 --- a/aqhome/libtest.c +++ b/aqhome/libtest.c @@ -247,6 +247,7 @@ GWEN_MSG *_awaitPacket2(GWEN_MSG_ENDPOINT *epClient, uint8_t expectedPacketType) +#if 0 GWEN_MSG_ENDPOINT *_acceptHttpConnection(GWEN_UNUSED GWEN_MSG_ENDPOINT *ep, GWEN_SOCKET *sk, GWEN_UNUSED const GWEN_INETADDRESS *addr, @@ -311,7 +312,7 @@ int testHttpDaemon() } return 0; } - +#endif int testHexfile(int argc, char **argv) @@ -421,7 +422,8 @@ int main(int argc, char **argv) //return testFlashRecords(argc, argv); //return testMqttConnection2(); //return testMqttSubscribe2(argc, argv); - return testHttpDaemon(); + //return testHttpDaemon(); + return 0; }