diff --git a/debian/control b/debian/control index 138b8ba4..0c024b86 100644 --- a/debian/control +++ b/debian/control @@ -359,35 +359,6 @@ Description: nymea.io plugin for Garadget This package will install the nymea.io plugin for Garadget Garage Door Opener -Package: nymea-plugin-genericelements -Architecture: any -Depends: ${shlibs:Depends}, - ${misc:Depends}, - nymea-plugins-translations, -Description: nymea.io plugin for genericelements - The nymea daemon is a plugin based IoT (Internet of Things) server. The - server works like a translator for devices, things and services and - allows them to interact. - With the powerful rule engine you are able to connect any device available - in the system and create individual scenes and behaviors for your environment. - . - This package will install the nymea.io plugin for genericelements - - -Package: nymea-plugin-genericthings -Architecture: any -Depends: ${shlibs:Depends}, - ${misc:Depends}, - nymea-plugins-translations, -Replaces: nymea-plugin-genericinterfaces -Conflicts: nymea-plugin-genericinterfaces -Description: nymea.io plugin for generic things - Use the generic things plugin to create visually appealing thing setups - containing lights, shutter, sensors etc which are connected to GPIOs. - . - This package will install the nymea.io plugin for genericthings - - Package: nymea-plugin-gpio Architecture: any Depends: ${shlibs:Depends}, @@ -1213,7 +1184,6 @@ Depends: nymea-plugin-anel, nymea-plugin-eq-3, nymea-plugin-flowercare, nymea-plugin-fronius, - nymea-plugin-genericthings, nymea-plugin-homeconnect, nymea-plugin-kodi, nymea-plugin-lgsmarttv, diff --git a/debian/nymea-plugin-genericelements.install.in b/debian/nymea-plugin-genericelements.install.in deleted file mode 100644 index df09f77a..00000000 --- a/debian/nymea-plugin-genericelements.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/@DEB_HOST_MULTIARCH@/nymea/plugins/libnymea_integrationplugingenericelements.so \ No newline at end of file diff --git a/debian/nymea-plugin-genericthings.install.in b/debian/nymea-plugin-genericthings.install.in deleted file mode 100644 index 055ac7d3..00000000 --- a/debian/nymea-plugin-genericthings.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/@DEB_HOST_MULTIARCH@/nymea/plugins/libnymea_integrationplugingenericthings.so diff --git a/genericelements/README.md b/genericelements/README.md deleted file mode 100644 index 5bd15ed6..00000000 --- a/genericelements/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# Generic elements - -The generic elements plugin allows you create virtual buttons, which can be connected with a rule. This gives you -the possibility to execute multiple actions with one signal. Without a rule this generic elements are -useless. - -## Toggle Button -With the "Toggle Button" you can create a button with one action toggle. In the `state` you can find out, -what happens if the button will be pressed. The states can be true or false. - -## Button -With the "Button" you can create a button with one action `press`. This button just creates one event. - -## ON/OFF Button -With the "ON/OFF Button" you create a button pair with the actions `ON` and `OFF`. diff --git a/genericelements/genericelements.pro b/genericelements/genericelements.pro deleted file mode 100644 index 660914e1..00000000 --- a/genericelements/genericelements.pro +++ /dev/null @@ -1,11 +0,0 @@ -include(../plugins.pri) - -TARGET = $$qtLibraryTarget(nymea_integrationplugingenericelements) - -SOURCES += \ - integrationplugingenericelements.cpp - -HEADERS += \ - integrationplugingenericelements.h - - diff --git a/genericelements/genericelements.svg b/genericelements/genericelements.svg deleted file mode 100644 index 3e1a4cf9..00000000 --- a/genericelements/genericelements.svg +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/genericelements/integrationplugingenericelements.cpp b/genericelements/integrationplugingenericelements.cpp deleted file mode 100644 index 6b60b9db..00000000 --- a/genericelements/integrationplugingenericelements.cpp +++ /dev/null @@ -1,81 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -* -* Copyright 2013 - 2020, nymea GmbH -* Contact: contact@nymea.io -* -* This file is part of nymea. -* This project including source code and documentation is protected by -* copyright law, and remains the property of nymea GmbH. All rights, including -* reproduction, publication, editing and translation, are reserved. The use of -* this project is subject to the terms of a license agreement to be concluded -* with nymea GmbH in accordance with the terms of use of nymea GmbH, available -* under https://nymea.io/license -* -* GNU Lesser General Public License Usage -* Alternatively, this project may be redistributed and/or modified under the -* terms of the GNU Lesser General Public License as published by the Free -* Software Foundation; version 3. This project is distributed in the hope that -* it will be useful, but WITHOUT ANY WARRANTY; without even the implied -* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public License -* along with this project. If not, see . -* -* For any further details and any questions please contact us under -* contact@nymea.io or see our FAQ/Licensing Information on -* https://nymea.io/license/faq -* -* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -#include "integrationplugingenericelements.h" -#include "plugininfo.h" - -#include - -IntegrationPluginGenericElements::IntegrationPluginGenericElements() -{ -} - -void IntegrationPluginGenericElements::setupThing(ThingSetupInfo *info) -{ - info->finish(Thing::ThingErrorNoError); -} - -void IntegrationPluginGenericElements::executeAction(ThingActionInfo *info) -{ - Thing *thing = info->thing(); - Action action = info->action(); - - // Power Button - if (thing->thingClassId() == powerButtonThingClassId) { - if (action.actionTypeId() == powerButtonPowerActionTypeId) { - thing->setStateValue(powerButtonPowerStateTypeId, action.params().paramValue(powerButtonPowerActionPowerParamTypeId).toBool()); - } - } - - // Button - if (thing->thingClassId() == buttonThingClassId) { - if (action.actionTypeId() == buttonPressActionTypeId) { - emit emitEvent(Event(buttonPressedEventTypeId, thing->id())); - } - } - - // Trigger button - if (thing->thingClassId() == triggerButtonThingClassId) { - if (action.actionTypeId() == triggerButtonTriggerActionTypeId) { - emit emitEvent(Event(triggerButtonPressedEventTypeId, thing->id())); - } - } - - // ON/OFF Button - if (thing->thingClassId() == onOffButtonThingClassId) { - if (action.actionTypeId() == onOffButtonOnActionTypeId) { - emit emitEvent(Event(onOffButtonPressedEventTypeId, thing->id(), ParamList() << Param(onOffButtonPressedEventButtonNameParamTypeId, "On"))); - } else if (action.actionTypeId() == onOffButtonOffActionTypeId) { - emit emitEvent(Event(onOffButtonPressedEventTypeId, thing->id(), ParamList() << Param(onOffButtonPressedEventButtonNameParamTypeId, "Off"))); - } - } - - info->finish(Thing::ThingErrorNoError); -} diff --git a/genericelements/integrationplugingenericelements.h b/genericelements/integrationplugingenericelements.h deleted file mode 100644 index be25eb4b..00000000 --- a/genericelements/integrationplugingenericelements.h +++ /dev/null @@ -1,52 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -* -* Copyright 2013 - 2020, nymea GmbH -* Contact: contact@nymea.io -* -* This file is part of nymea. -* This project including source code and documentation is protected by -* copyright law, and remains the property of nymea GmbH. All rights, including -* reproduction, publication, editing and translation, are reserved. The use of -* this project is subject to the terms of a license agreement to be concluded -* with nymea GmbH in accordance with the terms of use of nymea GmbH, available -* under https://nymea.io/license -* -* GNU Lesser General Public License Usage -* Alternatively, this project may be redistributed and/or modified under the -* terms of the GNU Lesser General Public License as published by the Free -* Software Foundation; version 3. This project is distributed in the hope that -* it will be useful, but WITHOUT ANY WARRANTY; without even the implied -* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public License -* along with this project. If not, see . -* -* For any further details and any questions please contact us under -* contact@nymea.io or see our FAQ/Licensing Information on -* https://nymea.io/license/faq -* -* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -#ifndef INTEGRATIONPLUGINGENERICELEMENTS_H -#define INTEGRATIONPLUGINGENERICELEMENTS_H - -#include "integrations/integrationplugin.h" - -class IntegrationPluginGenericElements : public IntegrationPlugin -{ - Q_OBJECT - - Q_PLUGIN_METADATA(IID "io.nymea.IntegrationPlugin" FILE "integrationplugingenericelements.json") - Q_INTERFACES(IntegrationPlugin) - -public: - explicit IntegrationPluginGenericElements(); - void setupThing(ThingSetupInfo *info) override; - -public slots: - void executeAction(ThingActionInfo *info) override; - -}; - -#endif // INTEGRATIONPLUGINGENERICELEMENTS_H diff --git a/genericelements/integrationplugingenericelements.json b/genericelements/integrationplugingenericelements.json deleted file mode 100644 index b5051b49..00000000 --- a/genericelements/integrationplugingenericelements.json +++ /dev/null @@ -1,115 +0,0 @@ - { - "name": "GenericElements", - "displayName": "Generic Elements", - "id": "6e22161e-39b7-4416-8623-39e730721efb", - "vendors": [ - { - "name": "nymea", - "displayName": "nymea", - "id": "2062d64d-3232-433c-88bc-0d33c0ba2ba6", - "thingClasses": [ - { - "id": "c0f511f9-70f5-499b-bd70-2c0e9ddd68c4", - "name": "powerButton", - "displayName": "Power Button", - "createMethods": [ "user" ], - "interfaces": [ "power" ], - "paramTypes": [ ], - "stateTypes": [ - { - "id": "b5e90567-54aa-49bd-a78a-3c19fb38aaf5", - "name": "power", - "displayName": "state", - "displayNameEvent": "power changed", - "displayNameAction": "set power", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - } - ] - }, - { - "id": "820b2f2d-0d92-48c8-8fd4-f94ce8fc4103", - "name": "button", - "displayName": "Button", - "createMethods": [ "user" ], - "interfaces": [ "button" ], - "paramTypes": [ ], - "actionTypes": [ - { - "id": "01f38af1-b2ab-4ec3-844e-ef52f0f229a9", - "name": "press", - "displayName": "press" - } - ], - "eventTypes": [ - { - "id": "effdbc2d-e467-4b0b-80a9-9dda251bfa5c", - "name": "pressed", - "displayName": "button pressed" - } - ] - }, - { - "id": "5f91923e-fc8e-48db-9de7-9a2fc36798dd", - "name": "triggerButton", - "displayName": "Trigger button", - "createMethods": [ "user" ], - "interfaces": [ "outputtrigger", "button" ], - "paramTypes": [ ], - "actionTypes": [ - { - "id": "da322b8e-2116-4565-805a-03f7726373c8", - "name": "trigger", - "displayName": "trigger" - } - ], - "eventTypes": [ - { - "id": "51197853-0559-42a0-a97b-6ead56ae22f6", - "name": "pressed", - "displayName": "triggered" - } - ] - }, - { - "id": "430d188c-476d-4825-a9bd-86dfa3094b56", - "name": "onOffButton", - "displayName": "ON/OFF Button", - "createMethods": ["user"], - "interfaces": [ "multibutton" ], - "paramTypes": [ ], - "actionTypes": [ - { - "id": "892596d2-0863-4807-97da-469b9f7003f2", - "name": "on", - "displayName": "on" - }, - { - "id": "a8d64050-0b58-4ccf-b052-77ce2b7368ad", - "name": "off", - "displayName": "off" - } - ], - "eventTypes": [ - { - "id": "4eeba6a2-e4c7-4a2e-8360-2797d98114e6", - "name": "pressed", - "displayName": "Button pressed", - "paramTypes": [ - { - "id": "2e6bc343-41a3-4634-b514-4512ae54afbc", - "name": "buttonName", - "displayName": "Button name", - "type": "QString", - "allowedValues": ["Off", "On"] - } - ] - } - ] - } - ] - } - ] -} diff --git a/genericelements/meta.json b/genericelements/meta.json deleted file mode 100644 index 5b9fd6b7..00000000 --- a/genericelements/meta.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Generic Elements", - "tagline": "Add basic buttons.", - "icon": "genericelements.svg", - "stability": "community", - "offline": true, - "technologies": [ - ], - "categories": [ - "tool" - ] -} diff --git a/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-de.ts b/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-de.ts deleted file mode 100644 index 0f73f20f..00000000 --- a/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-de.ts +++ /dev/null @@ -1,115 +0,0 @@ - - - - - GenericElements - - - Generic Elements - The name of the plugin GenericElements ({6e22161e-39b7-4416-8623-39e730721efb}) - - - - - nymea - The name of the vendor ({2062d64d-3232-433c-88bc-0d33c0ba2ba6}) - - - - - - - state - The name of the ParamType (ThingClass: powerButton, ActionType: power, ID: {b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) ----------- -The name of the ParamType (ThingClass: powerButton, EventType: power, ID: {b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) ----------- -The name of the StateType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - Button - The name of the ThingClass ({820b2f2d-0d92-48c8-8fd4-f94ce8fc4103}) - Taster - - - - Button name - The name of the ParamType (ThingClass: onOffButton, EventType: pressed, ID: {2e6bc343-41a3-4634-b514-4512ae54afbc}) - - - - - Button pressed - The name of the EventType ({4eeba6a2-e4c7-4a2e-8360-2797d98114e6}) of ThingClass onOffButton - - - - - Power Button - The name of the ThingClass ({c0f511f9-70f5-499b-bd70-2c0e9ddd68c4}) - - - - - Trigger button - The name of the ThingClass ({5f91923e-fc8e-48db-9de7-9a2fc36798dd}) - - - - - off - The name of the ActionType ({a8d64050-0b58-4ccf-b052-77ce2b7368ad}) of ThingClass onOffButton - - - - - on - The name of the ActionType ({892596d2-0863-4807-97da-469b9f7003f2}) of ThingClass onOffButton - - - - - power changed - The name of the EventType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - press - The name of the ActionType ({01f38af1-b2ab-4ec3-844e-ef52f0f229a9}) of ThingClass button - - - - - set power - The name of the ActionType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - trigger - The name of the ActionType ({da322b8e-2116-4565-805a-03f7726373c8}) of ThingClass triggerButton - - - - - triggered - The name of the EventType ({51197853-0559-42a0-a97b-6ead56ae22f6}) of ThingClass triggerButton - - - - - button pressed - The name of the EventType ({effdbc2d-e467-4b0b-80a9-9dda251bfa5c}) of ThingClass button - - - - - ON/OFF Button - The name of the ThingClass ({430d188c-476d-4825-a9bd-86dfa3094b56}) - An/Aus Taster - - - diff --git a/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-en_US.ts b/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-en_US.ts deleted file mode 100644 index d76697ca..00000000 --- a/genericelements/translations/6e22161e-39b7-4416-8623-39e730721efb-en_US.ts +++ /dev/null @@ -1,115 +0,0 @@ - - - - - GenericElements - - - Generic Elements - The name of the plugin GenericElements ({6e22161e-39b7-4416-8623-39e730721efb}) - - - - - nymea - The name of the vendor ({2062d64d-3232-433c-88bc-0d33c0ba2ba6}) - - - - - - - state - The name of the ParamType (ThingClass: powerButton, ActionType: power, ID: {b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) ----------- -The name of the ParamType (ThingClass: powerButton, EventType: power, ID: {b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) ----------- -The name of the StateType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - Button - The name of the ThingClass ({820b2f2d-0d92-48c8-8fd4-f94ce8fc4103}) - - - - - Button name - The name of the ParamType (ThingClass: onOffButton, EventType: pressed, ID: {2e6bc343-41a3-4634-b514-4512ae54afbc}) - - - - - Button pressed - The name of the EventType ({4eeba6a2-e4c7-4a2e-8360-2797d98114e6}) of ThingClass onOffButton - - - - - Power Button - The name of the ThingClass ({c0f511f9-70f5-499b-bd70-2c0e9ddd68c4}) - - - - - Trigger button - The name of the ThingClass ({5f91923e-fc8e-48db-9de7-9a2fc36798dd}) - - - - - off - The name of the ActionType ({a8d64050-0b58-4ccf-b052-77ce2b7368ad}) of ThingClass onOffButton - - - - - on - The name of the ActionType ({892596d2-0863-4807-97da-469b9f7003f2}) of ThingClass onOffButton - - - - - power changed - The name of the EventType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - press - The name of the ActionType ({01f38af1-b2ab-4ec3-844e-ef52f0f229a9}) of ThingClass button - - - - - set power - The name of the ActionType ({b5e90567-54aa-49bd-a78a-3c19fb38aaf5}) of ThingClass powerButton - - - - - trigger - The name of the ActionType ({da322b8e-2116-4565-805a-03f7726373c8}) of ThingClass triggerButton - - - - - triggered - The name of the EventType ({51197853-0559-42a0-a97b-6ead56ae22f6}) of ThingClass triggerButton - - - - - button pressed - The name of the EventType ({effdbc2d-e467-4b0b-80a9-9dda251bfa5c}) of ThingClass button - - - - - ON/OFF Button - The name of the ThingClass ({430d188c-476d-4825-a9bd-86dfa3094b56}) - - - - diff --git a/genericinterfaces/genericinterfaces.svg b/genericinterfaces/genericinterfaces.svg deleted file mode 100644 index 6fb8fe80..00000000 --- a/genericinterfaces/genericinterfaces.svg +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - diff --git a/genericinterfaces/meta.json b/genericinterfaces/meta.json deleted file mode 100644 index f0b5bac0..00000000 --- a/genericinterfaces/meta.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": "Generic Interfaces", - "tagline": "Add generic device types.", - "icon": "genericinterfaces.svg", - "stability": "community", - "offline": true, - "technologies": [ - ], - "categories": [ - "tool" - ] -} diff --git a/genericthings/README.md b/genericthings/README.md deleted file mode 100644 index 94afb739..00000000 --- a/genericthings/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Generic things - -This plugin allows to create virtual generic things in nymea. Such things don't have any -functionality on their own, but allow to create a visually appealing experience when -using general purpose input and outputs, such as GPIOs. - -## Set-up - -First, set up a thing with generic inputs or outputs. For instance from the GPIO plugin. -When done, set up the desired generic thing and use the things settings to connect -the inputs and/or outputs accordingly. - -### Example: A light switch on a digital output GPIO - -First, set up the GPIO to control the light. Please refer to the documentation of the -according plugin for this. Once the lights can be controlled by nymea using the raw -GPIO toggle, set up a generic light from this plugin and go to the settings of the -newly added generic light. In there, you'll find a section for Input/Output connections -which can be used to connect the power state of this generic light to the GPIO that -actually controls the light. The light can now be used like any other ready-made light -device in nymea. - -### Example: A soil moisture sensor on an analog input GPIO - -First, set up the GPIO to receive the analog GPIO values from the sensor. Normally -such an analog input GPIO will dispatch values from 0V to e.g. 3.3V, depending on the -hardware. An input value of 0V normally refers to a soil moisture value of 0%, while -an input value of 3.3V would refer to the maximum, that is 100% soil moisture. Once -those input values are received in nymea, set up a generic soil moisture thing and -go to its settings. In there you'll find the Input/Output connections section which -allows to map this generic soil moisture sensure to the according GPIO input. Once -this connection has been made, the generic soil moisture thing will represent the -input from the GPIO in a nice sensor view. -Some sensors might not support the full range from 0% to 100% and might output -a value of 0V on a minimum soil moisture of e.g. 10% or might only be able to -measure the soil moisture up to, say, 90%. Normally the sensor hardware would give -that information in the data sheet or user guide. If this is the case, the appropriate -input range can also be defined in the generic moisture sensor page. - diff --git a/genericthings/genericthings.pro b/genericthings/genericthings.pro deleted file mode 100644 index 91b2c276..00000000 --- a/genericthings/genericthings.pro +++ /dev/null @@ -1,10 +0,0 @@ -include(../plugins.pri) - -SOURCES += \ - integrationplugingenericthings.cpp - -HEADERS += \ - integrationplugingenericthings.h - - - diff --git a/genericthings/integrationplugingenericthings.cpp b/genericthings/integrationplugingenericthings.cpp deleted file mode 100644 index 67429a0a..00000000 --- a/genericthings/integrationplugingenericthings.cpp +++ /dev/null @@ -1,1169 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -* -* -* Copyright 2013 - 2020, nymea GmbH -* Contact: contact@nymea.io - -* This file is part of nymea. -* This project including source code and documentation is protected by -* copyright law, and remains the property of nymea GmbH. All rights, including -* reproduction, publication, editing and translation, are reserved. The use of -* this project is subject to the terms of a license agreement to be concluded -* with nymea GmbH in accordance with the terms of use of nymea GmbH, available -* under https://nymea.io/license -* -* GNU Lesser General Public License Usage -* Alternatively, this project may be redistributed and/or modified under the -* terms of the GNU Lesser General Public License as published by the Free -* Software Foundation; version 3. This project is distributed in the hope that -* it will be useful, but WITHOUT ANY WARRANTY; without even the implied -* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public License -* along with this project. If not, see . -* -* For any further details and any questions please contact us under -* contact@nymea.io or see our FAQ/Licensing Information on -* https://nymea.io/license/faq -* -* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -#include "integrationplugingenericthings.h" -#include "plugininfo.h" - -#include -#include - -IntegrationPluginGenericThings::IntegrationPluginGenericThings() -{ - -} - -void IntegrationPluginGenericThings::setupThing(ThingSetupInfo *info) -{ - Thing *thing = info->thing(); - - if (thing->thingClassId() == extendedBlindThingClassId) { - uint closingDuration = thing->setting(extendedBlindSettingsClosingDurationParamTypeId).toUInt(); - QTimer* timer = new QTimer(this); - timer->setInterval(closingDuration/100.00); // closing timer / 100 to update on every percent - m_extendedBlindPercentageTimer.insert(thing, timer); - connect(thing, &Thing::settingChanged, thing, [timer] (const ParamTypeId ¶mTypeId, const QVariant &value) { - if (paramTypeId == extendedBlindSettingsClosingDurationParamTypeId) { - timer->setInterval(value.toUInt()/100.00); - } - }); - connect(timer, &QTimer::timeout, this, [thing, this] { - uint currentPercentage = thing->stateValue(extendedBlindPercentageStateTypeId).toUInt(); - - if (thing->stateValue(extendedBlindStatusStateTypeId).toString() == "Closing") { - - if (currentPercentage == 100) { - setBlindState(BlindStateStopped, thing); - qCDebug(dcGenericThings()) << "Extended blind is closed, stopping timer"; - } else { - currentPercentage++; - thing->setStateValue(extendedBlindPercentageStateTypeId, currentPercentage); - } - } else if (thing->stateValue(extendedBlindStatusStateTypeId).toString() == "Opening") { - - if (currentPercentage == 0) { - setBlindState(BlindStateStopped, thing); - qCDebug(dcGenericThings()) << "Extended blind is opened, stopping timer"; - } else { - currentPercentage--; - thing->setStateValue(extendedBlindPercentageStateTypeId, currentPercentage); - } - } else { - setBlindState(BlindStateStopped, thing); - } - - if (m_extendedBlindPercentageTimer.contains(thing)) { - uint targetPercentage = m_extendedBlindTargetPercentage.value(thing); - if (targetPercentage == currentPercentage) { - qCDebug(dcGenericThings()) << "Extended blind has reached target percentage, stopping timer"; - setBlindState(BlindStateStopped, thing); - } - } - }); - } else if (info->thing()->thingClassId() == venetianBlindThingClassId) { - uint closingTime = thing->setting(venetianBlindSettingsClosingDurationParamTypeId).toUInt(); - uint angleTime = thing->setting(venetianBlindSettingsAngleTimeParamTypeId).toUInt(); - if (closingTime < angleTime) { - return info->finish(Thing::ThingErrorSetupFailed, tr("Invalid closing or angle time")); - } - QTimer* closingTimer = new QTimer(this); - closingTimer->setInterval(closingTime/100.00); // closing timer / 100 to update on every percent - m_extendedBlindPercentageTimer.insert(thing, closingTimer); - - connect(closingTimer, &QTimer::timeout, thing, [thing, this] { - uint currentPercentage = thing->stateValue(venetianBlindPercentageStateTypeId).toUInt(); - - if (thing->stateValue(venetianBlindStatusStateTypeId).toString() == "Closing") { - - if (currentPercentage == 100) { - setBlindState(BlindStateStopped, thing); - qCDebug(dcGenericThings()) << "Venetian blind is closed, stopping timer"; - } else if (currentPercentage > 100) { - currentPercentage = 100; - setBlindState(BlindStateStopped, thing); - qCWarning(dcGenericThings()) << "Venetian blind overshoot 100 percent"; - } else { - currentPercentage++; - thing->setStateValue(venetianBlindPercentageStateTypeId, currentPercentage); - } - } else if (thing->stateValue(venetianBlindStatusStateTypeId).toString() == "Opening") { - - if (currentPercentage == 0) { - setBlindState(BlindStateStopped, thing); - qCDebug(dcGenericThings()) << "Venetian blind is opened, stopping timer"; - } else { - currentPercentage--; - thing->setStateValue(venetianBlindPercentageStateTypeId, currentPercentage); - } - } else { - setBlindState(BlindStateStopped, thing); - } - - if (m_extendedBlindPercentageTimer.contains(thing)) { - uint targetPercentage = m_extendedBlindTargetPercentage.value(thing); - if (targetPercentage == currentPercentage) { - qCDebug(dcGenericThings()) << "Venetian blind has reached target percentage, stopping timer"; - setBlindState(BlindStateStopped, thing); - } - } - }); - - QTimer* angleTimer = new QTimer(this); - angleTimer->setInterval(angleTime/180.00); // -90 to 90 degree -> 180 degree total - m_venetianBlindAngleTimer.insert(thing, angleTimer); - connect(thing, &Thing::settingChanged, thing, [closingTimer, angleTimer] (const ParamTypeId ¶mTypeId, const QVariant &value) { - if (paramTypeId == venetianBlindSettingsClosingDurationParamTypeId) { - closingTimer->setInterval(value.toUInt()/100.00); - } else if (paramTypeId == venetianBlindSettingsAngleTimeParamTypeId) { - angleTimer->setInterval(value.toUInt()/180.00); - } - }); - connect(angleTimer, &QTimer::timeout, thing, [thing, this] { - int currentAngle = thing->stateValue(venetianBlindAngleStateTypeId).toInt(); - if (thing->stateValue(venetianBlindStatusStateTypeId).toString() == "Closing") { - - if (currentAngle < 90) { - currentAngle++; - } else if (currentAngle == 90) { - m_venetianBlindAngleTimer.value(thing)->stop(); - } else if (currentAngle > 90) { - currentAngle = 90; - m_venetianBlindAngleTimer.value(thing)->stop(); - qCWarning(dcGenericThings()) << "Venetian blind overshoot angle boundaries"; - } - thing->setStateValue(venetianBlindAngleStateTypeId, currentAngle); - } else if (thing->stateValue(venetianBlindStatusStateTypeId).toString() == "Opening") { - - if (currentAngle > -90) { - currentAngle--; - } else if (currentAngle == -90) { - m_venetianBlindAngleTimer.value(thing)->stop(); - } else if (currentAngle < -90) { - currentAngle = -90; - m_venetianBlindAngleTimer.value(thing)->stop(); - qCWarning(dcGenericThings()) << "Venetian blind overshoot angle boundaries"; - } - thing->setStateValue(venetianBlindAngleStateTypeId, currentAngle); - } - - if (m_venetianBlindTargetAngle.contains(thing)) { - int targetAngle = m_venetianBlindTargetAngle.value(thing); - if (targetAngle == currentAngle) { - qCDebug(dcGenericThings()) << "Venetian blind has reached target angle, stopping timer"; - setBlindState(BlindStateStopped, thing); - } - } - }); - } else if (thing->thingClassId() == smartMeterThingClassId) { - - QTimer* smartMeterTimer = new QTimer(this); - int timeframe = thing->setting(smartMeterSettingsImpulseTimeframeParamTypeId).toInt(); - smartMeterTimer->setInterval(timeframe * 1000); - m_smartMeterTimer.insert(thing, smartMeterTimer); - smartMeterTimer->start(); - connect(thing, &Thing::settingChanged, smartMeterTimer, [smartMeterTimer] (const ParamTypeId ¶mTypeId, const QVariant &value) { - if (paramTypeId == smartMeterSettingsImpulseTimeframeParamTypeId) { - smartMeterTimer->setInterval(value.toInt() * 1000); - } - }); - - connect(smartMeterTimer, &QTimer::timeout, thing, [this, smartMeterTimer, thing] { - double impulsePerKwh = thing->setting(smartMeterSettingsImpulsePerKwhParamTypeId).toDouble(); - int interval = smartMeterTimer->interval()/1000; - double power = (m_pulsesPerTimeframe.value(thing)/impulsePerKwh)/(interval/3600.00); // Power = Energy/Time; Energy = Impulses/ImpPerkWh - thing->setStateValue(smartMeterCurrentPowerStateTypeId, power*1000); - m_pulsesPerTimeframe.insert(thing, 0); - }); - } else if (thing->thingClassId() == extendedStatefulGaragedoorThingClassId) { - uint openingDuration = thing->setting(extendedStatefulGaragedoorSettingsOpeningDurationParamTypeId).toUInt(); - QTimer* timer = new QTimer(this); - timer->setInterval(openingDuration/100.00); // closing timer / 100 to update on every percent - m_statefulGaragePercentageTimer.insert(thing, timer); - connect(thing, &Thing::settingChanged, thing, [timer] (const ParamTypeId ¶mTypeId, const QVariant &value) { - if (paramTypeId == extendedStatefulGaragedoorSettingsOpeningDurationParamTypeId) { - timer->setInterval(value.toUInt()/100.00); - } - }); - connect(timer, &QTimer::timeout, this, [thing, timer, this] { - uint currentPercentage = thing->stateValue(extendedStatefulGaragedoorPercentageStateTypeId).toUInt(); - uint targetPercentage = m_statefulGarageTargetPercentage.value(thing); - - if (currentPercentage < targetPercentage) { - currentPercentage++; - thing->setStateValue(extendedStatefulGaragedoorPercentageStateTypeId, currentPercentage); - thing->setStateValue(extendedStatefulGaragedoorStateStateTypeId, "closing"); - thing->setStateValue(extendedStatefulGaragedoorMovingStateTypeId, true); - thing->setStateValue(extendedStatefulGaragedoorOpeningOutputStateTypeId, false); - thing->setStateValue(extendedStatefulGaragedoorClosingOutputStateTypeId, true); - - } else if (currentPercentage > targetPercentage) { - currentPercentage--; - thing->setStateValue(extendedStatefulGaragedoorPercentageStateTypeId, currentPercentage); - thing->setStateValue(extendedStatefulGaragedoorStateStateTypeId, "opening"); - thing->setStateValue(extendedStatefulGaragedoorMovingStateTypeId, true); - thing->setStateValue(extendedStatefulGaragedoorOpeningOutputStateTypeId, true); - thing->setStateValue(extendedStatefulGaragedoorClosingOutputStateTypeId, false); - - } - - if (currentPercentage == targetPercentage){ - QString state = currentPercentage == 100 ? "open" : currentPercentage == 0 ? "closed" : "intermediate"; - thing->setStateValue(extendedStatefulGaragedoorStateStateTypeId, state); - thing->setStateValue(extendedStatefulGaragedoorMovingStateTypeId, false); - thing->setStateValue(extendedStatefulGaragedoorOpeningOutputStateTypeId, false); - thing->setStateValue(extendedStatefulGaragedoorClosingOutputStateTypeId, false); - qCDebug(dcGenericThings()) << "Stopping garage timer"; - timer->stop(); - } - }); - } else if (thing->thingClassId() == thermostatThingClassId) { - thermostatCheckPowerOutputState(thing); // check the initial values - connect(thing, &Thing::settingChanged, thing, [this, thing] (const ParamTypeId ¶mTypeId, const QVariant &value) { - Q_UNUSED(value) - if (paramTypeId == thermostatSettingsTemperatureDifferenceParamTypeId) { - thermostatCheckPowerOutputState(thing); - } - }); - } else if (thing->thingClassId() == waterLevelSensorThingClassId) { - connect(thing, &Thing::settingChanged, thing, [ thing](const ParamTypeId &settingTypeId, const QVariant &value){ - if (settingTypeId == waterLevelSensorSettingsCapacityParamTypeId) { - double capacity = value.toDouble(); - double input = thing->stateValue(waterLevelSensorInputStateTypeId).toDouble(); - double minInputValue = thing->setting(waterLevelSensorSettingsMinInputValueParamTypeId).toDouble(); - double maxInputValue = thing->setting(waterLevelSensorSettingsMaxInputValueParamTypeId).toDouble(); - double normalizedInput = (input - minInputValue) / (maxInputValue - minInputValue); - double waterLevel = normalizedInput * capacity; - thing->setStateMaxValue(waterLevelSensorWaterLevelStateTypeId, capacity); - thing->setStateValue(waterLevelSensorWaterLevelStateTypeId, waterLevel); - } - }); - } else if (thing->thingClassId() == sgReadyThingClassId) { - bool relay1 = thing->stateValue(sgReadyRelay1StateTypeId).toBool(); - bool relay2 = thing->stateValue(sgReadyRelay2StateTypeId).toBool(); - QString operatingModeString = sgReadyOperatingMode(relay1, relay2); - thing->setStateValue(sgReadySgReadyModeStateTypeId, operatingModeString); - thing->setStateValue(sgReadyOperatingModeDescriptionStateTypeId, sgReadyOperatingModeDescription(operatingModeString)); - } else if (thing->thingClassId() == batteryThingClassId) { - connect(thing, &Thing::settingChanged, [thing](const ParamTypeId &settingTypeId, const QVariant &value){ - if (settingTypeId == batterySettingsCriticalLevelParamTypeId) { - int currentBatteryLevel = thing->stateValue(batteryBatteryLevelStateTypeId).toInt(); - thing->setStateValue(batteryBatteryCriticalStateTypeId, currentBatteryLevel <= value.toInt()); - } - }); - } else if (thing->thingClassId() == carThingClassId) { - // Set the min charging current state if the settings value changed - connect(thing, &Thing::settingChanged, this, [thing](const ParamTypeId ¶mTypeId, const QVariant &value){ - if (paramTypeId == carSettingsMinChargingCurrentParamTypeId) { - qCDebug(dcGenericThings()) << "Car minimum charging current settings changed" << value.toUInt() << "A"; - thing->setStateValue(carMinChargingCurrentStateTypeId, value); - } - }); - - // Finish the setup - info->finish(Thing::ThingErrorNoError); - - // Set the inital state value - thing->setStateValue(carMinChargingCurrentStateTypeId, thing->setting(carSettingsMinChargingCurrentParamTypeId)); - return; - } - - // Fall trough, if not already finished and returned... - info->finish(Thing::ThingErrorNoError); -} - -void IntegrationPluginGenericThings::executeAction(ThingActionInfo *info) -{ - Thing *thing = info->thing(); - Action action = info->action(); - - if (thing->thingClassId() == genericThingClassId) { - if (action.actionTypeId() == genericAnalogInputActionTypeId) { - thing->setStateValue(genericAnalogInputStateTypeId, action.paramValue(genericAnalogInputActionAnalogInputParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == genericAnalogOutputActionTypeId) { - thing->setStateValue(genericAnalogOutputStateTypeId, action.paramValue(genericAnalogOutputActionAnalogOutputParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == genericDigitalInputActionTypeId) { - thing->setStateValue(genericDigitalInputStateTypeId, action.paramValue(genericDigitalInputActionDigitalInputParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == genericDigitalOutputActionTypeId) { - thing->setStateValue(genericDigitalOutputStateTypeId, action.paramValue(genericDigitalOutputActionDigitalOutputParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == genericStringStateActionTypeId) { - thing->setStateValue(genericStringStateStateTypeId, action.paramValue(genericStringStateActionStringStateParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - } - - if (thing->thingClassId() == awningThingClassId) { - if (action.actionTypeId() == awningOpenActionTypeId) { - thing->setStateValue(awningStatusStateTypeId, "Opening"); - thing->setStateValue(awningClosingOutputStateTypeId, false); - thing->setStateValue(awningOpeningOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == awningStopActionTypeId) { - thing->setStateValue(awningStatusStateTypeId, "Stopped"); - thing->setStateValue(awningOpeningOutputStateTypeId, false); - thing->setStateValue(awningClosingOutputStateTypeId, false); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == awningCloseActionTypeId) { - thing->setStateValue(awningStatusStateTypeId, "Closing"); - thing->setStateValue(awningOpeningOutputStateTypeId, false); - thing->setStateValue(awningClosingOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == awningOpeningOutputActionTypeId) { - bool on = action.param(awningOpeningOutputActionOpeningOutputParamTypeId).value().toBool(); - thing->setStateValue(awningOpeningOutputStateTypeId, on); - if (on) { - thing->setStateValue(awningStatusStateTypeId, "Opening"); - thing->setStateValue(awningClosingOutputStateTypeId, false); - } else { - thing->setStateValue(awningStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == awningClosingOutputActionTypeId) { - bool on = action.param(awningClosingOutputActionClosingOutputParamTypeId).value().toBool(); - thing->setStateValue(awningClosingOutputStateTypeId, on); - if (on) { - thing->setStateValue(awningStatusStateTypeId, "Closing"); - thing->setStateValue(awningOpeningOutputStateTypeId, false); - } else { - thing->setStateValue(awningStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == blindThingClassId ) { - if (action.actionTypeId() == blindOpenActionTypeId) { - thing->setStateValue(blindStatusStateTypeId, "Opening"); - thing->setStateValue(blindClosingOutputStateTypeId, false); - thing->setStateValue(blindOpeningOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == blindStopActionTypeId) { - thing->setStateValue(blindStatusStateTypeId, "Stopped"); - thing->setStateValue(blindOpeningOutputStateTypeId, false); - thing->setStateValue(blindClosingOutputStateTypeId, false); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == blindCloseActionTypeId) { - thing->setStateValue(blindStatusStateTypeId, "Closing"); - thing->setStateValue(blindOpeningOutputStateTypeId, false); - thing->setStateValue(blindClosingOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == blindOpeningOutputActionTypeId) { - bool on = action.param(blindOpeningOutputActionOpeningOutputParamTypeId).value().toBool(); - thing->setStateValue(blindOpeningOutputStateTypeId, on); - if (on) { - thing->setStateValue(blindStatusStateTypeId, "Opening"); - thing->setStateValue(blindClosingOutputStateTypeId, false); - } else { - thing->setStateValue(blindStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == blindClosingOutputActionTypeId) { - bool on = action.param(blindClosingOutputActionClosingOutputParamTypeId).value().toBool(); - thing->setStateValue(blindClosingOutputStateTypeId, on); - if (on) { - thing->setStateValue(blindStatusStateTypeId, "Closing"); - thing->setStateValue(blindOpeningOutputStateTypeId, false); - } else { - thing->setStateValue(blindStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == extendedBlindThingClassId) { - - if (action.actionTypeId() == extendedBlindOpenActionTypeId) { - setBlindState(BlindStateOpening, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == extendedBlindStopActionTypeId) { - setBlindState(BlindStateStopped, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == extendedBlindCloseActionTypeId) { - setBlindState(BlindStateClosing, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == extendedBlindOpeningOutputActionTypeId) { - bool on = action.param(extendedBlindOpeningOutputActionOpeningOutputParamTypeId).value().toBool(); - thing->setStateValue(extendedBlindOpeningOutputStateTypeId, on); - if (on) { - setBlindState(BlindStateOpening, thing); - } else { - setBlindState(BlindStateStopped, thing); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == extendedBlindClosingOutputActionTypeId) { - bool on = action.param(extendedBlindClosingOutputActionClosingOutputParamTypeId).value().toBool(); - thing->setStateValue(extendedBlindClosingOutputStateTypeId, on); - if (on) { - setBlindState(BlindStateClosing, thing); - } else { - setBlindState(BlindStateStopped, thing); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == extendedBlindPercentageActionTypeId) { - moveBlindToPercentage(action, thing); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == venetianBlindThingClassId) { - if (action.actionTypeId() == venetianBlindOpenActionTypeId) { - setBlindState(BlindStateOpening, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindStopActionTypeId) { - setBlindState(BlindStateStopped, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindCloseActionTypeId) { - setBlindState(BlindStateClosing, thing); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindOpeningOutputActionTypeId) { - bool on = action.param(venetianBlindOpeningOutputActionOpeningOutputParamTypeId).value().toBool(); - thing->setStateValue(venetianBlindOpeningOutputStateTypeId, on); - if (on) { - setBlindState(BlindStateOpening, thing); - } else { - setBlindState(BlindStateStopped, thing); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindClosingOutputActionTypeId) { - bool on = action.param(venetianBlindClosingOutputActionClosingOutputParamTypeId).value().toBool(); - thing->setStateValue(venetianBlindClosingOutputStateTypeId, on); - if (on) { - setBlindState(BlindStateClosing, thing); - } else { - setBlindState(BlindStateStopped, thing); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindPercentageActionTypeId) { - moveBlindToPercentage(action, thing); - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == venetianBlindAngleActionTypeId) { - moveBlindToAngle(action, thing); - info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == shutterThingClassId) { - if (action.actionTypeId() == shutterOpenActionTypeId) { - thing->setStateValue(shutterStatusStateTypeId, "Opening"); - thing->setStateValue(shutterClosingOutputStateTypeId, false); - thing->setStateValue(shutterOpeningOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == shutterStopActionTypeId) { - thing->setStateValue(shutterStatusStateTypeId, "Stopped"); - thing->setStateValue(shutterOpeningOutputStateTypeId, false); - thing->setStateValue(shutterClosingOutputStateTypeId, false); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == shutterCloseActionTypeId) { - thing->setStateValue(shutterStatusStateTypeId, "Closing"); - thing->setStateValue(shutterOpeningOutputStateTypeId, false); - thing->setStateValue(shutterClosingOutputStateTypeId, true); - return info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == shutterOpeningOutputActionTypeId) { - bool on = action.param(shutterOpeningOutputActionOpeningOutputParamTypeId).value().toBool(); - thing->setStateValue(shutterOpeningOutputStateTypeId, on); - if (on) { - thing->setStateValue(shutterStatusStateTypeId, "Opening"); - thing->setStateValue(shutterClosingOutputStateTypeId, false); - } else { - thing->setStateValue(shutterStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == shutterClosingOutputActionTypeId) { - bool on = action.param(shutterClosingOutputActionClosingOutputParamTypeId).value().toBool(); - thing->setStateValue(shutterClosingOutputStateTypeId, on); - if (on) { - thing->setStateValue(shutterStatusStateTypeId, "Closing"); - thing->setStateValue(shutterOpeningOutputStateTypeId, false); - } else { - thing->setStateValue(shutterStatusStateTypeId, "Stopped"); - } - info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == socketThingClassId) { - if (action.actionTypeId() == socketPowerActionTypeId) { - thing->setStateValue(socketPowerStateTypeId, action.param(socketPowerActionPowerParamTypeId).value()); - return info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == lightThingClassId) { - if (action.actionTypeId() == lightPowerActionTypeId) { - thing->setStateValue(lightPowerStateTypeId, action.param(lightPowerActionPowerParamTypeId).value()); - return info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == heatingThingClassId) { - if (action.actionTypeId() == heatingPowerActionTypeId) { - thing->setStateValue(heatingPowerStateTypeId, action.param(heatingPowerActionPowerParamTypeId).value()); - return info->finish(Thing::ThingErrorNoError); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == powerSwitchThingClassId) { - if (action.actionTypeId() == powerSwitchPowerActionTypeId) { - thing->setStateValue(powerSwitchPowerStateTypeId, action.param(powerSwitchPowerActionPowerParamTypeId).value()); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == irrigationThingClassId) { - if (action.actionTypeId() == irrigationPowerActionTypeId) { - thing->setStateValue(irrigationPowerStateTypeId, action.param(irrigationPowerActionPowerParamTypeId).value()); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == ventilationThingClassId) { - if (action.actionTypeId() == ventilationPowerActionTypeId) { - thing->setStateValue(ventilationPowerStateTypeId, action.param(ventilationPowerActionPowerParamTypeId).value()); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == ventilationFlowThingClassId) { - if (action.actionTypeId() == ventilationFlowPowerActionTypeId) { - thing->setStateValue(ventilationFlowPowerStateTypeId, action.param(ventilationFlowPowerActionPowerParamTypeId).value()); - info->finish(Thing::ThingErrorNoError); - return; - } else if (action.actionTypeId() == ventilationFlowFlowRateActionTypeId) { - thing->setStateValue(ventilationFlowFlowRateStateTypeId, action.param(ventilationFlowFlowRateActionFlowRateParamTypeId).value()); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == temperatureSensorThingClassId) { - if (action.actionTypeId() == temperatureSensorInputActionTypeId) { - double value = info->action().param(temperatureSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(temperatureSensorInputStateTypeId, value); - double min = info->thing()->setting(temperatureSensorSettingsMinTempParamTypeId).toDouble(); - double max = info->thing()->setting(temperatureSensorSettingsMaxTempParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 1, min, max); - double roundingFactor = qPow(10, info->thing()->setting(temperatureSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(temperatureSensorTemperatureStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == humiditySensorThingClassId) { - if (action.actionTypeId() == humiditySensorInputActionTypeId) { - double value = info->action().param(humiditySensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(humiditySensorInputStateTypeId, value); - double min = info->thing()->setting(humiditySensorSettingsMinHumidityParamTypeId).toDouble(); - double max = info->thing()->setting(humiditySensorSettingsMaxHumidityParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(humiditySensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(humiditySensorHumidityStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == moistureSensorThingClassId) { - if (action.actionTypeId() == moistureSensorInputActionTypeId) { - double value = info->action().param(moistureSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(moistureSensorInputStateTypeId, value); - double min = info->thing()->setting(moistureSensorSettingsMinMoistureParamTypeId).toDouble(); - double max = info->thing()->setting(moistureSensorSettingsMaxMoistureParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(moistureSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(moistureSensorMoistureStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == phSensorThingClassId) { - if (action.actionTypeId() == phSensorInputActionTypeId) { - double value = info->action().paramValue(phSensorInputActionInputParamTypeId).toDouble(); - thing->setStateValue(phSensorInputStateTypeId, value); - double min = info->thing()->setting(phSensorSettingsMinInputParamTypeId).toDouble(); - double max = info->thing()->setting(phSensorSettingsMaxInputParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, min, max, 0, 14); - double roundingFactor = qPow(10, info->thing()->setting(phSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(phSensorPhStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == orpSensorThingClassId) { - if (action.actionTypeId() == orpSensorInputActionTypeId) { - double value = info->action().paramValue(orpSensorInputActionInputParamTypeId).toDouble(); - thing->setStateValue(orpSensorInputStateTypeId, value); - double min = info->thing()->setting(orpSensorSettingsMinORPParamTypeId).toDouble(); - double max = info->thing()->setting(orpSensorSettingsMaxORPParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(orpSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(orpSensorOrpStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == o2SensorThingClassId) { - if (action.actionTypeId() == o2SensorInputActionTypeId) { - double value = info->action().paramValue(o2SensorInputActionInputParamTypeId).toDouble(); - thing->setStateValue(o2SensorInputStateTypeId, value); - double min = info->thing()->setting(o2SensorSettingsMinInputParamTypeId).toDouble(); - double max = info->thing()->setting(o2SensorSettingsMaxInputParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, min, max, 0, 100); - double roundingFactor = qPow(10, info->thing()->setting(o2SensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(o2SensorO2saturationStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == pressureSensorThingClassId) { - if (action.actionTypeId() == pressureSensorInputActionTypeId) { - double value = info->action().param(pressureSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(pressureSensorInputStateTypeId, value); - double min = info->thing()->setting(pressureSensorSettingsMinPressureParamTypeId).toDouble(); - double max = info->thing()->setting(pressureSensorSettingsMaxPressureParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(pressureSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(pressureSensorPressureStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == coSensorThingClassId) { - if (action.actionTypeId() == coSensorInputActionTypeId) { - double value = info->action().param(coSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(coSensorInputStateTypeId, value); - double min = info->thing()->setting(coSensorSettingsMinCOParamTypeId).toDouble(); - double max = info->thing()->setting(coSensorSettingsMaxCOParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(coSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(coSensorCoStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == co2SensorThingClassId) { - if (action.actionTypeId() == co2SensorInputActionTypeId) { - double value = info->action().param(co2SensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(co2SensorInputStateTypeId, value); - double min = info->thing()->setting(co2SensorSettingsMinCO2ParamTypeId).toDouble(); - double max = info->thing()->setting(co2SensorSettingsMaxCO2ParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(co2SensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(co2SensorCo2StateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == gasSensorThingClassId) { - if (action.actionTypeId() == gasSensorInputActionTypeId) { - double value = info->action().param(gasSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(gasSensorInputStateTypeId, value); - double min = info->thing()->setting(gasSensorSettingsMinValueParamTypeId).toDouble(); - double max = info->thing()->setting(gasSensorSettingsMaxValueParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(gasSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(gasSensorGasStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == lightSensorThingClassId) { - if (action.actionTypeId() == lightSensorInputActionTypeId) { - double value = info->action().param(lightSensorInputActionInputParamTypeId).value().toDouble(); - thing->setStateValue(lightSensorInputStateTypeId, value); - double min = info->thing()->setting(lightSensorSettingsMinLuxParamTypeId).toDouble(); - double max = info->thing()->setting(lightSensorSettingsMaxLuxParamTypeId).toDouble(); - double newValue = mapDoubleValue(value, 0, 100, min, max); - double roundingFactor = qPow(10, info->thing()->setting(lightSensorSettingsAccuracyParamTypeId).toInt()); - newValue = qRound(newValue * roundingFactor) / roundingFactor; - thing->setStateValue(lightSensorLightIntensityStateTypeId, newValue); - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == smartMeterThingClassId) { - if (action.actionTypeId() == smartMeterImpulseInputActionTypeId) { - bool value = info->action().param(smartMeterImpulseInputActionImpulseInputParamTypeId).value().toBool(); - thing->setStateValue(smartMeterImpulseInputStateTypeId, value); - int impulsePerKwh = info->thing()->setting(smartMeterSettingsImpulsePerKwhParamTypeId).toInt(); - if (value) { - double currentEnergy = thing->stateValue(smartMeterTotalEnergyConsumedStateTypeId).toDouble(); - thing->setStateValue(smartMeterTotalEnergyConsumedStateTypeId ,currentEnergy + (1.00/impulsePerKwh)); - m_pulsesPerTimeframe[thing]++; - } - info->finish(Thing::ThingErrorNoError); - return; - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - } else if (thing->thingClassId() == impulseGaragedooorThingClassId) { - if (action.actionTypeId() == impulseGaragedooorTriggerImpulseActionTypeId) { - uint duration = thing->setting(impulseGaragedooorSettingsImpulseDurationParamTypeId).toUInt(); - thing->setStateValue(impulseGaragedooorImpulseStateTypeId, true); - QTimer::singleShot(duration, thing, [thing](){ - thing->setStateValue(impulseGaragedooorImpulseStateTypeId, false); - }); - info->finish(Thing::ThingErrorNoError); - return; - } - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } else if (thing->thingClassId() == simpleGaragedoorThingClassId) { - if (action.actionTypeId() == simpleGaragedoorOpenActionTypeId) { - thing->setStateValue(simpleGaragedoorClosingOutputStateTypeId, false); - thing->setStateValue(simpleGaragedoorOpeningOutputStateTypeId, true); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == simpleGaragedoorCloseActionTypeId) { - thing->setStateValue(simpleGaragedoorOpeningOutputStateTypeId, false); - thing->setStateValue(simpleGaragedoorClosingOutputStateTypeId, true); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == simpleGaragedoorStopActionTypeId) { - thing->setStateValue(simpleGaragedoorClosingOutputStateTypeId, false); - thing->setStateValue(simpleGaragedoorOpeningOutputStateTypeId, false); - info->finish(Thing::ThingErrorNoError); - return; - } - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } else if (thing->thingClassId() == extendedStatefulGaragedoorThingClassId) { - if (action.actionTypeId() == extendedStatefulGaragedoorOpenActionTypeId) { - m_statefulGarageTargetPercentage[thing] = 0; - m_statefulGaragePercentageTimer[thing]->start(); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == extendedStatefulGaragedoorCloseActionTypeId) { - m_statefulGarageTargetPercentage[thing] = 100; - m_statefulGaragePercentageTimer[thing]->start(); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == extendedStatefulGaragedoorStopActionTypeId) { - m_statefulGarageTargetPercentage[thing] = thing->stateValue(extendedStatefulGaragedoorPercentageStateTypeId).toUInt(); - info->finish(Thing::ThingErrorNoError); - return; - } - - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - - } else if (thing->thingClassId() == thermostatThingClassId) { - if (action.actionTypeId() == thermostatTemperatureActionTypeId) { - thing->setStateValue(thermostatTemperatureStateTypeId, action.param(thermostatTemperatureActionTemperatureParamTypeId).value()); - } else if (action.actionTypeId() == thermostatTargetTemperatureActionTypeId) { - double minSetting = thing->setting(thermostatSettingsMinTargetTemperatureParamTypeId).toDouble(); - double maxSetting = thing->setting(thermostatSettingsMaxTargetTemperatureParamTypeId).toDouble(); - double newTemp = action.param(thermostatTargetTemperatureActionTargetTemperatureParamTypeId).value().toDouble(); - newTemp = qMax(newTemp, minSetting); - newTemp = qMin(newTemp, maxSetting); - thing->setStateValue(thermostatTargetTemperatureStateTypeId, newTemp); - } else if (action.actionTypeId() == thermostatHeatingOnActionTypeId) { - thing->setStateValue(thermostatHeatingOnStateTypeId, action.param(thermostatHeatingOnActionHeatingOnParamTypeId).value()); - } else if (action.actionTypeId() == thermostatCoolingOnActionTypeId) { - thing->setStateValue(thermostatCoolingOnStateTypeId, action.param(thermostatCoolingOnActionCoolingOnParamTypeId).value()); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - thermostatCheckPowerOutputState(thing); - info->finish(Thing::ThingErrorNoError); - return; - - } else if (thing->thingClassId() == heatingThingClassId) { - if (action.actionTypeId() == heatingPowerActionTypeId) { - thing->setStateValue(heatingPowerStateTypeId, action.paramValue(heatingPowerActionPowerParamTypeId).toBool()); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - info->finish(Thing::ThingErrorNoError); - return; - - } else if (thing->thingClassId() == coolingThingClassId) { - if (action.actionTypeId() == coolingPowerActionTypeId) { - thing->setStateValue(coolingPowerStateTypeId, action.paramValue(coolingPowerActionPowerParamTypeId).toBool()); - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } - info->finish(Thing::ThingErrorNoError); - return; - - } else if (thing->thingClassId() == sgReadyThingClassId) { - if (action.actionTypeId() == sgReadyRelay1ActionTypeId) { - thing->setStateValue(sgReadyRelay1StateTypeId, action.param(sgReadyRelay1ActionRelay1ParamTypeId).value()); - QString operatingMode = sgReadyOperatingMode(thing->stateValue(sgReadyRelay1StateTypeId).toBool(), thing->stateValue(sgReadyRelay2StateTypeId).toBool()); - thing->setStateValue(sgReadySgReadyModeStateTypeId, operatingMode); - thing->setStateValue(sgReadyOperatingModeDescriptionStateTypeId, sgReadyOperatingModeDescription(operatingMode)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == sgReadyRelay2ActionTypeId) { - thing->setStateValue(sgReadyRelay2StateTypeId, action.param(sgReadyRelay2ActionRelay2ParamTypeId).value()); - QString operatingMode = sgReadyOperatingMode(thing->stateValue(sgReadyRelay1StateTypeId).toBool(), thing->stateValue(sgReadyRelay2StateTypeId).toBool()); - thing->setStateValue(sgReadySgReadyModeStateTypeId, operatingMode); - thing->setStateValue(sgReadyOperatingModeDescriptionStateTypeId, sgReadyOperatingModeDescription(operatingMode)); - info->finish(Thing::ThingErrorNoError); - return; - } - if (action.actionTypeId() == sgReadySgReadyModeActionTypeId) { - QString operatingMode = action.paramValue(sgReadySgReadyModeActionSgReadyModeParamTypeId).toString(); - thing->setStateValue(sgReadySgReadyModeStateTypeId, operatingMode); - thing->setStateValue(sgReadyOperatingModeDescriptionStateTypeId, sgReadyOperatingModeDescription(operatingMode)); - if (operatingMode == "Off") { - thing->setStateValue(sgReadyRelay1StateTypeId, true); - thing->setStateValue(sgReadyRelay2StateTypeId, false); - } else if (operatingMode == "Low") { - thing->setStateValue(sgReadyRelay1StateTypeId, false); - thing->setStateValue(sgReadyRelay2StateTypeId, false); - } else if (operatingMode == "Standard") { - thing->setStateValue(sgReadyRelay1StateTypeId, false); - thing->setStateValue(sgReadyRelay2StateTypeId, true); - } else if (operatingMode == "High") { - thing->setStateValue(sgReadyRelay1StateTypeId, true); - thing->setStateValue(sgReadyRelay2StateTypeId, true); - } - info->finish(Thing::ThingErrorNoError); - return; - } - Q_ASSERT_X(false, "executeAction", QString("Unhandled actionTypeId: %1").arg(action.actionTypeId().toString()).toUtf8()); - } else if (thing->thingClassId() == doorSensorThingClassId) { - if (action.actionTypeId() == doorSensorClosedActionTypeId) { - bool closed = action.paramValue(doorSensorClosedActionClosedParamTypeId).toBool(); - qCDebug(dcGenericThings()) << "Door sensor is now" << (closed ? "open" : "closed"); - thing->setStateValue(doorSensorClosedStateTypeId, closed); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == waterSensorThingClassId) { - if (action.actionTypeId() == waterSensorWaterDetectedActionTypeId) { - bool waterDetected = action.paramValue(waterSensorWaterDetectedActionWaterDetectedParamTypeId).toBool(); - qCDebug(dcGenericThings()).nospace() << "Water sensor is " << (waterDetected ? "" : "not") << "detecting water"; - thing->setStateValue(waterSensorWaterDetectedStateTypeId, waterDetected); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == waterLevelSensorThingClassId) { - if (action.actionTypeId() == waterLevelSensorInputActionTypeId) { - double capacity = thing->setting(waterLevelSensorSettingsCapacityParamTypeId).toDouble(); - double input = action.paramValue(waterLevelSensorInputActionInputParamTypeId).toDouble(); - double minInputValue = thing->setting(waterLevelSensorSettingsMinInputValueParamTypeId).toDouble(); - double maxInputValue = thing->setting(waterLevelSensorSettingsMaxInputValueParamTypeId).toDouble(); - double normalizedInput = (input - minInputValue) / (maxInputValue - minInputValue); - double waterLevel = normalizedInput * capacity; - thing->setStateValue(waterLevelSensorWaterLevelStateTypeId, waterLevel); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == presenceSensorThingClassId) { - if (action.actionTypeId() == presenceSensorIsPresentActionTypeId) { - bool isPresent = action.paramValue(presenceSensorIsPresentActionIsPresentParamTypeId).toBool(); - qCDebug(dcGenericThings()) << "Presence sensor is now" << (isPresent ? "present" : "not present"); - thing->setStateValue(presenceSensorIsPresentStateTypeId, isPresent); - if (isPresent) { - thing->setStateValue(presenceSensorLastSeenTimeStateTypeId, QDateTime::currentDateTime().toMSecsSinceEpoch() / 1000); - } - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == batteryThingClassId) { - if (action.actionTypeId() == batteryBatteryLevelControlActionTypeId) { - int value = action.paramValue(batteryBatteryLevelControlActionBatteryLevelControlParamTypeId).toInt(); - thing->setStateValue(batteryBatteryLevelStateTypeId, value); - thing->setStateValue(batteryBatteryLevelControlStateTypeId, value); - int criticalValue = thing->setting(batterySettingsCriticalLevelParamTypeId).toInt(); - thing->setStateValue(batteryBatteryCriticalStateTypeId, value <= criticalValue); - info->finish(Thing::ThingErrorNoError); - return; - } else if (action.actionTypeId() == batteryChargingActionTypeId) { - thing->setStateValue(batteryChargingStateTypeId, action.paramValue(batteryChargingActionChargingParamTypeId)); - info->finish(Thing::ThingErrorNoError); - return; - } - } else if (thing->thingClassId() == carThingClassId) { - if (action.actionTypeId() == carCapacityActionTypeId) { - thing->setStateValue(carCapacityStateTypeId, action.paramValue(carCapacityActionCapacityParamTypeId)); - info->finish(Thing::ThingErrorNoError); - } else if (action.actionTypeId() == carBatteryLevelActionTypeId) { - thing->setStateValue(carBatteryLevelStateTypeId, action.paramValue(carBatteryLevelActionBatteryLevelParamTypeId)); - thing->setStateValue(carBatteryCriticalStateTypeId, action.paramValue(carBatteryLevelActionBatteryLevelParamTypeId).toInt() < 10); - info->finish(Thing::ThingErrorNoError); - } - } else if (thing->thingClassId() == simpleHeatPumpThingClassId) { - if (action.actionTypeId() == simpleHeatPumpPowerActionTypeId) { - thing->setStateValue(simpleHeatPumpPowerStateTypeId, action.paramValue(simpleHeatPumpPowerActionPowerParamTypeId).toBool()); - info->finish(Thing::ThingErrorNoError); - } - } else { - Q_ASSERT_X(false, "executeAction", QString("Unhandled thingClassId: %1").arg(thing->thingClassId().toString()).toUtf8()); - } -} - -void IntegrationPluginGenericThings::thingRemoved(Thing *thing) -{ - if (thing->thingClassId() == extendedBlindThingClassId) { - m_extendedBlindPercentageTimer.take(thing)->deleteLater(); - m_extendedBlindTargetPercentage.remove(thing); - } else if (thing->thingClassId() == venetianBlindThingClassId) { - m_extendedBlindPercentageTimer.take(thing)->deleteLater(); - m_extendedBlindTargetPercentage.remove(thing); - m_venetianBlindAngleTimer.take(thing)->deleteLater(); - m_venetianBlindTargetAngle.remove(thing); - } else if (thing->thingClassId() == smartMeterThingClassId) { - m_pulsesPerTimeframe.remove(thing); - } else if (thing->thingClassId() == smartMeterThingClassId) { - m_smartMeterTimer.take(thing)->deleteLater(); - m_pulsesPerTimeframe.remove(thing); - } -} - -double IntegrationPluginGenericThings::mapDoubleValue(double value, double fromMin, double fromMax, double toMin, double toMax) -{ - double percent = (value - fromMin) / (fromMax - fromMin); - double toValue = toMin + (toMax - toMin) * percent; - return toValue; -} - -void IntegrationPluginGenericThings::setBlindState(IntegrationPluginGenericThings::BlindState state, Thing *thing) -{ - //If an ongoing "to percentage" actions is beeing executed, it is now overruled by another action - m_extendedBlindTargetPercentage.remove(thing); - - if (thing->thingClassId() == extendedBlindThingClassId) { - switch (state) { - case BlindStateOpening: - thing->setStateValue(extendedBlindStatusStateTypeId, "Opening"); - thing->setStateValue(extendedBlindClosingOutputStateTypeId, false); - thing->setStateValue(extendedBlindOpeningOutputStateTypeId, true); - thing->setStateValue(extendedBlindMovingStateTypeId, true); - m_extendedBlindPercentageTimer.value(thing)->start(); - break; - case BlindStateClosing: - thing->setStateValue(extendedBlindStatusStateTypeId, "Closing"); - thing->setStateValue(extendedBlindClosingOutputStateTypeId, true); - thing->setStateValue(extendedBlindOpeningOutputStateTypeId, false); - thing->setStateValue(extendedBlindMovingStateTypeId, true); - m_extendedBlindPercentageTimer.value(thing)->start(); - break; - case BlindStateStopped: - thing->setStateValue(extendedBlindStatusStateTypeId, "Stopped"); - thing->setStateValue(extendedBlindClosingOutputStateTypeId, false); - thing->setStateValue(extendedBlindOpeningOutputStateTypeId, false); - thing->setStateValue(extendedBlindMovingStateTypeId, false); - m_extendedBlindPercentageTimer.value(thing)->stop(); - break; - } - } else if (thing->thingClassId() == venetianBlindThingClassId) { - m_venetianBlindTargetAngle.remove(thing); - switch (state) { - case BlindStateOpening: - thing->setStateValue(venetianBlindStatusStateTypeId, "Opening"); - thing->setStateValue(venetianBlindClosingOutputStateTypeId, false); - thing->setStateValue(venetianBlindOpeningOutputStateTypeId, true); - thing->setStateValue(venetianBlindMovingStateTypeId, true); - m_extendedBlindPercentageTimer.value(thing)->start(); - m_venetianBlindAngleTimer.value(thing)->start(); - break; - case BlindStateClosing: - thing->setStateValue(venetianBlindStatusStateTypeId, "Closing"); - thing->setStateValue(venetianBlindClosingOutputStateTypeId, true); - thing->setStateValue(venetianBlindOpeningOutputStateTypeId, false); - thing->setStateValue(venetianBlindMovingStateTypeId, true); - m_extendedBlindPercentageTimer.value(thing)->start(); - m_venetianBlindAngleTimer.value(thing)->start(); - break; - case BlindStateStopped: - thing->setStateValue(venetianBlindStatusStateTypeId, "Stopped"); - thing->setStateValue(venetianBlindClosingOutputStateTypeId, false); - thing->setStateValue(venetianBlindOpeningOutputStateTypeId, false); - thing->setStateValue(venetianBlindMovingStateTypeId, false); - m_extendedBlindPercentageTimer.value(thing)->stop(); - m_venetianBlindAngleTimer.value(thing)->stop(); - break; - } - } -} - -void IntegrationPluginGenericThings::moveBlindToPercentage(Action action, Thing *thing) -{ - if (thing->thingClassId() == extendedBlindThingClassId) { - uint targetPercentage = action.param(extendedBlindPercentageActionPercentageParamTypeId).value().toUInt(); - uint currentPercentage = thing->stateValue(extendedBlindPercentageStateTypeId).toUInt(); - // 100% indicates the device is fully closed - if (targetPercentage == currentPercentage) { - qCDebug(dcGenericThings()) << "Extended blind is already at given percentage" << targetPercentage; - } else if (targetPercentage > currentPercentage) { - setBlindState(BlindStateClosing, thing); - m_extendedBlindTargetPercentage.insert(thing, targetPercentage); - } else if (targetPercentage < currentPercentage) { - setBlindState(BlindStateOpening, thing); - m_extendedBlindTargetPercentage.insert(thing, targetPercentage); - } else { - setBlindState(BlindStateStopped, thing); - } - } else if (thing->thingClassId() == venetianBlindThingClassId) { - uint targetPercentage = action.param(venetianBlindPercentageActionPercentageParamTypeId).value().toUInt(); - uint currentPercentage = thing->stateValue(venetianBlindPercentageStateTypeId).toUInt(); - qCDebug(dcGenericThings()) << "Moving venetian blind to percentage" << targetPercentage << "Current percentage:" << currentPercentage; - // 100% indicates the device is fully closed - if (targetPercentage == currentPercentage) { - qCDebug(dcGenericThings()) << "Extended blind is already at given percentage" << targetPercentage; - } else if (targetPercentage > currentPercentage) { - setBlindState(BlindStateClosing, thing); - m_extendedBlindTargetPercentage.insert(thing, targetPercentage); - } else if (targetPercentage < currentPercentage) { - setBlindState(BlindStateOpening, thing); - m_extendedBlindTargetPercentage.insert(thing, targetPercentage); - } else { - setBlindState(BlindStateStopped, thing); - } - } else { - qCDebug(dcGenericThings()) << "Move to percentage doesn't support this thingClass"; - } -} - -void IntegrationPluginGenericThings::moveBlindToAngle(Action action, Thing *thing) -{ - if (thing->thingClassId() == venetianBlindThingClassId) { - if (action.actionTypeId() == venetianBlindAngleActionTypeId) { - //NOTE moving percentage affects the angle but the angle doesnt affect the percentage - // opening -> -90 - // closing -> +90 - int targetAngle = action.param(venetianBlindAngleActionAngleParamTypeId).value().toInt(); - int currentAngle = thing->stateValue(venetianBlindAngleStateTypeId).toInt(); - if (targetAngle == currentAngle) { - qCDebug(dcGenericThings()) << "Venetian blind is already at given angle" << targetAngle; - } else if (targetAngle > currentAngle) { - setBlindState(BlindStateClosing, thing); - m_venetianBlindTargetAngle.insert(thing, targetAngle); - } else if (targetAngle < currentAngle) { - setBlindState(BlindStateOpening, thing); - m_venetianBlindTargetAngle.insert(thing, targetAngle); - } else { - setBlindState(BlindStateStopped, thing); - } - } - } else { - qCDebug(dcGenericThings()) << "Move to angle doesn't support this thingClass"; - } -} - - -void IntegrationPluginGenericThings::thermostatCheckPowerOutputState(Thing *thing) -{ - double targetTemperature = thing->stateValue(thermostatTargetTemperatureStateTypeId).toDouble(); - double actualTemperature = thing->stateValue(thermostatTemperatureStateTypeId).toDouble(); - double temperatureDifference = thing->setting(thermostatSettingsTemperatureDifferenceParamTypeId).toDouble(); - if (actualTemperature <= (targetTemperature-temperatureDifference)) { - thing->setStateValue(thermostatHeatingOnStateTypeId, true); - } else if (actualTemperature >= targetTemperature) { - thing->setStateValue(thermostatHeatingOnStateTypeId, false); - } - if (actualTemperature >= (targetTemperature+temperatureDifference)) { - thing->setStateValue(thermostatCoolingOnStateTypeId, true); - } else if (actualTemperature <= targetTemperature) { - thing->setStateValue(thermostatCoolingOnStateTypeId, false); - } -} - -QString IntegrationPluginGenericThings::sgReadyOperatingModeDescription(const QString &operatingModeString) -{ - if (operatingModeString == "Off") { - return "Stop heating."; - } else if (operatingModeString == "Low") { - return "Normal mode, with partial heat storage filling."; - } else if (operatingModeString == "Standard") { - return "Increased room and heat storage temperature."; - } else if (operatingModeString == "High") { - return "Start heating."; - } - return QString("Unknown operating mode %1").arg(operatingModeString); -} - -QString IntegrationPluginGenericThings::sgReadyOperatingMode(bool relay1, bool relay2) -{ - if (relay1 && !relay2) { - /* - * Operating state 1 (Relay state: 1: 0): - * This operating state is downward compatible with the often fixed times - * activated EVU lock and includes a maximum of 2 hours of "hard" lock time. - */ - return "Off"; - } else if (!relay1 && !relay2) { - /* - * Operating state 2 (Relay state: 0: 0): - * In this circuit, the heat pump runs in energy-efficient normal mode - * with partial heat storage filling for the maximum two-hour EVU lock. - */ - return "Low"; - } else if (!relay1 && relay2) { - /* - * Operating state 3 (Relay state: 0: 1): - * In this operating state, the heat pump within the controller runs in amplified mode - * Operation for space heating and hot water preparation. It's not one - * definitive start-up command, but a switch-on recommendation according to the current increase. - */ - return "Standard"; - } else { - /* - * Operating state 4 (Relay state 1: 1): - * This is a definitive start-up command, insofar as this is possible within the framework of the rule settings. - * For this operating state, different control models must be set on the controller for different tariff and usage models: - * Variant 1: The heat pump (compressor) is actively switched on. - * Variant 2: The heat pump (compressor and electrical auxiliary heating) is actively switched on, optional: higher temperature in the heat storage - */ - return "High"; - } -} diff --git a/genericthings/integrationplugingenericthings.h b/genericthings/integrationplugingenericthings.h deleted file mode 100644 index ec42adc1..00000000 --- a/genericthings/integrationplugingenericthings.h +++ /dev/null @@ -1,81 +0,0 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -* -* Copyright 2013 - 2020, nymea GmbH -* Contact: contact@nymea.io -* -* This file is part of nymea. -* This project including source code and documentation is protected by -* copyright law, and remains the property of nymea GmbH. All rights, including -* reproduction, publication, editing and translation, are reserved. The use of -* this project is subject to the terms of a license agreement to be concluded -* with nymea GmbH in accordance with the terms of use of nymea GmbH, available -* under https://nymea.io/license -* -* GNU Lesser General Public License Usage -* Alternatively, this project may be redistributed and/or modified under the -* terms of the GNU Lesser General Public License as published by the Free -* Software Foundation; version 3. This project is distributed in the hope that -* it will be useful, but WITHOUT ANY WARRANTY; without even the implied -* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public License -* along with this project. If not, see . -* -* For any further details and any questions please contact us under -* contact@nymea.io or see our FAQ/Licensing Information on -* https://nymea.io/license/faq -* -* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -#ifndef INTEGRATIONPLUGINGENERICTHINGS_H -#define INTEGRATIONPLUGINGENERICTHINGS_H - -#include "integrations/integrationplugin.h" -#include "plugintimer.h" -#include "extern-plugininfo.h" - -#include - -class IntegrationPluginGenericThings: public IntegrationPlugin -{ - Q_OBJECT - - Q_PLUGIN_METADATA(IID "io.nymea.IntegrationPlugin" FILE "integrationplugingenericthings.json") - Q_INTERFACES(IntegrationPlugin) - -public: - explicit IntegrationPluginGenericThings(); - void setupThing(ThingSetupInfo *info) override; - void executeAction(ThingActionInfo *info) override; - void thingRemoved(Thing *thing) override; - -private: - QHash m_pulsesPerTimeframe; - - double mapDoubleValue(double value, double fromMin, double fromMax, double toMin, double toMax); - - QHash m_extendedBlindPercentageTimer; - QHash m_venetianBlindAngleTimer; - QHash m_smartMeterTimer; - QHash m_extendedBlindTargetPercentage; - QHash m_venetianBlindTargetAngle; - QHash m_statefulGaragePercentageTimer; - QHash m_statefulGarageTargetPercentage; - - enum BlindState { - BlindStateOpening, - BlindStateClosing, - BlindStateStopped - }; - void setBlindState(BlindState state, Thing *thing); - void moveBlindToPercentage(Action action, Thing *thing); - void moveBlindToAngle(Action action, Thing *thing); - - void thermostatCheckPowerOutputState(Thing *thing); - - QString sgReadyOperatingMode(bool relay1, bool relay2); - QString sgReadyOperatingModeDescription(const QString &operatingModeString); -}; - -#endif // INTEGRATIONPLUGINGENERICTHINGS_H diff --git a/genericthings/integrationplugingenericthings.json b/genericthings/integrationplugingenericthings.json deleted file mode 100644 index 102b2dff..00000000 --- a/genericthings/integrationplugingenericthings.json +++ /dev/null @@ -1,1931 +0,0 @@ -{ - "name": "GenericThings", - "displayName": "Generic Things", - "id": "b3188696-2585-4806-bf98-30ab576ce5c8", - "vendors": [ - { - "name": "nymea", - "displayName": "nymea", - "id": "2062d64d-3232-433c-88bc-0d33c0ba2ba6", - "thingClasses": [ - { - "id": "f5c02d35-b06e-4950-8238-847d50cabfdf", - "name": "generic", - "displayName": "Generic thing", - "createMethods": ["user"], - "stateTypes": [ - { - "id": "f477e227-0d2d-4d88-a545-7dedf36266d5", - "name": "stringState", - "displayName": "String state", - "displayNameEvent": "String state changed", - "displayNameAction": "Set string state", - "type": "QString", - "defaultValue": "", - "writable": true - }, - { - "id": "3cf5eb01-dae8-49cd-8c5f-b0224be0044f", - "name": "digitalInput", - "displayName": "Digital input", - "displayNameEvent": "Digital input changed", - "displayNameAction": "Set digital input", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - }, - { - "id": "605b4d8e-71a7-441e-900a-e07c305acd93", - "name": "digitalOutput", - "displayName": "Digital output", - "displayNameEvent": "Digital output changed", - "displayNameAction": "Set digital output", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - }, - { - "id": "810fcd3c-7854-4bb1-82f6-1403ba54875e", - "name": "analogInput", - "displayName": "Analog input", - "displayNameEvent": "Analog input changed", - "displayNameAction": "Set analog input", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 1, - "ioType": "analogInput", - "writable": true - }, - { - "id": "de8ec1b1-8026-4fd8-aefb-dedc07616aa4", - "name": "analogOutput", - "displayName": "Analog output", - "displayNameEvent": "Analog output changed", - "displayNameAction": "Set analog output", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 1, - "ioType": "analogOutput", - "writable": true - } - ] - }, - { - "id": "9e69585f-90ba-44e4-ad90-5b4bffbe345a", - "name": "awning", - "displayName": "Generic awning", - "createMethods": ["user"], - "interfaces": ["awning"], - "stateTypes": [ - { - "id": "4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "displayNameAction": "Set opening output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "59bfd575-709f-4e43-9726-de26e6d4ca8b", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "displayNameAction": "Set closing output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "ff6f2565-2a2e-4d34-b10f-d3f73b676399", - "name": "status", - "displayName": "Status", - "displayNameEvent": "Status changed", - "type": "QString", - "possibleValues": [ - "Opening", - "Stopped", - "Closing" - ], - "defaultValue": "Stopped" - } - ], - "actionTypes": [ - { - "id": "979e9c51-5a93-4635-85e3-01874306b229", - "name": "open", - "displayName": "Open" - }, - { - "id": "555cafe4-bd12-42c6-bab1-8cd59af6468e", - "name": "stop", - "displayName": "Stop" - }, - { - "id": "53b5ba77-9a34-4cd6-ad24-fb01fc465f98", - "name": "close", - "displayName": "Close" - } - ] - }, - { - "id": "17ee3657-6ad8-4ae2-8959-3cf66cec8d13", - "name": "blind", - "displayName": "Generic blind", - "createMethods": ["user"], - "interfaces": ["blind"], - "stateTypes": [ - { - "id": "b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "displayNameAction": "Set opening output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "9b673430-572d-4a9c-85d3-dafadbe541cd", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "displayNameAction": "Set closing output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "5fdec1e0-51f6-48b9-b743-ba572504b2c1", - "name": "status", - "displayName": "Status", - "displayNameEvent": "Status changed", - "type": "QString", - "possibleValues": [ - "Opening", - "Stopped", - "Closing" - ], - "defaultValue": "Stopped" - } - ], - "actionTypes": [ - { - "id": "120dc265-dbbb-4f19-9d31-c372c23479c0", - "name": "open", - "displayName": "Open" - }, - { - "id": "1a924c9a-5dcb-4b1c-8fd6-ab101098e007", - "name": "stop", - "displayName": "Stop" - }, - { - "id": "86e9cf21-7487-47c4-b4be-4a940d7235fb", - "name": "close", - "displayName": "Close" - } - ] - }, - { - "id": "40aa9f3c-a23c-4f7f-8786-fcf3554f3e19", - "name": "extendedBlind", - "displayName": "Generic blind with position control", - "createMethods": ["user"], - "interfaces": ["extendedblind"], - "settingsTypes": [ - { - "id": "27a95b8d-7f97-441b-a3be-0646c517cb06", - "name": "closingDuration", - "displayName": "Closing duration [ms]", - "type": "uint", - "minValue": 1000, - "defaultValue": 5000 - } - ], - "stateTypes": [ - { - "id": "e559f077-e904-4bbc-8ec3-344b814d2eab", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "displayNameAction": "Set opening output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "1a4a5839-a30d-4239-a124-63bfdc74a8f6", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "displayNameAction": "Set closing output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "c2354d7e-198a-43ae-aa5f-c6710010c7e1", - "name": "status", - "displayName": "Status", - "displayNameEvent": "Status changed", - "type": "QString", - "possibleValues": [ - "Opening", - "Stopped", - "Closing" - ], - "defaultValue": "Stopped" - }, - { - "id": "941d1e1f-8dd7-4493-812f-6cefefd88c2e", - "name": "moving", - "type": "bool", - "displayName": "Moving", - "displayNameEvent": "Moving changed", - "defaultValue": false - }, - { - "id": "181df603-d45f-4d3d-a358-97aa3e4ac0bd", - "name": "percentage", - "displayName": "Percentage", - "displayNameEvent": "Percentage changed", - "displayNameAction": "Set percentage", - "type": "int", - "minValue": 0, - "maxValue": 100, - "defaultValue": 0, - "unit": "Percentage", - "writable": true - } - ], - "actionTypes": [ - { - "id": "5a7599fa-8351-4ed6-9b98-fa2f3be54304", - "name": "open", - "displayName": "Open" - }, - { - "id": "ab67e4bf-c7b6-489b-9b49-3e0a1c7d33ca", - "name": "stop", - "displayName": "Stop" - }, - { - "id": "97d6351d-7440-47f3-bdba-a31bb15368ac", - "name": "close", - "displayName": "Close" - } - ] - }, - { - "id": "e6b96ced-8d50-45da-91c8-792d364d2795", - "name": "venetianBlind", - "displayName": "Venetian blind", - "createMethods": ["user"], - "interfaces": ["venetianblind"], - "settingsTypes": [ - { - "id": "4c0bf07d-aaab-4f67-af65-00ceaefbaa84", - "name": "closingDuration", - "displayName": "Closing duration [ms]", - "minValue": 1000, - "type": "uint", - "defaultValue": 5000 - }, - { - "id": "6c8340bf-7fd3-43e3-a75b-dfa2f6426e11", - "name": "angleTime", - "displayName": "Angle end to end time [ms]", - "minValue": 1, - "type": "uint", - "defaultValue": 1000 - } - ], - "stateTypes": [ - { - "id": "6041dacf-5303-4dc0-ba3c-7ecaa438f2dd", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "displayNameAction": "Set opening output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "84dd2fa1-85fe-47f3-9e32-e6083432d39c", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "displayNameAction": "Set closing output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "6fb7826e-b6d8-42f8-b712-719496046436", - "name": "status", - "displayName": "Status", - "displayNameEvent": "Status changed", - "type": "QString", - "possibleValues": [ - "Opening", - "Stopped", - "Closing" - ], - "defaultValue": "Stopped" - }, - { - "id": "6234c07e-4200-4f2c-8cbd-bff24c38c243", - "name": "moving", - "type": "bool", - "displayName": "Moving", - "displayNameEvent": "Moving changed", - "defaultValue": false - }, - { - "id": "33dc8019-336d-4d50-8d60-dff8508338ca", - "name": "percentage", - "displayName": "Percentage", - "displayNameEvent": "Percentage changed", - "displayNameAction": "Set percentage", - "type": "int", - "minValue": 0, - "maxValue": 100, - "defaultValue": 0, - "unit": "Percentage", - "writable": true - }, - { - "id": "fcb700c4-5da8-4385-85b0-6616e807974e", - "name": "angle", - "displayName": "Angle", - "displayNameEvent": "Angle changed", - "displayNameAction": "Set angle", - "type": "int", - "unit": "Degree", - "minValue": -90, - "maxValue": 90, - "defaultValue": 0, - "writable": true - } - ], - "actionTypes": [ - { - "id": "3e728e50-3d45-4035-b215-1e604cf3159b", - "name": "open", - "displayName": "Open" - }, - { - "id": "6e3eeb5d-d7ed-4175-9795-e76451e0a00b", - "name": "stop", - "displayName": "Stop" - }, - { - "id": "1c71f050-f6cb-4929-9c9d-7c262f77c143", - "name": "close", - "displayName": "Close" - } - ] - }, - { - "id": "7917c2e7-d7d2-4c47-a38d-41f7dd7693d9", - "name": "shutter", - "displayName": "Generic shutter", - "createMethods": ["user"], - "interfaces": ["shutter"], - "stateTypes": [ - { - "id": "cc547728-b309-4695-b355-49748ef2521c", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "displayNameAction": "Set opening output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "1c35df0e-4c41-455f-893a-0145377952a0", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "displayNameAction": "Set closing output", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "6d6e72dc-4d2b-4ec1-82c2-54405a682711", - "name": "status", - "displayName": "Status", - "displayNameEvent": "Status changed", - "type": "QString", - "possibleValues": [ - "Opening", - "Stopped", - "Closing" - ], - "defaultValue": "Stopped" - } - ], - "actionTypes": [ - { - "id": "9deb662d-2378-4345-a898-8742d41e43c1", - "name": "open", - "displayName": "Open" - }, - { - "id": "db5f3332-1f4e-4f9e-84d2-93c5d7de315c", - "name": "stop", - "displayName": "Stop" - }, - { - "id": "cf5303f1-67c7-4cef-b11c-eb9de6fc8a87", - "name": "close", - "displayName": "Close" - } - ] - }, - { - "id": "d6699a12-f4a6-4c50-951c-f4f1cd0501dc", - "name": "impulseGaragedooor", - "displayName": "Impulse based garage door", - "createMethods": ["user"], - "interfaces": ["impulsegaragedoor"], - "settingsTypes": [ - { - "id": "962b356c-e975-4d33-b114-10f655eaf74c", - "name": "impulseDuration", - "displayName": "Impulse duration", - "type": "uint", - "defaultValue": "200" - } - ], - "actionTypes": [ - { - "id": "ff5461c6-70fc-435e-8424-96fa59ed321e", - "name": "triggerImpulse", - "displayName": "Operate" - } - ], - "stateTypes": [ - { - "id": "5ccaf0aa-01a4-441f-b6ca-18940da096a5", - "name": "impulse", - "displayName": "Impulse", - "displayNameEvent": "Impulse changed", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput" - } - ] - }, - { - "id": "572403b1-bc22-4620-8170-53147a546033", - "name": "simpleGaragedoor", - "displayName": "Simple garage door", - "createMethods": ["user"], - "interfaces": ["simplegaragedoor"], - "actionTypes": [ - { - "id": "3edb25af-ad51-495b-9ac9-ab97669339b7", - "name": "open", - "displayName": "Open" - }, - { - "id": "1111c0ed-69b6-480c-9fd5-15292600d4f4", - "name": "close", - "displayName": "Close" - }, - { - "id": "f346766f-44ee-452b-bb9c-e89ec0f56016", - "name": "stop", - "displayName": "Stop" - } - ], - "stateTypes": [ - { - "id": "fcd421eb-54f2-4195-bdef-ffa69e9dcc57", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput" - }, - { - "id": "44ef060a-e6fc-4f33-84d2-b24ac7d31ff1", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput" - } - ] - }, - { - "id": "7341e689-4495-4422-851a-3e7c790394b8", - "name": "extendedStatefulGaragedoor", - "displayName": "Garage door with position control", - "createMethods": ["user"], - "interfaces": ["extendedstatefulgaragedoor"], - "settingsTypes": [ - { - "id": "04fb7724-a870-4df9-a79e-fab693931238", - "name": "openingDuration", - "displayName": "Opening duration [ms]", - "type": "uint", - "minValue": 1000, - "defaultValue": 5000 - } - ], - "stateTypes": [ - { - "id": "0cc74edb-7116-47cf-953a-409933f26557", - "name": "state", - "displayName": "State", - "displayNameEvent": "State changed", - "type": "QString", - "possibleValues": ["open", "closed", "opening", "closing", "intermediate"], - "defaultValue": "closed" - }, - { - "id": "963bed3d-2ccb-4dd0-b609-c7e9f25d32d6", - "name": "moving", - "displayName": "Moving", - "displayNameEvent": "Moving changed", - "type": "bool", - "defaultValue": false - }, - { - "id": "f9244c14-0bc9-49ce-90a5-437e66245594", - "name": "percentage", - "displayName": "Open position", - "displayNameEvent": "Open position changed", - "displayNameAction": "Set open position", - "type": "int", - "minValue": 0, - "maxValue": 100, - "defaultValue": 100, - "writable": true - }, - { - "id": "ecc799c7-4d74-4d1f-94e5-2d74e77493ae", - "name": "openingOutput", - "displayName": "Opening output", - "displayNameEvent": "Opening output changed", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput" - }, - { - "id": "e1c14bcd-6131-494b-8dd1-46738e9c8f5e", - "name": "closingOutput", - "displayName": "Closing output", - "displayNameEvent": "Closing output changed", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput" - } - ], - "actionTypes": [ - { - "id": "4a3a3b88-47e9-436f-86be-b5955f3fc2f7", - "name": "open", - "displayName": "Open" - }, - { - "id": "2420fcdb-03d3-4edb-aa89-e3b93c7d6d18", - "name": "close", - "displayName": "Close" - }, - { - "id": "109c3eaf-26a0-4121-8be2-1363253178fd", - "name": "stop", - "displayName": "Stop" - } - ] - }, - { - "id": "4e7261af-a27b-4446-8346-914ea59f7547", - "name": "socket", - "displayName": "Generic power socket", - "createMethods": ["user"], - "interfaces": ["powersocket"], - "stateTypes": [ - { - "id": "018038d7-1d02-4b17-8fe3-babca044b087", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Power changed", - "displayNameAction": "Set power", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "c50d3216-f307-4f9f-8190-4391510c385c", - "name": "light", - "displayName": "Generic light", - "createMethods": ["user"], - "interfaces": ["light"], - "stateTypes": [ - { - "id": "8b6e4a67-6522-408b-b676-8d2f09ed2d54", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Power changed", - "displayNameAction": "Set power", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "392854c4-3d14-4cf8-96cd-d933526bd197", - "name": "heating", - "displayName": "Generic heating", - "createMethods": ["user"], - "interfaces": ["heating"], - "stateTypes": [ - { - "id": "409b635e-a754-4b5c-b3f0-d1c5a0fb3f03", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Power changed", - "displayNameAction": "Set power", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "57daa147-dd6f-4673-a757-d8f01a2054c7", - "name": "powerSwitch", - "displayName": "Generic power switch", - "createMethods": ["user"], - "interfaces": ["power"], - "stateTypes": [ - { - "id": "08087af6-6a3b-4e4a-ac6d-56f23ce63edf", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Powered on/off", - "displayNameAction": "Power on/off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "d013b980-20d5-4791-9c4f-b411c39241d7", - "name": "irrigation", - "displayName": "Generic irrigation", - "createMethods": ["user"], - "interfaces": ["irrigation"], - "stateTypes": [ - { - "id": "0212a287-c5ae-4644-8803-adfdd8caeb9a", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Turned on or off", - "displayNameAction": "Turn on or off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "24af8dd3-ddf0-47f0-bf09-70fdfd8dceab", - "name": "ventilation", - "displayName": "Generic ventilation", - "createMethods": ["user"], - "interfaces": ["ventilation"], - "stateTypes": [ - { - "id": "846711b7-ea5a-4c66-a267-001c60406509", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Turned on or off", - "displayNameAction": "Turn on or off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "a7eec5f7-3cc3-4edb-baa7-1f6b6f935bf8", - "name": "ventilationFlow", - "displayName": "Generic ventilation with flow control", - "createMethods": ["user"], - "interfaces": ["ventilation"], - "stateTypes": [ - { - "id": "adf9a8dd-da13-4070-a3bd-9d4be26ebcd1", - "name": "power", - "displayName": "Power", - "displayNameEvent": "Turned on or off", - "displayNameAction": "Turn on or off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - }, - { - "id": "5a273bba-0bef-49fb-870a-7f2df8fc14b6", - "name": "flowRate", - "displayName": "Air flow rate", - "displayNameEvent": "Air flow rate changed", - "displayNameAction": "Set air flow rate", - "type": "int", - "minValue": 0, - "maxValue": 100, - "unit": "Percentage", - "writable": true, - "defaultValue": 0, - "ioType": "analogOutput" - } - ] - }, - { - "id": "cf3d65db-6f68-457b-968c-cfb66cbd5311", - "name": "temperatureSensor", - "displayName": "Generic temperature sensor", - "createMethods": ["user"], - "interfaces": ["temperaturesensor"], - "settingsTypes": [ - { - "id": "c86ae5d3-9335-4b6e-8231-bf3ed6670dff", - "name": "minTemp", - "displayName": "Minimum temperature", - "type": "double", - "defaultValue": -20, - "unit": "DegreeCelsius" - }, - { - "id": "8b5947ab-127f-4995-853b-eeeb628811e3", - "name": "maxTemp", - "displayName": "Maximum temperature", - "type": "double", - "defaultValue": 50, - "unit": "DegreeCelsius" - }, - { - "id": "3b543c3a-1fc0-45b5-8c07-600a6045f82e", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "d0b6c4be-339e-4b0f-a234-0611b7565395", - "name": "temperature", - "displayName": "Temperature", - "displayNameEvent": "Temperature changed", - "type": "double", - "unit": "DegreeCelsius", - "defaultValue": 0 - }, - { - "id": "fed37466-1264-4ac1-84fd-aff3a1f7ff04", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 1, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "d295bc64-773c-42a9-83e2-80db5fa0d1ce", - "name": "humiditySensor", - "displayName": "Generic humidity sensor", - "createMethods": ["user"], - "interfaces": ["humiditysensor"], - "settingsTypes": [ - { - "id": "0218ffa9-3d49-4b25-a59f-c8831f190432", - "name": "minHumidity", - "displayName": "Minimum humidity", - "type": "double", - "defaultValue": 0, - "unit": "Percentage" - }, - { - "id": "10afc387-68d1-47ea-a816-0d1acad47b3c", - "name": "maxHumidity", - "displayName": "Maximum humidity", - "type": "double", - "defaultValue": 100, - "unit": "Percentage" - }, - { - "id": "38064841-6121-4862-a639-08fb0b778511", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "925225d9-2965-444a-9c42-63c2873700fb", - "name": "humidity", - "displayName": "Humidity", - "displayNameEvent": "Humidity changed", - "type": "double", - "unit": "Percentage", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100 - }, - { - "id": "a8223e65-e704-4f84-9bbe-d8fc42597047", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "33e610cf-ff30-481b-9f0b-d6857bcd41a5", - "name": "moistureSensor", - "displayName": "Generic soil moisture sensor", - "createMethods": ["user"], - "interfaces": ["moisturesensor"], - "settingsTypes": [ - { - "id": "32153786-f1ae-4aa4-a84c-b9054102eb92", - "name": "minMoisture", - "displayName": "Minimum moisture", - "type": "double", - "defaultValue": 0, - "unit": "Percentage" - }, - { - "id": "3426817d-065e-4cfc-aa21-bb434de684d6", - "name": "maxMoisture", - "displayName": "Maximum moisture", - "type": "double", - "defaultValue": 100, - "unit": "Percentage" - }, - { - "id": "3c967a68-9951-4c9a-b019-79b913e762b6", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "7a62e1d2-92f2-424c-876c-870478a4b2bd", - "name": "moisture", - "displayName": "Soil moisture", - "displayNameEvent": "Soil moisture changed", - "type": "double", - "unit": "Percentage", - "minValue": 0, - "maxValue": 100, - "defaultValue": 0 - }, - { - "id": "ce64a425-d990-4fc1-966b-be6de445792b", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "e2934fa1-59c3-4de8-82f2-66181136085c", - "name": "phSensor", - "displayName": "PH sensor", - "createMethods": ["user"], - "interfaces": ["phsensor"], - "settingsTypes": [ - { - "id": "a8ff2e16-e06c-4b1e-839a-a06691a12d64", - "name": "minInput", - "displayName": "Minimum input value", - "type": "double", - "defaultValue": 0 - }, - { - "id": "a8889e45-59e5-4cc4-b228-611f8f19f531", - "name": "maxInput", - "displayName": "Maximum input value", - "type": "double", - "defaultValue": 100 - }, - { - "id": "bb41de73-31d0-4b21-8f80-14467120aae4", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "743514b1-8018-4525-b87a-c5f414146ff2", - "name": "ph", - "displayName": "PH", - "displayNameEvent": "PH changed", - "type": "double", - "defaultValue": 7, - "minValue": 0, - "maxValue": 14 - }, - { - "id": "614a039b-9ed9-4b62-9c74-01ba4ac42f16", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "minValue": 0, - "defaultValue": 50, - "maxValue": 100, - "ioType": "analogOutput", - "writable": true - } - ] - }, - { - "id": "3edeec39-ab9d-4697-90cc-0bba089384cf", - "name": "orpSensor", - "displayName": "Generic ORP sensor", - "createMethods": ["user"], - "interfaces": ["orpsensor"], - "settingsTypes": [ - { - "id": "396bf3f9-a3fc-44c3-90f8-b316670116a7", - "name": "minORP", - "displayName": "Minimum input value", - "type": "double", - "defaultValue": -1500 - }, - { - "id": "bd0774c9-1b89-49ce-b0f8-66ff26ca10db", - "name": "maxORP", - "displayName": "Maximum input ORP value", - "type": "double", - "defaultValue": 1500 - }, - { - "id": "1f218ad8-652a-4bda-987d-3e183ff040b2", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 0 - } - ], - "stateTypes": [ - { - "id": "e5ed3535-2e5d-412e-85f8-782cbccd7731", - "name": "orp", - "displayName": "ORP", - "displayNameEvent": "ORP changed", - "type": "double", - "unit": "MilliVolt", - "defaultValue": 0, - "minValue": -1500, - "maxValue": 1500 - }, - { - "id": "020ff04f-a157-4925-9c55-2b45389208fc", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "minValue": 0, - "defaultValue": 0, - "maxValue": 100, - "ioType": "analogOutput", - "writable": true - } - ] - }, - { - "id": "a8cf20ec-132b-4f6f-b5ec-73dc2f873b43", - "name": "o2Sensor", - "displayName": "Generic O2 sensor", - "createMethods": ["user"], - "interfaces": ["o2sensor"], - "settingsTypes": [ - { - "id": "58e84041-d451-44a2-972e-13a79b449b58", - "name": "minInput", - "displayName": "Minimum input value", - "type": "double", - "defaultValue": 0 - }, - { - "id": "198847f6-a188-42b0-9e0b-15587eaabbed", - "name": "maxInput", - "displayName": "Maximum input value", - "type": "double", - "defaultValue": 100 - }, - { - "id": "d79701ac-1619-42d8-b10f-a55e8e2ab3f1", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 0 - } - ], - "stateTypes": [ - { - "id": "a3ff7641-87d9-4b07-b8e5-e6aa92b90088", - "name": "o2saturation", - "displayName": "O2 saturation", - "displayNameEvent": "O2 saturation changed", - "type": "double", - "unit": "Percentage", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100 - }, - { - "id": "7e74fca7-84d0-4f3e-9f26-4232b7b9f507", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "minValue": 0, - "defaultValue": 0, - "maxValue": 100, - "ioType": "analogOutput", - "writable": true - } - ] - }, - { - "id": "9a8d804b-d1dc-450a-8c41-be491e5cdda0", - "name": "pressureSensor", - "displayName": "Generic pressure sensor", - "createMethods": ["user"], - "interfaces": ["pressuresensor"], - "settingsTypes": [ - { - "id": "035e2619-f9c2-4e8f-95dd-f124ad9402d0", - "name": "minPressure", - "displayName": "Minimum pressure", - "type": "double", - "defaultValue": 0, - "unit": "MilliBar" - }, - { - "id": "06e21251-8b4f-44a1-8504-6b51f8526bd0", - "name": "maxPressure", - "displayName": "Maximum pressure", - "type": "double", - "defaultValue": 2000, - "unit": "MilliBar" - }, - { - "id": "021a17d8-9e5e-4dd6-835d-1a3e1ffd6b23", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "e645a979-1465-4592-b8b0-f4c123db0800", - "name": "pressure", - "displayName": "Pressure", - "displayNameEvent": "Pressure changed", - "type": "double", - "unit": "MilliBar", - "defaultValue": 0 - }, - { - "id": "c320577c-371a-442b-ac80-b692ff2064c9", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "unit": "Percentage", - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "262a29b2-b5df-4ee2-822c-e672f50d97b6", - "name": "coSensor", - "displayName": "Generic CO sensor", - "createMethods": ["user"], - "interfaces": ["cosensor"], - "settingsTypes": [ - { - "id": "e850b044-fd70-446c-a943-3c88407425f5", - "name": "minCO", - "displayName": "Minimum CO", - "type": "double", - "defaultValue": 0, - "unit": "PartsPerMillion" - }, - { - "id": "e9def195-1b67-4a1b-8030-cbbc6209d52e", - "name": "maxCO", - "displayName": "Maximum CO", - "type": "double", - "defaultValue": 2000, - "unit": "PartsPerMillion" - }, - { - "id": "9c8a9553-7b68-4b58-a8f1-3c6b591998c0", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "9eebe9d2-b34b-4847-bc25-109e2b8cab24", - "name": "co", - "displayName": "CO level", - "displayNameEvent": "CO level changed", - "type": "double", - "unit": "PartsPerMillion", - "defaultValue": 0 - }, - { - "id": "cf3ec5ec-7098-47c5-9666-b3c52eba1b1d", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "a58a2dae-4148-4a4d-ab34-2a11124454a0", - "name": "co2Sensor", - "displayName": "Generic CO2 sensor", - "createMethods": ["user"], - "interfaces": ["co2sensor"], - "settingsTypes": [ - { - "id": "a0d8a6ec-599a-4ded-ae03-2950561f0b72", - "name": "minCO2", - "displayName": "Minimum CO2", - "type": "double", - "defaultValue": 0, - "unit": "PartsPerMillion" - }, - { - "id": "a3029bee-8b13-4aed-8ebd-eaceb603f8ef", - "name": "maxCO2", - "displayName": "Maximum CO2", - "type": "double", - "defaultValue": 2000, - "unit": "PartsPerMillion" - }, - { - "id": "236831a8-a455-4e38-a9cd-eabbebaa3f67", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "755c4c7f-093e-41dd-a38d-9ee18c9890d6", - "name": "co2", - "displayName": "CO2", - "displayNameEvent": "CO2 changed", - "type": "double", - "unit": "PartsPerMillion", - "defaultValue": 0 - }, - { - "id": "7dc765f8-fa9b-4199-8f21-49ed452f226d", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "25c6725f-5c15-485b-9ec4-cb0e11ab6b32", - "name": "gasSensor", - "displayName": "Generic flammable gas sensor", - "createMethods": ["user"], - "interfaces": ["gassensor"], - "settingsTypes": [ - { - "id": "480945ea-6262-408d-b799-cbff905a40db", - "name": "minValue", - "displayName": "Minimum value", - "type": "double", - "defaultValue": 0, - "unit": "PartsPerMillion" - }, - { - "id": "51f4a830-3ef9-4fa2-b36b-5976f724f8a1", - "name": "maxValue", - "displayName": "Maximum value", - "type": "double", - "defaultValue": 10000, - "unit": "PartsPerMillion" - }, - { - "id": "1c7465b1-490d-43db-bb67-a179a6923a57", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "5135648f-57b7-44b0-b9d0-c5accad09356", - "name": "gas", - "displayName": "Gas level", - "displayNameEvent": "Gas level changed", - "type": "double", - "unit": "PartsPerMillion", - "defaultValue": 0 - }, - { - "id": "e3eb500a-ac00-426c-932a-dee4fd6fbcf5", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "d4d873fd-f0fc-433f-b615-91c1506a1890", - "name": "lightSensor", - "displayName": "Generic light sensor", - "createMethods": ["user"], - "interfaces": ["lightsensor"], - "settingsTypes": [ - { - "id": "6dea7384-b079-443b-8cc2-1479138fa212", - "name": "minLux", - "displayName": "Minimum Lux", - "type": "double", - "defaultValue": 0, - "unit": "Lux" - }, - { - "id": "7fe74404-d7f0-41af-a8d4-dd1bda27f752", - "name": "maxLux", - "displayName": "Maximum Lux", - "type": "double", - "defaultValue": 120000, - "unit": "Lux" - }, - { - "id": "f800988f-1ad5-4ffb-9aa8-70ef17614966", - "name": "accuracy", - "displayName": "Accuracy (decimal places)", - "type": "uint", - "minValue": 0, - "maxValue": 5, - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b", - "name": "lightIntensity", - "displayName": "Light intensity", - "displayNameEvent": "Light intensity changed", - "type": "double", - "unit": "Lux", - "defaultValue": 0 - }, - { - "id": "520e5d27-7d15-4d79-94cf-5d01f5a09ea8", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100, - "unit": "Percentage", - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "c3123967-f741-4fe1-a0d4-9a3e405d7e52", - "name": "smartMeter", - "displayName": "Impulse based energy meter", - "createMethods": ["user"], - "interfaces": ["smartmeterconsumer"], - "settingsTypes": [ - { - "id": "c361732b-68eb-447e-a434-e84031231871", - "name": "impulsePerKwh", - "displayName": "Impulse/kWh", - "type": "int", - "minValue": 1, - "maxValue": 1000000, - "defaultValue": 1000 - }, - { - "id": "73c9acc3-8f76-40d7-a79b-a1f08bb308d4", - "name": "impulseTimeframe", - "displayName": "Timeframe for power calculation", - "type": "int", - "unit": "Seconds", - "minValue": 1, - "maxValue": 600, - "defaultValue": 10 - } - ], - "stateTypes": [ - { - "id": "5983d714-5f80-42d8-bee2-9228b6382b3b", - "name": "currentPower", - "displayName": "Current Power usage", - "displayNameEvent": "Current Power usage changed", - "type": "double", - "defaultValue": 0.00, - "unit": "Watt" - }, - { - "id": "5821edb7-e6cb-4e5a-9d0b-3375126d3367", - "name": "totalEnergyConsumed", - "displayName": "Energy", - "displayNameEvent": "Energy changed", - "type": "double", - "defaultValue": 0.00, - "unit": "KiloWattHour" - }, - { - "id": "9cd7e5ca-f8f8-48d5-9785-911ae75158c3", - "name": "impulseInput", - "displayName": "Impulse input", - "displayNameEvent": "Impulse input changed", - "displayNameAction": "Set impulse input", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - } - ] - }, - { - "id": "6a34ba99-e5ec-4fc9-a61f-695ed8573fa1", - "name": "thermostat", - "displayName": "Generic thermostat", - "createMethods": ["user"], - "interfaces": ["thermostat"], - "settingsTypes": [ - { - "id": "64bf308f-a543-4e02-b787-1a1714c1f978", - "name": "temperatureDifference", - "displayName": "Temperature difference", - "type": "double", - "unit": "DegreeCelsius", - "minValue": 0.00, - "defaultValue": 2.00 - }, - { - "id": "67451c97-50e1-4ea6-ac43-4386fbd26698", - "name": "minTargetTemperature", - "displayName": "Minimum temperature", - "type": "double", - "unit": "DegreeCelsius", - "minValue": -20, - "maxValue": 49, - "defaultValue": -20 - }, - { - "id": "85608dd5-7e67-4c98-9e62-b97411681048", - "name": "maxTargetTemperature", - "displayName": "Maximum temperature", - "type": "double", - "unit": "DegreeCelsius", - "minValue": -19, - "maxValue": 50, - "defaultValue": 50 - } - ], - "stateTypes": [ - { - "id": "0f808803-0e63-47df-b024-9685998ba663", - "name": "temperature", - "displayName": "Temperature sensor input", - "displayNameEvent": "Temperature sensor input changed", - "displayNameAction": "Set temperature sensor input", - "type": "double", - "defaultValue": 0, - "minValue": -20, - "maxValue": 50, - "unit": "DegreeCelsius", - "writable": true, - "ioType": "analogOutput" - }, - { - "id": "60169ebf-c1e3-41ed-a1bb-4b858e93ec50", - "name": "targetTemperature", - "displayName": "Target temperature", - "displayNameEvent": "Target temperature changed", - "displayNameAction": "Set target temperature", - "type": "double", - "defaultValue": 21, - "minValue": -20, - "maxValue": 50, - "unit": "DegreeCelsius", - "writable": true, - "ioType": "analogInput" - }, - { - "id": "1f6a0c39-4417-4e31-86db-9926cf81c345", - "name": "heatingOn", - "displayName": "Heating On/off", - "displayNameEvent": "Heating turned on/off", - "displayNameAction": "Turn heating on/off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - }, - { - "id": "cab7d4bd-f612-4d12-b3a4-0649e189810f", - "name": "coolingOn", - "displayName": "Cooling On/off", - "displayNameEvent": "Cooling turned on/off", - "displayNameAction": "Turn cooling on/off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "09edbc07-d382-48a4-9b16-99992014aff9", - "name": "cooling", - "displayName": "Generic cooler", - "createMethods": ["user"], - "interfaces": ["cooling"], - "stateTypes": [ - { - "id": "918cfd2c-6692-4faa-acc6-18ebf93611ec", - "name": "power", - "displayName": "Cooler on/off", - "displayNameEvent": "Cooler turned on/off", - "displayNameAction": "Turn cooler on/off", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalInput" - } - ] - }, - { - "id": "83cf138d-02dc-4015-9b03-6360c2f3cfb1", - "name": "sgReady", - "displayName": "SG-Ready", - "createMethods": ["user"], - "interfaces": [ "smartgridheatpump" ], - "settingsTypes": [ - ], - "stateTypes": [ - { - "id": "d080466e-7271-441f-9916-1199a6668545", - "name": "relay1", - "displayName": "Relay 1", - "displayNameEvent": "Relay 1 changed", - "displayNameAction": "Set relay 1", - "type": "bool", - "defaultValue": false, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "caf22937-fdf7-41e1-a87b-d11e66c4f4c6", - "name": "relay2", - "displayName": "Relay 2", - "displayNameEvent": "Relay 2 changed", - "displayNameAction": "Set relay 2", - "type": "bool", - "defaultValue": true, - "ioType": "digitalInput", - "writable": true - }, - { - "id": "1e694bc2-12e1-4e1d-a0ec-70af2c7b16ab", - "name": "sgReadyMode", - "displayName": "Smart grid mode", - "displayNameEvent": "Smart grid mode changed", - "displayNameAction": "Set smart grid mode", - "type": "QString", - "possibleValues": [ - "Off", - "Low", - "Standard", - "High" - ], - "defaultValue": "Standard", - "writable": true, - "cached": true, - "suggestLogging": true - }, - { - "id": "b421d098-f6e9-40e2-b536-58acdb3a49fe", - "name": "operatingModeDescription", - "displayName": "Operating mode description", - "displayNameEvent": "Operating mode description changed", - "type": "QString", - "defaultValue": "" - } - ] - }, - { - "id": "2d936f56-48ee-4be1-9b3e-28a335ad8085", - "name": "doorSensor", - "displayName": "Generic door or window sensor", - "createMethods": ["user"], - "interfaces": ["closablesensor"], - "stateTypes": [ - { - "id": "7f5fdc2b-7916-4e90-9c24-558162304f71", - "name": "closed", - "displayName": "Closed", - "displayNameEvent": "Opened or closed", - "displayNameAction": "Set open or closed", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - } - ] - }, - { - "id": "09b9cb86-f551-4efe-9a7d-2f7624e9510f", - "name": "waterSensor", - "displayName": "Gerneric water sensor", - "createMethods": ["user"], - "interfaces": ["watersensor"], - "stateTypes": [ - { - "id": "b2427b85-1f62-4635-b546-1961191426ef", - "name": "waterDetected", - "displayName": "Water detected", - "displayNameEvent": "Water detected", - "displayNameAction": "Set water detected", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - } - ] - }, - { - "id": "f1576df0-fb45-4bf0-89fa-a83c4118c326", - "name": "waterLevelSensor", - "displayName": "Generic water level sensor", - "createMethods": ["user"], - "interfaces": ["waterlevelsensor"], - "settingsTypes": [ - { - "id": "5e98e8d2-d849-46c5-b25a-d54f184ea4c7", - "name": "capacity", - "displayName": "Tank capactity", - "type": "double", - "unit": "Liter", - "minValue": 0, - "defaultValue": 100 - }, - { - "id": "16ea3cf2-46fd-40a3-88bf-21a2bb7cbabe", - "name": "minInputValue", - "displayName": "Minimum input value", - "type": "double", - "defaultValue": 0 - }, - { - "id": "4e228f9b-8631-4643-8375-3d8d76d12e9c", - "name": "maxInputValue", - "displayName": "Maximum input value", - "type": "double", - "defaultValue": 1 - } - ], - "stateTypes": [ - { - "id": "07563165-e42d-4d0f-ac60-31cdd19170f2", - "name": "waterLevel", - "displayName": "Water level", - "displayNameEvent": "Water level changed", - "type": "double", - "unit": "Liter", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100 - }, - { - "id": "d344887d-da5d-4742-83bd-608754b2d0aa", - "name": "input", - "displayName": "Input value", - "displayNameEvent": "Input value changed", - "displayNameAction": "Set input value", - "type": "double", - "defaultValue": 0, - "minValue": 0, - "maxValue": 1, - "writable": true, - "ioType": "analogOutput" - } - ] - }, - { - "id": "339a0c54-4086-404f-8d36-bcf20621b785", - "name": "presenceSensor", - "displayName": "Generic presence sensor", - "createMethods": ["user"], - "interfaces": ["presencesensor"], - "stateTypes": [ - { - "id": "22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c", - "name": "isPresent", - "displayName": "Presence detected", - "displayNameEvent": "Presense changed", - "displayNameAction": "Set presence", - "type": "bool", - "defaultValue": false, - "ioType": "digitalOutput", - "writable": true - }, - { - "id": "be4842cb-140c-425f-9630-8bb19fdb943e", - "name": "lastSeenTime", - "displayName": "Last seen time", - "displayNameEvent": "Last seen time changed", - "type": "int", - "unit": "UnixTime", - "defaultValue": 0 - } - ] - }, - { - "id": "81418556-cae3-4803-aa0c-9c4b3304a3eb", - "name": "battery", - "displayName": "Generic battery", - "createMethods": ["user"], - "interfaces": ["battery"], - "settingsTypes": [ - { - "id": "8d875cb7-3a14-42d1-bf1b-759e5fd95a8f", - "name": "criticalLevel", - "displayName": "Critical battery level", - "type": "int", - "minValue": 0, - "maxValue": 100, - "defaultValue": 10 - } - ], - "stateTypes": [ - { - "id": "d37eed4a-befc-40d4-b435-40a761f99314", - "name": "batteryLevel", - "displayName": "Battery level", - "displayNameEvent": "Battery level changed", - "type": "int", - "unit": "Percentage", - "defaultValue": 0, - "minValue": 0, - "maxValue": 100 - }, - { - "id": "3336f0c2-158b-4353-b74f-f1bb9c4e8447", - "name": "batteryLevelControl", - "displayName": "Battery level control", - "displayNameEvent": "Battery level control changed", - "displayNameAction": "Set battery level", - "type": "double", - "minValue": 0, - "maxValue": 100, - "defaultValue": 0, - "unit": "Percentage", - "writable": true, - "ioType": "analogOutput" - }, - { - "id": "a61c0328-b982-46a5-9cc0-b4fa4d0ab84d", - "name": "charging", - "displayName": "Charging", - "displayNameEvent": "Charging started or stopped", - "displayNameAction": "Set charging", - "type": "bool", - "defaultValue": false, - "writable": true, - "ioType": "digitalOutput" - }, - { - "id": "e95dc037-002d-40a2-8c15-cd5489bd354a", - "name": "batteryCritical", - "displayName": "Battery critical", - "displayNameEvent": "Battery entered or left critical state", - "type": "bool", - "defaultValue": false - } - ] - }, - { - "id": "dbe0a9ff-94ba-4a94-ae52-51da3f05c717", - "name": "car", - "displayName": "Generic electric car", - "createMethods": ["user"], - "interfaces": ["electricvehicle"], - "settingsTypes": [ - { - "id": "0c55516d-4285-4d02-8926-1dae03649e18", - "name": "minChargingCurrent", - "displayName": "Minimum charging current", - "type": "uint", - "unit": "Ampere", - "minValue": 6, - "maxValue": 16, - "defaultValue": 6 - } - ], - "stateTypes": [ - { - "id": "363a2a39-61b6-4109-9cd9-aca7367d12c7", - "name": "capacity", - "displayName": "Capacity", - "displayNameEvent": "Capacity changed", - "displayNameAction": "Set capacity", - "type": "double", - "unit": "KiloWattHour", - "defaultValue": 50, - "writable": true - }, - { - "id": "d33982d6-6467-4281-b448-68c1b1db088d", - "name": "batteryCritical", - "displayName": "Battery level critical", - "displayNameEvent": "Battery entered or left critical state", - "type": "bool", - "defaultValue": false - }, - { - "id": "3f1cca10-8988-4ec6-b937-0775653cde12", - "name": "batteryLevel", - "displayName": "Battery level", - "displayNameEvent": "Battery level changed", - "displayNameAction": "Set battery level", - "type": "int", - "unit": "Percentage", - "writable": true, - "minValue": 0, - "maxValue": 100, - "defaultValue": 100 - }, - { - "id": "20faf2b8-2b40-4bee-b228-97dbaf0cdffc", - "name": "minChargingCurrent", - "displayName": "Minimum charging current", - "displayNameEvent": "Minimum charging current changed", - "type": "uint", - "unit": "Ampere", - "minValue": 6, - "maxValue": 16, - "defaultValue": 6 - } - ] - }, - { - "id": "9fdb33bb-8e38-4108-8234-3b1d07bbc801", - "name": "simpleHeatPump", - "displayName": "Generic simple heat pump", - "createMethods": ["user"], - "interfaces": ["simpleheatpump"], - "stateTypes": [ - { - "id": "ac2ac0f9-058c-4586-8871-2d9dbc6e1758", - "name": "power", - "displayName": "Heat pump enabled", - "displayNameEvent": "Heat pump power changed", - "displayNameAction": "Enable/Disable heat pump", - "type": "bool", - "writable": true, - "defaultValue": false, - "cached": true, - "ioType": "digitalInput", - "suggestLogging": true - } - ] - } - ] - } - ] -} diff --git a/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-de.ts b/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-de.ts deleted file mode 100644 index 3c7229b7..00000000 --- a/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-de.ts +++ /dev/null @@ -1,1590 +0,0 @@ - - - - - GenericThings - - Accuracy (decimal places) - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {f800988f-1ad5-4ffb-9aa8-70ef17614966}) ----------- -The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {1c7465b1-490d-43db-bb67-a179a6923a57}) ----------- -The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {236831a8-a455-4e38-a9cd-eabbebaa3f67}) ----------- -The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {9c8a9553-7b68-4b58-a8f1-3c6b591998c0}) ----------- -The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {021a17d8-9e5e-4dd6-835d-1a3e1ffd6b23}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {d79701ac-1619-42d8-b10f-a55e8e2ab3f1}) ----------- -The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {1f218ad8-652a-4bda-987d-3e183ff040b2}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {bb41de73-31d0-4b21-8f80-14467120aae4}) ----------- -The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {3c967a68-9951-4c9a-b019-79b913e762b6}) ----------- -The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {38064841-6121-4862-a639-08fb0b778511}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {3b543c3a-1fc0-45b5-8c07-600a6045f82e}) - Genauigkeit - - - Angle - The name of the ParamType (ThingClass: venetianBlind, ActionType: angle, ID: {fcb700c4-5da8-4385-85b0-6616e807974e}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: angle, ID: {fcb700c4-5da8-4385-85b0-6616e807974e}) ----------- -The name of the StateType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - Winkel - - - Angle changed - The name of the EventType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - Winkel geändert - - - Close - The name of the ActionType ({2420fcdb-03d3-4edb-aa89-e3b93c7d6d18}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({1111c0ed-69b6-480c-9fd5-15292600d4f4}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({cf5303f1-67c7-4cef-b11c-eb9de6fc8a87}) of ThingClass shutter ----------- -The name of the ActionType ({1c71f050-f6cb-4929-9c9d-7c262f77c143}) of ThingClass venetianBlind ----------- -The name of the ActionType ({97d6351d-7440-47f3-bdba-a31bb15368ac}) of ThingClass extendedBlind ----------- -The name of the ActionType ({86e9cf21-7487-47c4-b4be-4a940d7235fb}) of ThingClass blind ----------- -The name of the ActionType ({53b5ba77-9a34-4cd6-ad24-fb01fc465f98}) of ThingClass awning - Schließen - - - Closing output - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: closingOutput, ID: {e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) ----------- -The name of the StateType ({e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: simpleGaragedoor, EventType: closingOutput, ID: {44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) ----------- -The name of the StateType ({44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) of ThingClass simpleGaragedoor ----------- -The name of the ParamType (ThingClass: shutter, ActionType: closingOutput, ID: {1c35df0e-4c41-455f-893a-0145377952a0}) ----------- -The name of the ParamType (ThingClass: shutter, EventType: closingOutput, ID: {1c35df0e-4c41-455f-893a-0145377952a0}) ----------- -The name of the StateType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, ActionType: closingOutput, ID: {84dd2fa1-85fe-47f3-9e32-e6083432d39c}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: closingOutput, ID: {84dd2fa1-85fe-47f3-9e32-e6083432d39c}) ----------- -The name of the StateType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: closingOutput, ID: {1a4a5839-a30d-4239-a124-63bfdc74a8f6}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: closingOutput, ID: {1a4a5839-a30d-4239-a124-63bfdc74a8f6}) ----------- -The name of the StateType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, ActionType: closingOutput, ID: {9b673430-572d-4a9c-85d3-dafadbe541cd}) ----------- -The name of the ParamType (ThingClass: blind, EventType: closingOutput, ID: {9b673430-572d-4a9c-85d3-dafadbe541cd}) ----------- -The name of the StateType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, ActionType: closingOutput, ID: {59bfd575-709f-4e43-9726-de26e6d4ca8b}) ----------- -The name of the ParamType (ThingClass: awning, EventType: closingOutput, ID: {59bfd575-709f-4e43-9726-de26e6d4ca8b}) ----------- -The name of the StateType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - Ausgang Schließen - - - Closing output changed - The name of the EventType ({e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) of ThingClass simpleGaragedoor ----------- -The name of the EventType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the EventType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the EventType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the EventType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the EventType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - Ausgang Schließen geändert - - - Generic Things - The name of the plugin GenericThings ({b3188696-2585-4806-bf98-30ab576ce5c8}) - Generische Dinge - - - Generic awning - The name of the ThingClass ({9e69585f-90ba-44e4-ad90-5b4bffbe345a}) - Generische Markise - - - Generic blind - The name of the ThingClass ({17ee3657-6ad8-4ae2-8959-3cf66cec8d13}) - Generische Beschattung - - - Generic heating - The name of the ThingClass ({392854c4-3d14-4cf8-96cd-d933526bd197}) - Generische Heizung - - - Generic humidity sensor - The name of the ThingClass ({d295bc64-773c-42a9-83e2-80db5fa0d1ce}) - Generischer Luftfeuchtigkeitssensor - - - Generic irrigation - The name of the ThingClass ({d013b980-20d5-4791-9c4f-b411c39241d7}) - Generische Bewässerung - - - Generic light - The name of the ThingClass ({c50d3216-f307-4f9f-8190-4391510c385c}) - Generisches Licht - - - Generic power socket - The name of the ThingClass ({4e7261af-a27b-4446-8346-914ea59f7547}) - Generische Steckdose - - - Generic power switch - The name of the ThingClass ({57daa147-dd6f-4673-a757-d8f01a2054c7}) - Generischer Schalter - - - Generic shutter - The name of the ThingClass ({7917c2e7-d7d2-4c47-a38d-41f7dd7693d9}) - Gnerische Rollos - - - Generic soil moisture sensor - The name of the ThingClass ({33e610cf-ff30-481b-9f0b-d6857bcd41a5}) - Gnerischer Erdbodenfeuchtesensor - - - Generic temperature sensor - The name of the ThingClass ({cf3d65db-6f68-457b-968c-cfb66cbd5311}) - Gnerischer Temperaturesensor - - - Generic ventilation - The name of the ThingClass ({24af8dd3-ddf0-47f0-bf09-70fdfd8dceab}) - Generische Lüftung - - - Humidity - The name of the ParamType (ThingClass: humiditySensor, EventType: humidity, ID: {925225d9-2965-444a-9c42-63c2873700fb}) ----------- -The name of the StateType ({925225d9-2965-444a-9c42-63c2873700fb}) of ThingClass humiditySensor - Luftfeuchte - - - Humidity changed - The name of the EventType ({925225d9-2965-444a-9c42-63c2873700fb}) of ThingClass humiditySensor - Luftfeuchte geändert - - - Input value - The name of the ParamType (ThingClass: waterLevelSensor, ActionType: input, ID: {d344887d-da5d-4742-83bd-608754b2d0aa}) ----------- -The name of the ParamType (ThingClass: waterLevelSensor, EventType: input, ID: {d344887d-da5d-4742-83bd-608754b2d0aa}) ----------- -The name of the StateType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the ParamType (ThingClass: lightSensor, ActionType: input, ID: {520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) ----------- -The name of the ParamType (ThingClass: lightSensor, EventType: input, ID: {520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) ----------- -The name of the StateType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the ParamType (ThingClass: gasSensor, ActionType: input, ID: {e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) ----------- -The name of the ParamType (ThingClass: gasSensor, EventType: input, ID: {e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) ----------- -The name of the StateType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the ParamType (ThingClass: co2Sensor, ActionType: input, ID: {7dc765f8-fa9b-4199-8f21-49ed452f226d}) ----------- -The name of the ParamType (ThingClass: co2Sensor, EventType: input, ID: {7dc765f8-fa9b-4199-8f21-49ed452f226d}) ----------- -The name of the StateType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the ParamType (ThingClass: coSensor, ActionType: input, ID: {cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) ----------- -The name of the ParamType (ThingClass: coSensor, EventType: input, ID: {cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) ----------- -The name of the StateType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the ParamType (ThingClass: pressureSensor, ActionType: input, ID: {c320577c-371a-442b-ac80-b692ff2064c9}) ----------- -The name of the ParamType (ThingClass: pressureSensor, EventType: input, ID: {c320577c-371a-442b-ac80-b692ff2064c9}) ----------- -The name of the StateType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the ParamType (ThingClass: o2Sensor, ActionType: input, ID: {7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) ----------- -The name of the ParamType (ThingClass: o2Sensor, EventType: input, ID: {7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) ----------- -The name of the StateType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the ParamType (ThingClass: orpSensor, ActionType: input, ID: {020ff04f-a157-4925-9c55-2b45389208fc}) ----------- -The name of the ParamType (ThingClass: orpSensor, EventType: input, ID: {020ff04f-a157-4925-9c55-2b45389208fc}) ----------- -The name of the StateType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the ParamType (ThingClass: phSensor, ActionType: input, ID: {614a039b-9ed9-4b62-9c74-01ba4ac42f16}) ----------- -The name of the ParamType (ThingClass: phSensor, EventType: input, ID: {614a039b-9ed9-4b62-9c74-01ba4ac42f16}) ----------- -The name of the StateType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the ParamType (ThingClass: moistureSensor, ActionType: input, ID: {ce64a425-d990-4fc1-966b-be6de445792b}) ----------- -The name of the ParamType (ThingClass: moistureSensor, EventType: input, ID: {ce64a425-d990-4fc1-966b-be6de445792b}) ----------- -The name of the StateType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the ParamType (ThingClass: humiditySensor, ActionType: input, ID: {a8223e65-e704-4f84-9bbe-d8fc42597047}) ----------- -The name of the ParamType (ThingClass: humiditySensor, EventType: input, ID: {a8223e65-e704-4f84-9bbe-d8fc42597047}) ----------- -The name of the StateType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the ParamType (ThingClass: temperatureSensor, ActionType: input, ID: {fed37466-1264-4ac1-84fd-aff3a1f7ff04}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, EventType: input, ID: {fed37466-1264-4ac1-84fd-aff3a1f7ff04}) ----------- -The name of the StateType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - Eingangswert - - - Input value changed - The name of the EventType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the EventType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the EventType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the EventType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the EventType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the EventType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the EventType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the EventType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the EventType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the EventType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the EventType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the EventType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - Eingangswert geändert - - - Maximum humidity - The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {10afc387-68d1-47ea-a816-0d1acad47b3c}) - Maximale Luftfeuchte - - - Maximum moisture - The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {3426817d-065e-4cfc-aa21-bb434de684d6}) - Maximale Erdbodenfeuchte - - - Maximum temperature - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {85608dd5-7e67-4c98-9e62-b97411681048}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {8b5947ab-127f-4995-853b-eeeb628811e3}) - Maximale Temperatur - - - Minimum humidity - The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {0218ffa9-3d49-4b25-a59f-c8831f190432}) - Minimale Luftfeuchtigkeit - - - Minimum moisture - The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {32153786-f1ae-4aa4-a84c-b9054102eb92}) - Minimale Erdbodenfeuchte - - - Minimum temperature - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {67451c97-50e1-4ea6-ac43-4386fbd26698}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {c86ae5d3-9335-4b6e-8231-bf3ed6670dff}) - Minimale Temperatur - - - Moving - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: moving, ID: {963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) ----------- -The name of the StateType ({963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: moving, ID: {6234c07e-4200-4f2c-8cbd-bff24c38c243}) ----------- -The name of the StateType ({6234c07e-4200-4f2c-8cbd-bff24c38c243}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: moving, ID: {941d1e1f-8dd7-4493-812f-6cefefd88c2e}) ----------- -The name of the StateType ({941d1e1f-8dd7-4493-812f-6cefefd88c2e}) of ThingClass extendedBlind - Bewegung - - - Moving changed - The name of the EventType ({963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({6234c07e-4200-4f2c-8cbd-bff24c38c243}) of ThingClass venetianBlind ----------- -The name of the EventType ({941d1e1f-8dd7-4493-812f-6cefefd88c2e}) of ThingClass extendedBlind - Bewegung geändert - - - Open - The name of the ActionType ({4a3a3b88-47e9-436f-86be-b5955f3fc2f7}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({3edb25af-ad51-495b-9ac9-ab97669339b7}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({9deb662d-2378-4345-a898-8742d41e43c1}) of ThingClass shutter ----------- -The name of the ActionType ({3e728e50-3d45-4035-b215-1e604cf3159b}) of ThingClass venetianBlind ----------- -The name of the ActionType ({5a7599fa-8351-4ed6-9b98-fa2f3be54304}) of ThingClass extendedBlind ----------- -The name of the ActionType ({120dc265-dbbb-4f19-9d31-c372c23479c0}) of ThingClass blind ----------- -The name of the ActionType ({979e9c51-5a93-4635-85e3-01874306b229}) of ThingClass awning - - - - Opening output - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: openingOutput, ID: {ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) ----------- -The name of the StateType ({ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: simpleGaragedoor, EventType: openingOutput, ID: {fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) ----------- -The name of the StateType ({fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) of ThingClass simpleGaragedoor ----------- -The name of the ParamType (ThingClass: shutter, ActionType: openingOutput, ID: {cc547728-b309-4695-b355-49748ef2521c}) ----------- -The name of the ParamType (ThingClass: shutter, EventType: openingOutput, ID: {cc547728-b309-4695-b355-49748ef2521c}) ----------- -The name of the StateType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, ActionType: openingOutput, ID: {6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: openingOutput, ID: {6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) ----------- -The name of the StateType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: openingOutput, ID: {e559f077-e904-4bbc-8ec3-344b814d2eab}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: openingOutput, ID: {e559f077-e904-4bbc-8ec3-344b814d2eab}) ----------- -The name of the StateType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, ActionType: openingOutput, ID: {b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) ----------- -The name of the ParamType (ThingClass: blind, EventType: openingOutput, ID: {b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) ----------- -The name of the StateType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, ActionType: openingOutput, ID: {4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) ----------- -The name of the ParamType (ThingClass: awning, EventType: openingOutput, ID: {4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) ----------- -The name of the StateType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - Öffungsausgang geändert - - - Opening output changed - The name of the EventType ({ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) of ThingClass simpleGaragedoor ----------- -The name of the EventType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the EventType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the EventType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the EventType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the EventType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - Öffnungsausgang geändert - - - Percentage - The name of the ParamType (ThingClass: venetianBlind, ActionType: percentage, ID: {33dc8019-336d-4d50-8d60-dff8508338ca}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: percentage, ID: {33dc8019-336d-4d50-8d60-dff8508338ca}) ----------- -The name of the StateType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: percentage, ID: {181df603-d45f-4d3d-a358-97aa3e4ac0bd}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: percentage, ID: {181df603-d45f-4d3d-a358-97aa3e4ac0bd}) ----------- -The name of the StateType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - Prozent - - - Percentage changed - The name of the EventType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the EventType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - Prozent geändert - - - Power - The name of the ParamType (ThingClass: ventilationFlow, ActionType: power, ID: {adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) ----------- -The name of the ParamType (ThingClass: ventilationFlow, EventType: power, ID: {adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) ----------- -The name of the StateType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the ParamType (ThingClass: ventilation, ActionType: power, ID: {846711b7-ea5a-4c66-a267-001c60406509}) ----------- -The name of the ParamType (ThingClass: ventilation, EventType: power, ID: {846711b7-ea5a-4c66-a267-001c60406509}) ----------- -The name of the StateType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the ParamType (ThingClass: irrigation, ActionType: power, ID: {0212a287-c5ae-4644-8803-adfdd8caeb9a}) ----------- -The name of the ParamType (ThingClass: irrigation, EventType: power, ID: {0212a287-c5ae-4644-8803-adfdd8caeb9a}) ----------- -The name of the StateType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation ----------- -The name of the ParamType (ThingClass: powerSwitch, ActionType: power, ID: {08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) ----------- -The name of the ParamType (ThingClass: powerSwitch, EventType: power, ID: {08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) ----------- -The name of the StateType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch ----------- -The name of the ParamType (ThingClass: heating, ActionType: power, ID: {409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) ----------- -The name of the ParamType (ThingClass: heating, EventType: power, ID: {409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) ----------- -The name of the StateType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the ParamType (ThingClass: light, ActionType: power, ID: {8b6e4a67-6522-408b-b676-8d2f09ed2d54}) ----------- -The name of the ParamType (ThingClass: light, EventType: power, ID: {8b6e4a67-6522-408b-b676-8d2f09ed2d54}) ----------- -The name of the StateType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the ParamType (ThingClass: socket, ActionType: power, ID: {018038d7-1d02-4b17-8fe3-babca044b087}) ----------- -The name of the ParamType (ThingClass: socket, EventType: power, ID: {018038d7-1d02-4b17-8fe3-babca044b087}) ----------- -The name of the StateType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - Eingeschalten - - - Power changed - The name of the EventType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the EventType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the EventType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - Eingeschalten geändert - - - Power on/off - The name of the ActionType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch - Eingeschalten Ein/Aus - - - Powered on/off - The name of the EventType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch - Eingeschalten Ein/Aus - - - Set angle - The name of the ActionType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - Setzte Winkel - - - Set closing output - The name of the ActionType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the ActionType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the ActionType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the ActionType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the ActionType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - Setze Schließausgang - - - Set input value - The name of the ActionType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the ActionType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the ActionType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the ActionType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the ActionType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the ActionType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the ActionType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the ActionType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the ActionType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the ActionType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the ActionType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the ActionType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - Setze Eingangswert - - - Set opening output - The name of the ActionType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the ActionType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the ActionType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the ActionType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the ActionType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - Setze Öffnungsausgang - - - Set percentage - The name of the ActionType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the ActionType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - Setze Prozent - - - Set power - The name of the ActionType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the ActionType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the ActionType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - Setze Eingeschalten - - - Soil moisture - The name of the ParamType (ThingClass: moistureSensor, EventType: moisture, ID: {7a62e1d2-92f2-424c-876c-870478a4b2bd}) ----------- -The name of the StateType ({7a62e1d2-92f2-424c-876c-870478a4b2bd}) of ThingClass moistureSensor - Erdbodenfeuchte - - - Soil moisture changed - The name of the EventType ({7a62e1d2-92f2-424c-876c-870478a4b2bd}) of ThingClass moistureSensor - Erdbodenfeuchte geändert - - - Status - The name of the ParamType (ThingClass: shutter, EventType: status, ID: {6d6e72dc-4d2b-4ec1-82c2-54405a682711}) ----------- -The name of the StateType ({6d6e72dc-4d2b-4ec1-82c2-54405a682711}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: status, ID: {6fb7826e-b6d8-42f8-b712-719496046436}) ----------- -The name of the StateType ({6fb7826e-b6d8-42f8-b712-719496046436}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: status, ID: {c2354d7e-198a-43ae-aa5f-c6710010c7e1}) ----------- -The name of the StateType ({c2354d7e-198a-43ae-aa5f-c6710010c7e1}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, EventType: status, ID: {5fdec1e0-51f6-48b9-b743-ba572504b2c1}) ----------- -The name of the StateType ({5fdec1e0-51f6-48b9-b743-ba572504b2c1}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, EventType: status, ID: {ff6f2565-2a2e-4d34-b10f-d3f73b676399}) ----------- -The name of the StateType ({ff6f2565-2a2e-4d34-b10f-d3f73b676399}) of ThingClass awning - Status - - - Status changed - The name of the EventType ({6d6e72dc-4d2b-4ec1-82c2-54405a682711}) of ThingClass shutter ----------- -The name of the EventType ({6fb7826e-b6d8-42f8-b712-719496046436}) of ThingClass venetianBlind ----------- -The name of the EventType ({c2354d7e-198a-43ae-aa5f-c6710010c7e1}) of ThingClass extendedBlind ----------- -The name of the EventType ({5fdec1e0-51f6-48b9-b743-ba572504b2c1}) of ThingClass blind ----------- -The name of the EventType ({ff6f2565-2a2e-4d34-b10f-d3f73b676399}) of ThingClass awning - Status geändert - - - Stop - The name of the ActionType ({109c3eaf-26a0-4121-8be2-1363253178fd}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({f346766f-44ee-452b-bb9c-e89ec0f56016}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({db5f3332-1f4e-4f9e-84d2-93c5d7de315c}) of ThingClass shutter ----------- -The name of the ActionType ({6e3eeb5d-d7ed-4175-9795-e76451e0a00b}) of ThingClass venetianBlind ----------- -The name of the ActionType ({ab67e4bf-c7b6-489b-9b49-3e0a1c7d33ca}) of ThingClass extendedBlind ----------- -The name of the ActionType ({1a924c9a-5dcb-4b1c-8fd6-ab101098e007}) of ThingClass blind ----------- -The name of the ActionType ({555cafe4-bd12-42c6-bab1-8cd59af6468e}) of ThingClass awning - Stop - - - Temperature - The name of the ParamType (ThingClass: temperatureSensor, EventType: temperature, ID: {d0b6c4be-339e-4b0f-a234-0611b7565395}) ----------- -The name of the StateType ({d0b6c4be-339e-4b0f-a234-0611b7565395}) of ThingClass temperatureSensor - Temperatur - - - Temperature changed - The name of the EventType ({d0b6c4be-339e-4b0f-a234-0611b7565395}) of ThingClass temperatureSensor - Temperatur geändert - - - Turn on or off - The name of the ActionType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the ActionType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the ActionType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation - Schalte ein oder aus - - - Turned on or off - The name of the EventType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the EventType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the EventType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation - Ein- oder Ausgeschalten - - - Venetian blind - The name of the ThingClass ({e6b96ced-8d50-45da-91c8-792d364d2795}) - Jalousie - - - nymea - The name of the vendor ({2062d64d-3232-433c-88bc-0d33c0ba2ba6}) - nymea - - - Energy - The name of the ParamType (ThingClass: smartMeter, EventType: totalEnergyConsumed, ID: {5821edb7-e6cb-4e5a-9d0b-3375126d3367}) ----------- -The name of the StateType ({5821edb7-e6cb-4e5a-9d0b-3375126d3367}) of ThingClass smartMeter - Energie - - - Energy changed - The name of the EventType ({5821edb7-e6cb-4e5a-9d0b-3375126d3367}) of ThingClass smartMeter - Energie geändert - - - Impulse/kWh - The name of the ParamType (ThingClass: smartMeter, Type: settings, ID: {c361732b-68eb-447e-a434-e84031231871}) - Impulse/kWh - - - Impulse input - The name of the ParamType (ThingClass: smartMeter, ActionType: impulseInput, ID: {9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) ----------- -The name of the ParamType (ThingClass: smartMeter, EventType: impulseInput, ID: {9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) ----------- -The name of the StateType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - Impulseingang - - - Impulse input changed - The name of the EventType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - Impulseingang geändert - - - Set impulse input - The name of the ActionType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - Setze Impulseingang - - - Timeframe for power calculation - The name of the ParamType (ThingClass: smartMeter, Type: settings, ID: {73c9acc3-8f76-40d7-a79b-a1f08bb308d4}) - Zeitfenster für Leistungsberechnung - - - Impulse based energy meter - The name of the ThingClass ({c3123967-f741-4fe1-a0d4-9a3e405d7e52}) - Impulsbasierter Energiezähler - - - Angle end to end time [ms] - The name of the ParamType (ThingClass: venetianBlind, Type: settings, ID: {6c8340bf-7fd3-43e3-a75b-dfa2f6426e11}) - Winkel Endlage zu Endlage dauer [ms] - - - Closing duration [ms] - The name of the ParamType (ThingClass: venetianBlind, Type: settings, ID: {4c0bf07d-aaab-4f67-af65-00ceaefbaa84}) ----------- -The name of the ParamType (ThingClass: extendedBlind, Type: settings, ID: {27a95b8d-7f97-441b-a3be-0646c517cb06}) - Schließzeit [ms] - - - Garage door with position control - The name of the ThingClass ({7341e689-4495-4422-851a-3e7c790394b8}) - Garagentor mit Lageeinstellung - - - Generic blind with position control - The name of the ThingClass ({40aa9f3c-a23c-4f7f-8786-fcf3554f3e19}) - Generisches Rollo mit Lageneinstellung - - - Impulse - The name of the ParamType (ThingClass: impulseGaragedooor, EventType: impulse, ID: {5ccaf0aa-01a4-441f-b6ca-18940da096a5}) ----------- -The name of the StateType ({5ccaf0aa-01a4-441f-b6ca-18940da096a5}) of ThingClass impulseGaragedooor - Impuls - - - Impulse based garage door - The name of the ThingClass ({d6699a12-f4a6-4c50-951c-f4f1cd0501dc}) - Impulsgesteuertes Garagentor - - - Impulse changed - The name of the EventType ({5ccaf0aa-01a4-441f-b6ca-18940da096a5}) of ThingClass impulseGaragedooor - Impuls geändert - - - Impulse duration - The name of the ParamType (ThingClass: impulseGaragedooor, Type: settings, ID: {962b356c-e975-4d33-b114-10f655eaf74c}) - Impulsdauer - - - Open position - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, ActionType: percentage, ID: {f9244c14-0bc9-49ce-90a5-437e66245594}) ----------- -The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: percentage, ID: {f9244c14-0bc9-49ce-90a5-437e66245594}) ----------- -The name of the StateType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - Position offen - - - Open position changed - The name of the EventType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - Position offen geändert - - - Opening duration [ms] - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, Type: settings, ID: {04fb7724-a870-4df9-a79e-fab693931238}) - Öffnungsdauer [ms] - - - Operate - The name of the ActionType ({ff5461c6-70fc-435e-8424-96fa59ed321e}) of ThingClass impulseGaragedooor - Betätigen - - - Set open position - The name of the ActionType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - Setze Position offen - - - Simple garage door - The name of the ThingClass ({572403b1-bc22-4620-8170-53147a546033}) - Einfaches Garagentor - - - State - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: state, ID: {0cc74edb-7116-47cf-953a-409933f26557}) ----------- -The name of the StateType ({0cc74edb-7116-47cf-953a-409933f26557}) of ThingClass extendedStatefulGaragedoor - Status - - - State changed - The name of the EventType ({0cc74edb-7116-47cf-953a-409933f26557}) of ThingClass extendedStatefulGaragedoor - Status geändert - - - CO2 - The name of the ParamType (ThingClass: co2Sensor, EventType: co2, ID: {755c4c7f-093e-41dd-a38d-9ee18c9890d6}) ----------- -The name of the StateType ({755c4c7f-093e-41dd-a38d-9ee18c9890d6}) of ThingClass co2Sensor - CO2 - - - CO2 changed - The name of the EventType ({755c4c7f-093e-41dd-a38d-9ee18c9890d6}) of ThingClass co2Sensor - CO2 geändert - - - Generic CO2 sensor - The name of the ThingClass ({a58a2dae-4148-4a4d-ab34-2a11124454a0}) - Generischer CO2-Sensor - - - Generic pressure sensor - The name of the ThingClass ({9a8d804b-d1dc-450a-8c41-be491e5cdda0}) - Generischer Drucksensor - - - Maximum CO2 - The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {a3029bee-8b13-4aed-8ebd-eaceb603f8ef}) - Maximum CO2 - - - Maximum pressure - The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {06e21251-8b4f-44a1-8504-6b51f8526bd0}) - Maximaldruck - - - Minimum CO2 - The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {a0d8a6ec-599a-4ded-ae03-2950561f0b72}) - Minimum CO2 - - - Minimum pressure - The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {035e2619-f9c2-4e8f-95dd-f124ad9402d0}) - Minimaldruck - - - Pressure - The name of the ParamType (ThingClass: pressureSensor, EventType: pressure, ID: {e645a979-1465-4592-b8b0-f4c123db0800}) ----------- -The name of the StateType ({e645a979-1465-4592-b8b0-f4c123db0800}) of ThingClass pressureSensor - Druck - - - Pressure changed - The name of the EventType ({e645a979-1465-4592-b8b0-f4c123db0800}) of ThingClass pressureSensor - Druck geändert - - - Generic thermostat - The name of the ThingClass ({6a34ba99-e5ec-4fc9-a61f-695ed8573fa1}) - Generisches Thermostat - - - Set target temperature - The name of the ActionType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - Setze Zieltemperatur - - - Target temperature - The name of the ParamType (ThingClass: thermostat, ActionType: targetTemperature, ID: {60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: targetTemperature, ID: {60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) ----------- -The name of the StateType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - Zieltemperatur - - - Target temperature changed - The name of the EventType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - Zieltemperature geändert - - - Set temperature sensor input - The name of the ActionType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - Setze Temperatursensoreingang - - - Temperature difference - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {64bf308f-a543-4e02-b787-1a1714c1f978}) - Temperaturdifferenz - - - Temperature sensor input - The name of the ParamType (ThingClass: thermostat, ActionType: temperature, ID: {0f808803-0e63-47df-b024-9685998ba663}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: temperature, ID: {0f808803-0e63-47df-b024-9685998ba663}) ----------- -The name of the StateType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - Temperatursensoreingang - - - Temperature sensor input changed - The name of the EventType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - Temperatursensoreingang geändert - - - Operating mode - The name of the ParamType (ThingClass: sgReady, ActionType: operatingMode, ID: {85667640-d719-4be4-a5fa-e41193eea162}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: operatingMode, ID: {85667640-d719-4be4-a5fa-e41193eea162}) ----------- -The name of the StateType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - Betriebszustand - - - Operating mode changed - The name of the EventType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - Betriebszustand geändert - - - Operating mode description - The name of the ParamType (ThingClass: sgReady, EventType: operatingModeDescription, ID: {b421d098-f6e9-40e2-b536-58acdb3a49fe}) ----------- -The name of the StateType ({b421d098-f6e9-40e2-b536-58acdb3a49fe}) of ThingClass sgReady - Betriebszustandsbeschreibung - - - Operating mode description changed - The name of the EventType ({b421d098-f6e9-40e2-b536-58acdb3a49fe}) of ThingClass sgReady - Betriebszustandsbeschreibung geändert - - - Relay 1 - The name of the ParamType (ThingClass: sgReady, ActionType: relay1, ID: {d080466e-7271-441f-9916-1199a6668545}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: relay1, ID: {d080466e-7271-441f-9916-1199a6668545}) ----------- -The name of the StateType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - Relais 1 - - - Relay 1 changed - The name of the EventType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - Relais 1 geändert - - - Relay 2 - The name of the ParamType (ThingClass: sgReady, ActionType: relay2, ID: {caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: relay2, ID: {caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) ----------- -The name of the StateType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - Relais 2 - - - Relay 2 changed - The name of the EventType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - Relais 2 geändert - - - SG-Ready - The name of the ThingClass ({83cf138d-02dc-4015-9b03-6360c2f3cfb1}) - SG-Ready - - - Set operating mode - The name of the ActionType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - Setze Betriebszustand - - - Set relay 1 - The name of the ActionType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - Setze Relais 1 - - - Set relay 2 - The name of the ActionType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - Setze Relais 2 - - - Closed - The name of the ParamType (ThingClass: doorSensor, ActionType: closed, ID: {7f5fdc2b-7916-4e90-9c24-558162304f71}) ----------- -The name of the ParamType (ThingClass: doorSensor, EventType: closed, ID: {7f5fdc2b-7916-4e90-9c24-558162304f71}) ----------- -The name of the StateType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - Geschlossen - - - Set open or closed - The name of the ActionType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - Setze offen oder geschlossen - - - Generic light sensor - The name of the ThingClass ({d4d873fd-f0fc-433f-b615-91c1506a1890}) - Generischer Lichtsensor - - - Light intensity - The name of the ParamType (ThingClass: lightSensor, EventType: lightIntensity, ID: {fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) ----------- -The name of the StateType ({fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) of ThingClass lightSensor - Helligkeit - - - Light intensity changed - The name of the EventType ({fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) of ThingClass lightSensor - Helligkeit geändert - - - Maximum Lux - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {7fe74404-d7f0-41af-a8d4-dd1bda27f752}) - Höchster Lux-Wert - - - Minimum Lux - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {6dea7384-b079-443b-8cc2-1479138fa212}) - Tiefster Lux-Wert - - - Cooler on/off - The name of the ParamType (ThingClass: cooling, ActionType: power, ID: {918cfd2c-6692-4faa-acc6-18ebf93611ec}) ----------- -The name of the ParamType (ThingClass: cooling, EventType: power, ID: {918cfd2c-6692-4faa-acc6-18ebf93611ec}) ----------- -The name of the StateType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - Kühlung an/aus - - - Cooler turned on/off - The name of the EventType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - Kühlung ein- oder ausgeschaltet - - - Cooling On/off - The name of the ParamType (ThingClass: thermostat, ActionType: coolingOn, ID: {cab7d4bd-f612-4d12-b3a4-0649e189810f}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: coolingOn, ID: {cab7d4bd-f612-4d12-b3a4-0649e189810f}) ----------- -The name of the StateType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - Kühlung ein/aus - - - Cooling turned on/off - The name of the EventType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - Kühlung ein- oder ausgeschaltet - - - Generic cooler - The name of the ThingClass ({09edbc07-d382-48a4-9b16-99992014aff9}) - Generische Kühlung - - - Generic presence sensor - The name of the ThingClass ({339a0c54-4086-404f-8d36-bcf20621b785}) - Generischer Anwesenheitssensor - - - Heating On/off - The name of the ParamType (ThingClass: thermostat, ActionType: heatingOn, ID: {1f6a0c39-4417-4e31-86db-9926cf81c345}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: heatingOn, ID: {1f6a0c39-4417-4e31-86db-9926cf81c345}) ----------- -The name of the StateType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - Heizung ein/aus - - - Heating turned on/off - The name of the EventType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - Heizung ein- oder ausgeschaltet - - - Last seen time - The name of the ParamType (ThingClass: presenceSensor, EventType: lastSeenTime, ID: {be4842cb-140c-425f-9630-8bb19fdb943e}) ----------- -The name of the StateType ({be4842cb-140c-425f-9630-8bb19fdb943e}) of ThingClass presenceSensor - Zuletzt gesehen - - - Last seen time changed - The name of the EventType ({be4842cb-140c-425f-9630-8bb19fdb943e}) of ThingClass presenceSensor - Zuletzt gesehen geändert - - - Presence detected - The name of the ParamType (ThingClass: presenceSensor, ActionType: isPresent, ID: {22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) ----------- -The name of the ParamType (ThingClass: presenceSensor, EventType: isPresent, ID: {22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) ----------- -The name of the StateType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - Anwesenheit erkannt - - - Presense changed - The name of the EventType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - Anwesenheit geändert - - - Set presence - The name of the ActionType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - Setze Anwesenheit - - - Turn cooler on/off - The name of the ActionType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - Kühlung ein- oder ausschalten - - - Turn cooling on/off - The name of the ActionType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - Kühlung ein- oder ausschalten - - - Turn heating on/off - The name of the ActionType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - Heizung ein- oder ausschalten - - - Opened or closed - The name of the EventType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - Geöffnet oder geschlossen - - - Battery critical - The name of the ParamType (ThingClass: battery, EventType: batteryCritical, ID: {e95dc037-002d-40a2-8c15-cd5489bd354a}) ----------- -The name of the StateType ({e95dc037-002d-40a2-8c15-cd5489bd354a}) of ThingClass battery - Batterieladung kritisch - - - Battery level - The name of the ParamType (ThingClass: car, ActionType: batteryLevel, ID: {3f1cca10-8988-4ec6-b937-0775653cde12}) ----------- -The name of the ParamType (ThingClass: car, EventType: batteryLevel, ID: {3f1cca10-8988-4ec6-b937-0775653cde12}) ----------- -The name of the StateType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the ParamType (ThingClass: battery, EventType: batteryLevel, ID: {d37eed4a-befc-40d4-b435-40a761f99314}) ----------- -The name of the StateType ({d37eed4a-befc-40d4-b435-40a761f99314}) of ThingClass battery - Batterieladung - - - Battery level changed - The name of the EventType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the EventType ({d37eed4a-befc-40d4-b435-40a761f99314}) of ThingClass battery - Batterieladung geändert - - - Battery level control - The name of the ParamType (ThingClass: battery, ActionType: batteryLevelControl, ID: {3336f0c2-158b-4353-b74f-f1bb9c4e8447}) ----------- -The name of the ParamType (ThingClass: battery, EventType: batteryLevelControl, ID: {3336f0c2-158b-4353-b74f-f1bb9c4e8447}) ----------- -The name of the StateType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - Batterieladungssteuerung - - - Battery level control changed - The name of the EventType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - Batterieladungssteuerung geändert - - - Charging - The name of the ParamType (ThingClass: battery, ActionType: charging, ID: {a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) ----------- -The name of the ParamType (ThingClass: battery, EventType: charging, ID: {a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) ----------- -The name of the StateType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - Ladend - - - Generic battery - The name of the ThingClass ({81418556-cae3-4803-aa0c-9c4b3304a3eb}) - Generische Batterie - - - Critical battery level - The name of the ParamType (ThingClass: battery, Type: settings, ID: {8d875cb7-3a14-42d1-bf1b-759e5fd95a8f}) - Kritischer Batteriewert - - - Battery entered or left critical state - The name of the EventType ({d33982d6-6467-4281-b448-68c1b1db088d}) of ThingClass car ----------- -The name of the EventType ({e95dc037-002d-40a2-8c15-cd5489bd354a}) of ThingClass battery - Batterieladung kritisch geändert - - - Charging started or stopped - The name of the EventType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - Laden gestartet oder beendet - - - Set battery level - The name of the ActionType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the ActionType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - Setze Batterieladung - - - Set charging - The name of the ActionType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - Setze Laden - - - Analog input - The name of the ParamType (ThingClass: generic, ActionType: analogInput, ID: {810fcd3c-7854-4bb1-82f6-1403ba54875e}) ----------- -The name of the ParamType (ThingClass: generic, EventType: analogInput, ID: {810fcd3c-7854-4bb1-82f6-1403ba54875e}) ----------- -The name of the StateType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - Analoger Eingang - - - Analog input changed - The name of the EventType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - Analoger Eingang geändert - - - Analog output - The name of the ParamType (ThingClass: generic, ActionType: analogOutput, ID: {de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) ----------- -The name of the ParamType (ThingClass: generic, EventType: analogOutput, ID: {de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) ----------- -The name of the StateType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - Analoger Ausgang - - - Analog output changed - The name of the EventType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - Analoger Ausgang geändret - - - Digital input - The name of the ParamType (ThingClass: generic, ActionType: digitalInput, ID: {3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) ----------- -The name of the ParamType (ThingClass: generic, EventType: digitalInput, ID: {3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) ----------- -The name of the StateType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - Digitaler Eingang - - - Digital input changed - The name of the EventType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - Digitaler Eingang geändert - - - Digital output - The name of the ParamType (ThingClass: generic, ActionType: digitalOutput, ID: {605b4d8e-71a7-441e-900a-e07c305acd93}) ----------- -The name of the ParamType (ThingClass: generic, EventType: digitalOutput, ID: {605b4d8e-71a7-441e-900a-e07c305acd93}) ----------- -The name of the StateType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - Digitaler Ausgang - - - Digital output changed - The name of the EventType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - Digitaler Ausgang geändert - - - Generic thing - The name of the ThingClass ({f5c02d35-b06e-4950-8238-847d50cabfdf}) - Generisches "Thing" - - - Set analog input - The name of the ActionType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - Setze Analogen Eingang - - - Set analog output - The name of the ActionType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - Setze analogen Ausgang - - - Set digital input - The name of the ActionType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - Setze digitalen Eingang - - - Set digital output - The name of the ActionType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - Setze digitalen Ausgang - - - Set string state - The name of the ActionType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - Setze Zeichenkette - - - String state - The name of the ParamType (ThingClass: generic, ActionType: stringState, ID: {f477e227-0d2d-4d88-a545-7dedf36266d5}) ----------- -The name of the ParamType (ThingClass: generic, EventType: stringState, ID: {f477e227-0d2d-4d88-a545-7dedf36266d5}) ----------- -The name of the StateType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - Zeichenkette - - - String state changed - The name of the EventType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - Zeichenkette geändert - - - Air flow rate - The name of the ParamType (ThingClass: ventilationFlow, ActionType: flowRate, ID: {5a273bba-0bef-49fb-870a-7f2df8fc14b6}) ----------- -The name of the ParamType (ThingClass: ventilationFlow, EventType: flowRate, ID: {5a273bba-0bef-49fb-870a-7f2df8fc14b6}) ----------- -The name of the StateType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - Luftfluß - - - Air flow rate changed - The name of the EventType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - Luftfluß geändert - - - Generic ventilation with flow control - The name of the ThingClass ({a7eec5f7-3cc3-4edb-baa7-1f6b6f935bf8}) - Generische Lüftung mit Luftfluß-Regelung - - - Set air flow rate - The name of the ActionType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - Luftfluß ändern - - - CO level - The name of the ParamType (ThingClass: coSensor, EventType: co, ID: {9eebe9d2-b34b-4847-bc25-109e2b8cab24}) ----------- -The name of the StateType ({9eebe9d2-b34b-4847-bc25-109e2b8cab24}) of ThingClass coSensor - CO Wert - - - CO level changed - The name of the EventType ({9eebe9d2-b34b-4847-bc25-109e2b8cab24}) of ThingClass coSensor - CO Wert geändert - - - Current Power usage - The name of the ParamType (ThingClass: smartMeter, EventType: currentPower, ID: {5983d714-5f80-42d8-bee2-9228b6382b3b}) ----------- -The name of the StateType ({5983d714-5f80-42d8-bee2-9228b6382b3b}) of ThingClass smartMeter - Aktueller Energieverbrauch - - - Current Power usage changed - The name of the EventType ({5983d714-5f80-42d8-bee2-9228b6382b3b}) of ThingClass smartMeter - Aktueller Energieverbrauch geändert - - - Gas level - The name of the ParamType (ThingClass: gasSensor, EventType: gas, ID: {5135648f-57b7-44b0-b9d0-c5accad09356}) ----------- -The name of the StateType ({5135648f-57b7-44b0-b9d0-c5accad09356}) of ThingClass gasSensor - Gaswert - - - Gas level changed - The name of the EventType ({5135648f-57b7-44b0-b9d0-c5accad09356}) of ThingClass gasSensor - Gaswert geändert - - - Generic CO sensor - The name of the ThingClass ({262a29b2-b5df-4ee2-822c-e672f50d97b6}) - Generischer CO Sensor - - - Generic O2 sensor - The name of the ThingClass ({a8cf20ec-132b-4f6f-b5ec-73dc2f873b43}) - Generischer O2 Sensor - - - Generic ORP sensor - The name of the ThingClass ({3edeec39-ab9d-4697-90cc-0bba089384cf}) - Generischer ORP Sensor - - - Generic flammable gas sensor - The name of the ThingClass ({25c6725f-5c15-485b-9ec4-cb0e11ab6b32}) - Generischer Sensor für entflammbare Gase - - - Gerneric water sensor - The name of the ThingClass ({09b9cb86-f551-4efe-9a7d-2f7624e9510f}) - Generischer Wassersensor - - - Maximum CO - The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {e9def195-1b67-4a1b-8030-cbbc6209d52e}) - Maximaler CO Wert - - - Maximum input ORP value - The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {bd0774c9-1b89-49ce-b0f8-66ff26ca10db}) - Minimaler ORP Eingangswert - - - Maximum input value - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {4e228f9b-8631-4643-8375-3d8d76d12e9c}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {198847f6-a188-42b0-9e0b-15587eaabbed}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {a8889e45-59e5-4cc4-b228-611f8f19f531}) - Maximaler Eingangswert - - - Maximum value - The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {51f4a830-3ef9-4fa2-b36b-5976f724f8a1}) - Maximaler Wert - - - Minimum CO - The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {e850b044-fd70-446c-a943-3c88407425f5}) - Minimaler CO Wert - - - Minimum input value - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {16ea3cf2-46fd-40a3-88bf-21a2bb7cbabe}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {58e84041-d451-44a2-972e-13a79b449b58}) ----------- -The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {396bf3f9-a3fc-44c3-90f8-b316670116a7}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {a8ff2e16-e06c-4b1e-839a-a06691a12d64}) - Minimaler Eingangswert - - - Minimum value - The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {480945ea-6262-408d-b799-cbff905a40db}) - Minimaler Wert - - - O2 saturation - The name of the ParamType (ThingClass: o2Sensor, EventType: o2saturation, ID: {a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) ----------- -The name of the StateType ({a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) of ThingClass o2Sensor - O2 Sättigung - - - O2 saturation changed - The name of the EventType ({a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) of ThingClass o2Sensor - O2 Sättigung geändert - - - ORP - The name of the ParamType (ThingClass: orpSensor, EventType: orp, ID: {e5ed3535-2e5d-412e-85f8-782cbccd7731}) ----------- -The name of the StateType ({e5ed3535-2e5d-412e-85f8-782cbccd7731}) of ThingClass orpSensor - ORP - - - ORP changed - The name of the EventType ({e5ed3535-2e5d-412e-85f8-782cbccd7731}) of ThingClass orpSensor - ORP Wert geändert - - - PH - The name of the ParamType (ThingClass: phSensor, EventType: ph, ID: {743514b1-8018-4525-b87a-c5f414146ff2}) ----------- -The name of the StateType ({743514b1-8018-4525-b87a-c5f414146ff2}) of ThingClass phSensor - PH - - - PH changed - The name of the EventType ({743514b1-8018-4525-b87a-c5f414146ff2}) of ThingClass phSensor - PH Wert geändert - - - PH sensor - The name of the ThingClass ({e2934fa1-59c3-4de8-82f2-66181136085c}) - PH Sensor - - - Set water detected - The name of the ActionType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor - Setze Wasser erkannt - - - Water detected - The name of the ParamType (ThingClass: waterSensor, ActionType: waterDetected, ID: {b2427b85-1f62-4635-b546-1961191426ef}) ----------- -The name of the ParamType (ThingClass: waterSensor, EventType: waterDetected, ID: {b2427b85-1f62-4635-b546-1961191426ef}) ----------- -The name of the EventType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor ----------- -The name of the StateType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor - Wasser erkannt - - - Battery level critical - The name of the ParamType (ThingClass: car, EventType: batteryCritical, ID: {d33982d6-6467-4281-b448-68c1b1db088d}) ----------- -The name of the StateType ({d33982d6-6467-4281-b448-68c1b1db088d}) of ThingClass car - Batterieladung kritisch - - - Capacity - The name of the ParamType (ThingClass: car, ActionType: capacity, ID: {363a2a39-61b6-4109-9cd9-aca7367d12c7}) ----------- -The name of the ParamType (ThingClass: car, EventType: capacity, ID: {363a2a39-61b6-4109-9cd9-aca7367d12c7}) ----------- -The name of the StateType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - Kapazität - - - Capacity changed - The name of the EventType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - Kapazität geändert - - - Generic electric car - The name of the ThingClass ({dbe0a9ff-94ba-4a94-ae52-51da3f05c717}) - Generisches Elektroauto - - - Set capacity - The name of the ActionType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - Setze Kapazität - - - Generic door or window sensor - The name of the ThingClass ({2d936f56-48ee-4be1-9b3e-28a335ad8085}) - Generischer Tür- oder Fenstersensor - - - Generic water level sensor - The name of the ThingClass ({f1576df0-fb45-4bf0-89fa-a83c4118c326}) - - - - Tank capactity - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {5e98e8d2-d849-46c5-b25a-d54f184ea4c7}) - - - - Water level - The name of the ParamType (ThingClass: waterLevelSensor, EventType: waterLevel, ID: {07563165-e42d-4d0f-ac60-31cdd19170f2}) ----------- -The name of the StateType ({07563165-e42d-4d0f-ac60-31cdd19170f2}) of ThingClass waterLevelSensor - - - - Water level changed - The name of the EventType ({07563165-e42d-4d0f-ac60-31cdd19170f2}) of ThingClass waterLevelSensor - - - - - IntegrationPluginGenericThings - - Invalid closing or angle time - Ungültige Schließ- oder Winkelstellzeit - - - diff --git a/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-en_US.ts b/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-en_US.ts deleted file mode 100644 index 0a2046ca..00000000 --- a/genericthings/translations/b3188696-2585-4806-bf98-30ab576ce5c8-en_US.ts +++ /dev/null @@ -1,1590 +0,0 @@ - - - - - GenericThings - - Accuracy (decimal places) - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {f800988f-1ad5-4ffb-9aa8-70ef17614966}) ----------- -The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {1c7465b1-490d-43db-bb67-a179a6923a57}) ----------- -The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {236831a8-a455-4e38-a9cd-eabbebaa3f67}) ----------- -The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {9c8a9553-7b68-4b58-a8f1-3c6b591998c0}) ----------- -The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {021a17d8-9e5e-4dd6-835d-1a3e1ffd6b23}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {d79701ac-1619-42d8-b10f-a55e8e2ab3f1}) ----------- -The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {1f218ad8-652a-4bda-987d-3e183ff040b2}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {bb41de73-31d0-4b21-8f80-14467120aae4}) ----------- -The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {3c967a68-9951-4c9a-b019-79b913e762b6}) ----------- -The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {38064841-6121-4862-a639-08fb0b778511}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {3b543c3a-1fc0-45b5-8c07-600a6045f82e}) - - - - Angle - The name of the ParamType (ThingClass: venetianBlind, ActionType: angle, ID: {fcb700c4-5da8-4385-85b0-6616e807974e}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: angle, ID: {fcb700c4-5da8-4385-85b0-6616e807974e}) ----------- -The name of the StateType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - - - - Angle changed - The name of the EventType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - - - - Close - The name of the ActionType ({2420fcdb-03d3-4edb-aa89-e3b93c7d6d18}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({1111c0ed-69b6-480c-9fd5-15292600d4f4}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({cf5303f1-67c7-4cef-b11c-eb9de6fc8a87}) of ThingClass shutter ----------- -The name of the ActionType ({1c71f050-f6cb-4929-9c9d-7c262f77c143}) of ThingClass venetianBlind ----------- -The name of the ActionType ({97d6351d-7440-47f3-bdba-a31bb15368ac}) of ThingClass extendedBlind ----------- -The name of the ActionType ({86e9cf21-7487-47c4-b4be-4a940d7235fb}) of ThingClass blind ----------- -The name of the ActionType ({53b5ba77-9a34-4cd6-ad24-fb01fc465f98}) of ThingClass awning - - - - Closing output - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: closingOutput, ID: {e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) ----------- -The name of the StateType ({e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: simpleGaragedoor, EventType: closingOutput, ID: {44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) ----------- -The name of the StateType ({44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) of ThingClass simpleGaragedoor ----------- -The name of the ParamType (ThingClass: shutter, ActionType: closingOutput, ID: {1c35df0e-4c41-455f-893a-0145377952a0}) ----------- -The name of the ParamType (ThingClass: shutter, EventType: closingOutput, ID: {1c35df0e-4c41-455f-893a-0145377952a0}) ----------- -The name of the StateType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, ActionType: closingOutput, ID: {84dd2fa1-85fe-47f3-9e32-e6083432d39c}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: closingOutput, ID: {84dd2fa1-85fe-47f3-9e32-e6083432d39c}) ----------- -The name of the StateType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: closingOutput, ID: {1a4a5839-a30d-4239-a124-63bfdc74a8f6}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: closingOutput, ID: {1a4a5839-a30d-4239-a124-63bfdc74a8f6}) ----------- -The name of the StateType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, ActionType: closingOutput, ID: {9b673430-572d-4a9c-85d3-dafadbe541cd}) ----------- -The name of the ParamType (ThingClass: blind, EventType: closingOutput, ID: {9b673430-572d-4a9c-85d3-dafadbe541cd}) ----------- -The name of the StateType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, ActionType: closingOutput, ID: {59bfd575-709f-4e43-9726-de26e6d4ca8b}) ----------- -The name of the ParamType (ThingClass: awning, EventType: closingOutput, ID: {59bfd575-709f-4e43-9726-de26e6d4ca8b}) ----------- -The name of the StateType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - - - - Closing output changed - The name of the EventType ({e1c14bcd-6131-494b-8dd1-46738e9c8f5e}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({44ef060a-e6fc-4f33-84d2-b24ac7d31ff1}) of ThingClass simpleGaragedoor ----------- -The name of the EventType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the EventType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the EventType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the EventType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the EventType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - - - - Generic Things - The name of the plugin GenericThings ({b3188696-2585-4806-bf98-30ab576ce5c8}) - - - - Generic awning - The name of the ThingClass ({9e69585f-90ba-44e4-ad90-5b4bffbe345a}) - - - - Generic blind - The name of the ThingClass ({17ee3657-6ad8-4ae2-8959-3cf66cec8d13}) - - - - Generic heating - The name of the ThingClass ({392854c4-3d14-4cf8-96cd-d933526bd197}) - - - - Generic humidity sensor - The name of the ThingClass ({d295bc64-773c-42a9-83e2-80db5fa0d1ce}) - - - - Generic irrigation - The name of the ThingClass ({d013b980-20d5-4791-9c4f-b411c39241d7}) - - - - Generic light - The name of the ThingClass ({c50d3216-f307-4f9f-8190-4391510c385c}) - - - - Generic power socket - The name of the ThingClass ({4e7261af-a27b-4446-8346-914ea59f7547}) - - - - Generic power switch - The name of the ThingClass ({57daa147-dd6f-4673-a757-d8f01a2054c7}) - - - - Generic shutter - The name of the ThingClass ({7917c2e7-d7d2-4c47-a38d-41f7dd7693d9}) - - - - Generic soil moisture sensor - The name of the ThingClass ({33e610cf-ff30-481b-9f0b-d6857bcd41a5}) - - - - Generic temperature sensor - The name of the ThingClass ({cf3d65db-6f68-457b-968c-cfb66cbd5311}) - - - - Generic ventilation - The name of the ThingClass ({24af8dd3-ddf0-47f0-bf09-70fdfd8dceab}) - - - - Humidity - The name of the ParamType (ThingClass: humiditySensor, EventType: humidity, ID: {925225d9-2965-444a-9c42-63c2873700fb}) ----------- -The name of the StateType ({925225d9-2965-444a-9c42-63c2873700fb}) of ThingClass humiditySensor - - - - Humidity changed - The name of the EventType ({925225d9-2965-444a-9c42-63c2873700fb}) of ThingClass humiditySensor - - - - Input value - The name of the ParamType (ThingClass: waterLevelSensor, ActionType: input, ID: {d344887d-da5d-4742-83bd-608754b2d0aa}) ----------- -The name of the ParamType (ThingClass: waterLevelSensor, EventType: input, ID: {d344887d-da5d-4742-83bd-608754b2d0aa}) ----------- -The name of the StateType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the ParamType (ThingClass: lightSensor, ActionType: input, ID: {520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) ----------- -The name of the ParamType (ThingClass: lightSensor, EventType: input, ID: {520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) ----------- -The name of the StateType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the ParamType (ThingClass: gasSensor, ActionType: input, ID: {e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) ----------- -The name of the ParamType (ThingClass: gasSensor, EventType: input, ID: {e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) ----------- -The name of the StateType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the ParamType (ThingClass: co2Sensor, ActionType: input, ID: {7dc765f8-fa9b-4199-8f21-49ed452f226d}) ----------- -The name of the ParamType (ThingClass: co2Sensor, EventType: input, ID: {7dc765f8-fa9b-4199-8f21-49ed452f226d}) ----------- -The name of the StateType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the ParamType (ThingClass: coSensor, ActionType: input, ID: {cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) ----------- -The name of the ParamType (ThingClass: coSensor, EventType: input, ID: {cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) ----------- -The name of the StateType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the ParamType (ThingClass: pressureSensor, ActionType: input, ID: {c320577c-371a-442b-ac80-b692ff2064c9}) ----------- -The name of the ParamType (ThingClass: pressureSensor, EventType: input, ID: {c320577c-371a-442b-ac80-b692ff2064c9}) ----------- -The name of the StateType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the ParamType (ThingClass: o2Sensor, ActionType: input, ID: {7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) ----------- -The name of the ParamType (ThingClass: o2Sensor, EventType: input, ID: {7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) ----------- -The name of the StateType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the ParamType (ThingClass: orpSensor, ActionType: input, ID: {020ff04f-a157-4925-9c55-2b45389208fc}) ----------- -The name of the ParamType (ThingClass: orpSensor, EventType: input, ID: {020ff04f-a157-4925-9c55-2b45389208fc}) ----------- -The name of the StateType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the ParamType (ThingClass: phSensor, ActionType: input, ID: {614a039b-9ed9-4b62-9c74-01ba4ac42f16}) ----------- -The name of the ParamType (ThingClass: phSensor, EventType: input, ID: {614a039b-9ed9-4b62-9c74-01ba4ac42f16}) ----------- -The name of the StateType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the ParamType (ThingClass: moistureSensor, ActionType: input, ID: {ce64a425-d990-4fc1-966b-be6de445792b}) ----------- -The name of the ParamType (ThingClass: moistureSensor, EventType: input, ID: {ce64a425-d990-4fc1-966b-be6de445792b}) ----------- -The name of the StateType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the ParamType (ThingClass: humiditySensor, ActionType: input, ID: {a8223e65-e704-4f84-9bbe-d8fc42597047}) ----------- -The name of the ParamType (ThingClass: humiditySensor, EventType: input, ID: {a8223e65-e704-4f84-9bbe-d8fc42597047}) ----------- -The name of the StateType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the ParamType (ThingClass: temperatureSensor, ActionType: input, ID: {fed37466-1264-4ac1-84fd-aff3a1f7ff04}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, EventType: input, ID: {fed37466-1264-4ac1-84fd-aff3a1f7ff04}) ----------- -The name of the StateType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - - - - Input value changed - The name of the EventType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the EventType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the EventType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the EventType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the EventType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the EventType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the EventType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the EventType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the EventType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the EventType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the EventType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the EventType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - - - - Maximum humidity - The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {10afc387-68d1-47ea-a816-0d1acad47b3c}) - - - - Maximum moisture - The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {3426817d-065e-4cfc-aa21-bb434de684d6}) - - - - Maximum temperature - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {85608dd5-7e67-4c98-9e62-b97411681048}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {8b5947ab-127f-4995-853b-eeeb628811e3}) - - - - Minimum humidity - The name of the ParamType (ThingClass: humiditySensor, Type: settings, ID: {0218ffa9-3d49-4b25-a59f-c8831f190432}) - - - - Minimum moisture - The name of the ParamType (ThingClass: moistureSensor, Type: settings, ID: {32153786-f1ae-4aa4-a84c-b9054102eb92}) - - - - Minimum temperature - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {67451c97-50e1-4ea6-ac43-4386fbd26698}) ----------- -The name of the ParamType (ThingClass: temperatureSensor, Type: settings, ID: {c86ae5d3-9335-4b6e-8231-bf3ed6670dff}) - - - - Moving - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: moving, ID: {963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) ----------- -The name of the StateType ({963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: moving, ID: {6234c07e-4200-4f2c-8cbd-bff24c38c243}) ----------- -The name of the StateType ({6234c07e-4200-4f2c-8cbd-bff24c38c243}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: moving, ID: {941d1e1f-8dd7-4493-812f-6cefefd88c2e}) ----------- -The name of the StateType ({941d1e1f-8dd7-4493-812f-6cefefd88c2e}) of ThingClass extendedBlind - - - - Moving changed - The name of the EventType ({963bed3d-2ccb-4dd0-b609-c7e9f25d32d6}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({6234c07e-4200-4f2c-8cbd-bff24c38c243}) of ThingClass venetianBlind ----------- -The name of the EventType ({941d1e1f-8dd7-4493-812f-6cefefd88c2e}) of ThingClass extendedBlind - - - - Open - The name of the ActionType ({4a3a3b88-47e9-436f-86be-b5955f3fc2f7}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({3edb25af-ad51-495b-9ac9-ab97669339b7}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({9deb662d-2378-4345-a898-8742d41e43c1}) of ThingClass shutter ----------- -The name of the ActionType ({3e728e50-3d45-4035-b215-1e604cf3159b}) of ThingClass venetianBlind ----------- -The name of the ActionType ({5a7599fa-8351-4ed6-9b98-fa2f3be54304}) of ThingClass extendedBlind ----------- -The name of the ActionType ({120dc265-dbbb-4f19-9d31-c372c23479c0}) of ThingClass blind ----------- -The name of the ActionType ({979e9c51-5a93-4635-85e3-01874306b229}) of ThingClass awning - - - - Opening output - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: openingOutput, ID: {ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) ----------- -The name of the StateType ({ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ParamType (ThingClass: simpleGaragedoor, EventType: openingOutput, ID: {fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) ----------- -The name of the StateType ({fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) of ThingClass simpleGaragedoor ----------- -The name of the ParamType (ThingClass: shutter, ActionType: openingOutput, ID: {cc547728-b309-4695-b355-49748ef2521c}) ----------- -The name of the ParamType (ThingClass: shutter, EventType: openingOutput, ID: {cc547728-b309-4695-b355-49748ef2521c}) ----------- -The name of the StateType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, ActionType: openingOutput, ID: {6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: openingOutput, ID: {6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) ----------- -The name of the StateType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: openingOutput, ID: {e559f077-e904-4bbc-8ec3-344b814d2eab}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: openingOutput, ID: {e559f077-e904-4bbc-8ec3-344b814d2eab}) ----------- -The name of the StateType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, ActionType: openingOutput, ID: {b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) ----------- -The name of the ParamType (ThingClass: blind, EventType: openingOutput, ID: {b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) ----------- -The name of the StateType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, ActionType: openingOutput, ID: {4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) ----------- -The name of the ParamType (ThingClass: awning, EventType: openingOutput, ID: {4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) ----------- -The name of the StateType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - - - - Opening output changed - The name of the EventType ({ecc799c7-4d74-4d1f-94e5-2d74e77493ae}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the EventType ({fcd421eb-54f2-4195-bdef-ffa69e9dcc57}) of ThingClass simpleGaragedoor ----------- -The name of the EventType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the EventType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the EventType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the EventType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the EventType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - - - - Percentage - The name of the ParamType (ThingClass: venetianBlind, ActionType: percentage, ID: {33dc8019-336d-4d50-8d60-dff8508338ca}) ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: percentage, ID: {33dc8019-336d-4d50-8d60-dff8508338ca}) ----------- -The name of the StateType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, ActionType: percentage, ID: {181df603-d45f-4d3d-a358-97aa3e4ac0bd}) ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: percentage, ID: {181df603-d45f-4d3d-a358-97aa3e4ac0bd}) ----------- -The name of the StateType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - - - - Percentage changed - The name of the EventType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the EventType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - - - - Power - The name of the ParamType (ThingClass: ventilationFlow, ActionType: power, ID: {adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) ----------- -The name of the ParamType (ThingClass: ventilationFlow, EventType: power, ID: {adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) ----------- -The name of the StateType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the ParamType (ThingClass: ventilation, ActionType: power, ID: {846711b7-ea5a-4c66-a267-001c60406509}) ----------- -The name of the ParamType (ThingClass: ventilation, EventType: power, ID: {846711b7-ea5a-4c66-a267-001c60406509}) ----------- -The name of the StateType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the ParamType (ThingClass: irrigation, ActionType: power, ID: {0212a287-c5ae-4644-8803-adfdd8caeb9a}) ----------- -The name of the ParamType (ThingClass: irrigation, EventType: power, ID: {0212a287-c5ae-4644-8803-adfdd8caeb9a}) ----------- -The name of the StateType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation ----------- -The name of the ParamType (ThingClass: powerSwitch, ActionType: power, ID: {08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) ----------- -The name of the ParamType (ThingClass: powerSwitch, EventType: power, ID: {08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) ----------- -The name of the StateType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch ----------- -The name of the ParamType (ThingClass: heating, ActionType: power, ID: {409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) ----------- -The name of the ParamType (ThingClass: heating, EventType: power, ID: {409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) ----------- -The name of the StateType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the ParamType (ThingClass: light, ActionType: power, ID: {8b6e4a67-6522-408b-b676-8d2f09ed2d54}) ----------- -The name of the ParamType (ThingClass: light, EventType: power, ID: {8b6e4a67-6522-408b-b676-8d2f09ed2d54}) ----------- -The name of the StateType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the ParamType (ThingClass: socket, ActionType: power, ID: {018038d7-1d02-4b17-8fe3-babca044b087}) ----------- -The name of the ParamType (ThingClass: socket, EventType: power, ID: {018038d7-1d02-4b17-8fe3-babca044b087}) ----------- -The name of the StateType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - - - - Power changed - The name of the EventType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the EventType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the EventType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - - - - Power on/off - The name of the ActionType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch - - - - Powered on/off - The name of the EventType ({08087af6-6a3b-4e4a-ac6d-56f23ce63edf}) of ThingClass powerSwitch - - - - Set angle - The name of the ActionType ({fcb700c4-5da8-4385-85b0-6616e807974e}) of ThingClass venetianBlind - - - - Set closing output - The name of the ActionType ({1c35df0e-4c41-455f-893a-0145377952a0}) of ThingClass shutter ----------- -The name of the ActionType ({84dd2fa1-85fe-47f3-9e32-e6083432d39c}) of ThingClass venetianBlind ----------- -The name of the ActionType ({1a4a5839-a30d-4239-a124-63bfdc74a8f6}) of ThingClass extendedBlind ----------- -The name of the ActionType ({9b673430-572d-4a9c-85d3-dafadbe541cd}) of ThingClass blind ----------- -The name of the ActionType ({59bfd575-709f-4e43-9726-de26e6d4ca8b}) of ThingClass awning - - - - Set input value - The name of the ActionType ({d344887d-da5d-4742-83bd-608754b2d0aa}) of ThingClass waterLevelSensor ----------- -The name of the ActionType ({520e5d27-7d15-4d79-94cf-5d01f5a09ea8}) of ThingClass lightSensor ----------- -The name of the ActionType ({e3eb500a-ac00-426c-932a-dee4fd6fbcf5}) of ThingClass gasSensor ----------- -The name of the ActionType ({7dc765f8-fa9b-4199-8f21-49ed452f226d}) of ThingClass co2Sensor ----------- -The name of the ActionType ({cf3ec5ec-7098-47c5-9666-b3c52eba1b1d}) of ThingClass coSensor ----------- -The name of the ActionType ({c320577c-371a-442b-ac80-b692ff2064c9}) of ThingClass pressureSensor ----------- -The name of the ActionType ({7e74fca7-84d0-4f3e-9f26-4232b7b9f507}) of ThingClass o2Sensor ----------- -The name of the ActionType ({020ff04f-a157-4925-9c55-2b45389208fc}) of ThingClass orpSensor ----------- -The name of the ActionType ({614a039b-9ed9-4b62-9c74-01ba4ac42f16}) of ThingClass phSensor ----------- -The name of the ActionType ({ce64a425-d990-4fc1-966b-be6de445792b}) of ThingClass moistureSensor ----------- -The name of the ActionType ({a8223e65-e704-4f84-9bbe-d8fc42597047}) of ThingClass humiditySensor ----------- -The name of the ActionType ({fed37466-1264-4ac1-84fd-aff3a1f7ff04}) of ThingClass temperatureSensor - - - - Set opening output - The name of the ActionType ({cc547728-b309-4695-b355-49748ef2521c}) of ThingClass shutter ----------- -The name of the ActionType ({6041dacf-5303-4dc0-ba3c-7ecaa438f2dd}) of ThingClass venetianBlind ----------- -The name of the ActionType ({e559f077-e904-4bbc-8ec3-344b814d2eab}) of ThingClass extendedBlind ----------- -The name of the ActionType ({b2dbf25c-27e5-4f7e-a57d-2ef6d087fa2b}) of ThingClass blind ----------- -The name of the ActionType ({4bb951a4-ea23-4cf0-9269-41d2c4eaf5a4}) of ThingClass awning - - - - Set percentage - The name of the ActionType ({33dc8019-336d-4d50-8d60-dff8508338ca}) of ThingClass venetianBlind ----------- -The name of the ActionType ({181df603-d45f-4d3d-a358-97aa3e4ac0bd}) of ThingClass extendedBlind - - - - Set power - The name of the ActionType ({409b635e-a754-4b5c-b3f0-d1c5a0fb3f03}) of ThingClass heating ----------- -The name of the ActionType ({8b6e4a67-6522-408b-b676-8d2f09ed2d54}) of ThingClass light ----------- -The name of the ActionType ({018038d7-1d02-4b17-8fe3-babca044b087}) of ThingClass socket - - - - Soil moisture - The name of the ParamType (ThingClass: moistureSensor, EventType: moisture, ID: {7a62e1d2-92f2-424c-876c-870478a4b2bd}) ----------- -The name of the StateType ({7a62e1d2-92f2-424c-876c-870478a4b2bd}) of ThingClass moistureSensor - - - - Soil moisture changed - The name of the EventType ({7a62e1d2-92f2-424c-876c-870478a4b2bd}) of ThingClass moistureSensor - - - - Status - The name of the ParamType (ThingClass: shutter, EventType: status, ID: {6d6e72dc-4d2b-4ec1-82c2-54405a682711}) ----------- -The name of the StateType ({6d6e72dc-4d2b-4ec1-82c2-54405a682711}) of ThingClass shutter ----------- -The name of the ParamType (ThingClass: venetianBlind, EventType: status, ID: {6fb7826e-b6d8-42f8-b712-719496046436}) ----------- -The name of the StateType ({6fb7826e-b6d8-42f8-b712-719496046436}) of ThingClass venetianBlind ----------- -The name of the ParamType (ThingClass: extendedBlind, EventType: status, ID: {c2354d7e-198a-43ae-aa5f-c6710010c7e1}) ----------- -The name of the StateType ({c2354d7e-198a-43ae-aa5f-c6710010c7e1}) of ThingClass extendedBlind ----------- -The name of the ParamType (ThingClass: blind, EventType: status, ID: {5fdec1e0-51f6-48b9-b743-ba572504b2c1}) ----------- -The name of the StateType ({5fdec1e0-51f6-48b9-b743-ba572504b2c1}) of ThingClass blind ----------- -The name of the ParamType (ThingClass: awning, EventType: status, ID: {ff6f2565-2a2e-4d34-b10f-d3f73b676399}) ----------- -The name of the StateType ({ff6f2565-2a2e-4d34-b10f-d3f73b676399}) of ThingClass awning - - - - Status changed - The name of the EventType ({6d6e72dc-4d2b-4ec1-82c2-54405a682711}) of ThingClass shutter ----------- -The name of the EventType ({6fb7826e-b6d8-42f8-b712-719496046436}) of ThingClass venetianBlind ----------- -The name of the EventType ({c2354d7e-198a-43ae-aa5f-c6710010c7e1}) of ThingClass extendedBlind ----------- -The name of the EventType ({5fdec1e0-51f6-48b9-b743-ba572504b2c1}) of ThingClass blind ----------- -The name of the EventType ({ff6f2565-2a2e-4d34-b10f-d3f73b676399}) of ThingClass awning - - - - Stop - The name of the ActionType ({109c3eaf-26a0-4121-8be2-1363253178fd}) of ThingClass extendedStatefulGaragedoor ----------- -The name of the ActionType ({f346766f-44ee-452b-bb9c-e89ec0f56016}) of ThingClass simpleGaragedoor ----------- -The name of the ActionType ({db5f3332-1f4e-4f9e-84d2-93c5d7de315c}) of ThingClass shutter ----------- -The name of the ActionType ({6e3eeb5d-d7ed-4175-9795-e76451e0a00b}) of ThingClass venetianBlind ----------- -The name of the ActionType ({ab67e4bf-c7b6-489b-9b49-3e0a1c7d33ca}) of ThingClass extendedBlind ----------- -The name of the ActionType ({1a924c9a-5dcb-4b1c-8fd6-ab101098e007}) of ThingClass blind ----------- -The name of the ActionType ({555cafe4-bd12-42c6-bab1-8cd59af6468e}) of ThingClass awning - - - - Temperature - The name of the ParamType (ThingClass: temperatureSensor, EventType: temperature, ID: {d0b6c4be-339e-4b0f-a234-0611b7565395}) ----------- -The name of the StateType ({d0b6c4be-339e-4b0f-a234-0611b7565395}) of ThingClass temperatureSensor - - - - Temperature changed - The name of the EventType ({d0b6c4be-339e-4b0f-a234-0611b7565395}) of ThingClass temperatureSensor - - - - Turn on or off - The name of the ActionType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the ActionType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the ActionType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation - - - - Turned on or off - The name of the EventType ({adf9a8dd-da13-4070-a3bd-9d4be26ebcd1}) of ThingClass ventilationFlow ----------- -The name of the EventType ({846711b7-ea5a-4c66-a267-001c60406509}) of ThingClass ventilation ----------- -The name of the EventType ({0212a287-c5ae-4644-8803-adfdd8caeb9a}) of ThingClass irrigation - - - - Venetian blind - The name of the ThingClass ({e6b96ced-8d50-45da-91c8-792d364d2795}) - - - - nymea - The name of the vendor ({2062d64d-3232-433c-88bc-0d33c0ba2ba6}) - - - - Energy - The name of the ParamType (ThingClass: smartMeter, EventType: totalEnergyConsumed, ID: {5821edb7-e6cb-4e5a-9d0b-3375126d3367}) ----------- -The name of the StateType ({5821edb7-e6cb-4e5a-9d0b-3375126d3367}) of ThingClass smartMeter - - - - Energy changed - The name of the EventType ({5821edb7-e6cb-4e5a-9d0b-3375126d3367}) of ThingClass smartMeter - - - - Impulse/kWh - The name of the ParamType (ThingClass: smartMeter, Type: settings, ID: {c361732b-68eb-447e-a434-e84031231871}) - - - - Impulse input - The name of the ParamType (ThingClass: smartMeter, ActionType: impulseInput, ID: {9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) ----------- -The name of the ParamType (ThingClass: smartMeter, EventType: impulseInput, ID: {9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) ----------- -The name of the StateType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - - - - Impulse input changed - The name of the EventType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - - - - Set impulse input - The name of the ActionType ({9cd7e5ca-f8f8-48d5-9785-911ae75158c3}) of ThingClass smartMeter - - - - Timeframe for power calculation - The name of the ParamType (ThingClass: smartMeter, Type: settings, ID: {73c9acc3-8f76-40d7-a79b-a1f08bb308d4}) - - - - Impulse based energy meter - The name of the ThingClass ({c3123967-f741-4fe1-a0d4-9a3e405d7e52}) - - - - Angle end to end time [ms] - The name of the ParamType (ThingClass: venetianBlind, Type: settings, ID: {6c8340bf-7fd3-43e3-a75b-dfa2f6426e11}) - - - - CO2 - The name of the ParamType (ThingClass: co2Sensor, EventType: co2, ID: {755c4c7f-093e-41dd-a38d-9ee18c9890d6}) ----------- -The name of the StateType ({755c4c7f-093e-41dd-a38d-9ee18c9890d6}) of ThingClass co2Sensor - - - - CO2 changed - The name of the EventType ({755c4c7f-093e-41dd-a38d-9ee18c9890d6}) of ThingClass co2Sensor - - - - Closing duration [ms] - The name of the ParamType (ThingClass: venetianBlind, Type: settings, ID: {4c0bf07d-aaab-4f67-af65-00ceaefbaa84}) ----------- -The name of the ParamType (ThingClass: extendedBlind, Type: settings, ID: {27a95b8d-7f97-441b-a3be-0646c517cb06}) - - - - Garage door with position control - The name of the ThingClass ({7341e689-4495-4422-851a-3e7c790394b8}) - - - - Generic CO2 sensor - The name of the ThingClass ({a58a2dae-4148-4a4d-ab34-2a11124454a0}) - - - - Generic blind with position control - The name of the ThingClass ({40aa9f3c-a23c-4f7f-8786-fcf3554f3e19}) - - - - Generic pressure sensor - The name of the ThingClass ({9a8d804b-d1dc-450a-8c41-be491e5cdda0}) - - - - Impulse - The name of the ParamType (ThingClass: impulseGaragedooor, EventType: impulse, ID: {5ccaf0aa-01a4-441f-b6ca-18940da096a5}) ----------- -The name of the StateType ({5ccaf0aa-01a4-441f-b6ca-18940da096a5}) of ThingClass impulseGaragedooor - - - - Impulse based garage door - The name of the ThingClass ({d6699a12-f4a6-4c50-951c-f4f1cd0501dc}) - - - - Impulse changed - The name of the EventType ({5ccaf0aa-01a4-441f-b6ca-18940da096a5}) of ThingClass impulseGaragedooor - - - - Impulse duration - The name of the ParamType (ThingClass: impulseGaragedooor, Type: settings, ID: {962b356c-e975-4d33-b114-10f655eaf74c}) - - - - Maximum CO2 - The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {a3029bee-8b13-4aed-8ebd-eaceb603f8ef}) - - - - Maximum pressure - The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {06e21251-8b4f-44a1-8504-6b51f8526bd0}) - - - - Minimum CO2 - The name of the ParamType (ThingClass: co2Sensor, Type: settings, ID: {a0d8a6ec-599a-4ded-ae03-2950561f0b72}) - - - - Minimum pressure - The name of the ParamType (ThingClass: pressureSensor, Type: settings, ID: {035e2619-f9c2-4e8f-95dd-f124ad9402d0}) - - - - Open position - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, ActionType: percentage, ID: {f9244c14-0bc9-49ce-90a5-437e66245594}) ----------- -The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: percentage, ID: {f9244c14-0bc9-49ce-90a5-437e66245594}) ----------- -The name of the StateType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - - - - Open position changed - The name of the EventType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - - - - Opening duration [ms] - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, Type: settings, ID: {04fb7724-a870-4df9-a79e-fab693931238}) - - - - Operate - The name of the ActionType ({ff5461c6-70fc-435e-8424-96fa59ed321e}) of ThingClass impulseGaragedooor - - - - Pressure - The name of the ParamType (ThingClass: pressureSensor, EventType: pressure, ID: {e645a979-1465-4592-b8b0-f4c123db0800}) ----------- -The name of the StateType ({e645a979-1465-4592-b8b0-f4c123db0800}) of ThingClass pressureSensor - - - - Pressure changed - The name of the EventType ({e645a979-1465-4592-b8b0-f4c123db0800}) of ThingClass pressureSensor - - - - Set open position - The name of the ActionType ({f9244c14-0bc9-49ce-90a5-437e66245594}) of ThingClass extendedStatefulGaragedoor - - - - Simple garage door - The name of the ThingClass ({572403b1-bc22-4620-8170-53147a546033}) - - - - State - The name of the ParamType (ThingClass: extendedStatefulGaragedoor, EventType: state, ID: {0cc74edb-7116-47cf-953a-409933f26557}) ----------- -The name of the StateType ({0cc74edb-7116-47cf-953a-409933f26557}) of ThingClass extendedStatefulGaragedoor - - - - State changed - The name of the EventType ({0cc74edb-7116-47cf-953a-409933f26557}) of ThingClass extendedStatefulGaragedoor - - - - Generic thermostat - The name of the ThingClass ({6a34ba99-e5ec-4fc9-a61f-695ed8573fa1}) - - - - Set target temperature - The name of the ActionType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - - - - Target temperature - The name of the ParamType (ThingClass: thermostat, ActionType: targetTemperature, ID: {60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: targetTemperature, ID: {60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) ----------- -The name of the StateType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - - - - Target temperature changed - The name of the EventType ({60169ebf-c1e3-41ed-a1bb-4b858e93ec50}) of ThingClass thermostat - - - - Set temperature sensor input - The name of the ActionType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - - - - Temperature difference - The name of the ParamType (ThingClass: thermostat, Type: settings, ID: {64bf308f-a543-4e02-b787-1a1714c1f978}) - - - - Temperature sensor input - The name of the ParamType (ThingClass: thermostat, ActionType: temperature, ID: {0f808803-0e63-47df-b024-9685998ba663}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: temperature, ID: {0f808803-0e63-47df-b024-9685998ba663}) ----------- -The name of the StateType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - - - - Temperature sensor input changed - The name of the EventType ({0f808803-0e63-47df-b024-9685998ba663}) of ThingClass thermostat - - - - Operating mode - The name of the ParamType (ThingClass: sgReady, ActionType: operatingMode, ID: {85667640-d719-4be4-a5fa-e41193eea162}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: operatingMode, ID: {85667640-d719-4be4-a5fa-e41193eea162}) ----------- -The name of the StateType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - - - - Operating mode changed - The name of the EventType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - - - - Operating mode description - The name of the ParamType (ThingClass: sgReady, EventType: operatingModeDescription, ID: {b421d098-f6e9-40e2-b536-58acdb3a49fe}) ----------- -The name of the StateType ({b421d098-f6e9-40e2-b536-58acdb3a49fe}) of ThingClass sgReady - - - - Operating mode description changed - The name of the EventType ({b421d098-f6e9-40e2-b536-58acdb3a49fe}) of ThingClass sgReady - - - - Relay 1 - The name of the ParamType (ThingClass: sgReady, ActionType: relay1, ID: {d080466e-7271-441f-9916-1199a6668545}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: relay1, ID: {d080466e-7271-441f-9916-1199a6668545}) ----------- -The name of the StateType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - - - - Relay 1 changed - The name of the EventType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - - - - Relay 2 - The name of the ParamType (ThingClass: sgReady, ActionType: relay2, ID: {caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) ----------- -The name of the ParamType (ThingClass: sgReady, EventType: relay2, ID: {caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) ----------- -The name of the StateType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - - - - Relay 2 changed - The name of the EventType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - - - - SG-Ready - The name of the ThingClass ({83cf138d-02dc-4015-9b03-6360c2f3cfb1}) - - - - Set operating mode - The name of the ActionType ({85667640-d719-4be4-a5fa-e41193eea162}) of ThingClass sgReady - - - - Set relay 1 - The name of the ActionType ({d080466e-7271-441f-9916-1199a6668545}) of ThingClass sgReady - - - - Set relay 2 - The name of the ActionType ({caf22937-fdf7-41e1-a87b-d11e66c4f4c6}) of ThingClass sgReady - - - - Closed - The name of the ParamType (ThingClass: doorSensor, ActionType: closed, ID: {7f5fdc2b-7916-4e90-9c24-558162304f71}) ----------- -The name of the ParamType (ThingClass: doorSensor, EventType: closed, ID: {7f5fdc2b-7916-4e90-9c24-558162304f71}) ----------- -The name of the StateType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - - - - Set open or closed - The name of the ActionType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - - - - Generic light sensor - The name of the ThingClass ({d4d873fd-f0fc-433f-b615-91c1506a1890}) - - - - Light intensity - The name of the ParamType (ThingClass: lightSensor, EventType: lightIntensity, ID: {fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) ----------- -The name of the StateType ({fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) of ThingClass lightSensor - - - - Light intensity changed - The name of the EventType ({fe12ef32-9f2f-41cd-acb7-6b8e4acffa3b}) of ThingClass lightSensor - - - - Maximum Lux - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {7fe74404-d7f0-41af-a8d4-dd1bda27f752}) - - - - Minimum Lux - The name of the ParamType (ThingClass: lightSensor, Type: settings, ID: {6dea7384-b079-443b-8cc2-1479138fa212}) - - - - Cooler on/off - The name of the ParamType (ThingClass: cooling, ActionType: power, ID: {918cfd2c-6692-4faa-acc6-18ebf93611ec}) ----------- -The name of the ParamType (ThingClass: cooling, EventType: power, ID: {918cfd2c-6692-4faa-acc6-18ebf93611ec}) ----------- -The name of the StateType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - - - - Cooler turned on/off - The name of the EventType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - - - - Cooling On/off - The name of the ParamType (ThingClass: thermostat, ActionType: coolingOn, ID: {cab7d4bd-f612-4d12-b3a4-0649e189810f}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: coolingOn, ID: {cab7d4bd-f612-4d12-b3a4-0649e189810f}) ----------- -The name of the StateType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - - - - Cooling turned on/off - The name of the EventType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - - - - Generic cooler - The name of the ThingClass ({09edbc07-d382-48a4-9b16-99992014aff9}) - - - - Generic presence sensor - The name of the ThingClass ({339a0c54-4086-404f-8d36-bcf20621b785}) - - - - Heating On/off - The name of the ParamType (ThingClass: thermostat, ActionType: heatingOn, ID: {1f6a0c39-4417-4e31-86db-9926cf81c345}) ----------- -The name of the ParamType (ThingClass: thermostat, EventType: heatingOn, ID: {1f6a0c39-4417-4e31-86db-9926cf81c345}) ----------- -The name of the StateType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - - - - Heating turned on/off - The name of the EventType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - - - - Last seen time - The name of the ParamType (ThingClass: presenceSensor, EventType: lastSeenTime, ID: {be4842cb-140c-425f-9630-8bb19fdb943e}) ----------- -The name of the StateType ({be4842cb-140c-425f-9630-8bb19fdb943e}) of ThingClass presenceSensor - - - - Last seen time changed - The name of the EventType ({be4842cb-140c-425f-9630-8bb19fdb943e}) of ThingClass presenceSensor - - - - Presence detected - The name of the ParamType (ThingClass: presenceSensor, ActionType: isPresent, ID: {22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) ----------- -The name of the ParamType (ThingClass: presenceSensor, EventType: isPresent, ID: {22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) ----------- -The name of the StateType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - - - - Presense changed - The name of the EventType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - - - - Set presence - The name of the ActionType ({22c1eac6-9bb5-4cc1-ac0d-e3e1499edd3c}) of ThingClass presenceSensor - - - - Turn cooler on/off - The name of the ActionType ({918cfd2c-6692-4faa-acc6-18ebf93611ec}) of ThingClass cooling - - - - Turn cooling on/off - The name of the ActionType ({cab7d4bd-f612-4d12-b3a4-0649e189810f}) of ThingClass thermostat - - - - Turn heating on/off - The name of the ActionType ({1f6a0c39-4417-4e31-86db-9926cf81c345}) of ThingClass thermostat - - - - Opened or closed - The name of the EventType ({7f5fdc2b-7916-4e90-9c24-558162304f71}) of ThingClass doorSensor - - - - Battery critical - The name of the ParamType (ThingClass: battery, EventType: batteryCritical, ID: {e95dc037-002d-40a2-8c15-cd5489bd354a}) ----------- -The name of the StateType ({e95dc037-002d-40a2-8c15-cd5489bd354a}) of ThingClass battery - - - - Battery level - The name of the ParamType (ThingClass: car, ActionType: batteryLevel, ID: {3f1cca10-8988-4ec6-b937-0775653cde12}) ----------- -The name of the ParamType (ThingClass: car, EventType: batteryLevel, ID: {3f1cca10-8988-4ec6-b937-0775653cde12}) ----------- -The name of the StateType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the ParamType (ThingClass: battery, EventType: batteryLevel, ID: {d37eed4a-befc-40d4-b435-40a761f99314}) ----------- -The name of the StateType ({d37eed4a-befc-40d4-b435-40a761f99314}) of ThingClass battery - - - - Battery level changed - The name of the EventType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the EventType ({d37eed4a-befc-40d4-b435-40a761f99314}) of ThingClass battery - - - - Battery level control - The name of the ParamType (ThingClass: battery, ActionType: batteryLevelControl, ID: {3336f0c2-158b-4353-b74f-f1bb9c4e8447}) ----------- -The name of the ParamType (ThingClass: battery, EventType: batteryLevelControl, ID: {3336f0c2-158b-4353-b74f-f1bb9c4e8447}) ----------- -The name of the StateType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - - - - Battery level control changed - The name of the EventType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - - - - Charging - The name of the ParamType (ThingClass: battery, ActionType: charging, ID: {a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) ----------- -The name of the ParamType (ThingClass: battery, EventType: charging, ID: {a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) ----------- -The name of the StateType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - - - - Generic battery - The name of the ThingClass ({81418556-cae3-4803-aa0c-9c4b3304a3eb}) - - - - Critical battery level - The name of the ParamType (ThingClass: battery, Type: settings, ID: {8d875cb7-3a14-42d1-bf1b-759e5fd95a8f}) - - - - Battery entered or left critical state - The name of the EventType ({d33982d6-6467-4281-b448-68c1b1db088d}) of ThingClass car ----------- -The name of the EventType ({e95dc037-002d-40a2-8c15-cd5489bd354a}) of ThingClass battery - - - - Charging started or stopped - The name of the EventType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - - - - Set battery level - The name of the ActionType ({3f1cca10-8988-4ec6-b937-0775653cde12}) of ThingClass car ----------- -The name of the ActionType ({3336f0c2-158b-4353-b74f-f1bb9c4e8447}) of ThingClass battery - - - - Set charging - The name of the ActionType ({a61c0328-b982-46a5-9cc0-b4fa4d0ab84d}) of ThingClass battery - - - - Analog input - The name of the ParamType (ThingClass: generic, ActionType: analogInput, ID: {810fcd3c-7854-4bb1-82f6-1403ba54875e}) ----------- -The name of the ParamType (ThingClass: generic, EventType: analogInput, ID: {810fcd3c-7854-4bb1-82f6-1403ba54875e}) ----------- -The name of the StateType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - - - - Analog input changed - The name of the EventType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - - - - Analog output - The name of the ParamType (ThingClass: generic, ActionType: analogOutput, ID: {de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) ----------- -The name of the ParamType (ThingClass: generic, EventType: analogOutput, ID: {de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) ----------- -The name of the StateType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - - - - Analog output changed - The name of the EventType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - - - - Digital input - The name of the ParamType (ThingClass: generic, ActionType: digitalInput, ID: {3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) ----------- -The name of the ParamType (ThingClass: generic, EventType: digitalInput, ID: {3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) ----------- -The name of the StateType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - - - - Digital input changed - The name of the EventType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - - - - Digital output - The name of the ParamType (ThingClass: generic, ActionType: digitalOutput, ID: {605b4d8e-71a7-441e-900a-e07c305acd93}) ----------- -The name of the ParamType (ThingClass: generic, EventType: digitalOutput, ID: {605b4d8e-71a7-441e-900a-e07c305acd93}) ----------- -The name of the StateType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - - - - Digital output changed - The name of the EventType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - - - - Generic thing - The name of the ThingClass ({f5c02d35-b06e-4950-8238-847d50cabfdf}) - - - - Set analog input - The name of the ActionType ({810fcd3c-7854-4bb1-82f6-1403ba54875e}) of ThingClass generic - - - - Set analog output - The name of the ActionType ({de8ec1b1-8026-4fd8-aefb-dedc07616aa4}) of ThingClass generic - - - - Set digital input - The name of the ActionType ({3cf5eb01-dae8-49cd-8c5f-b0224be0044f}) of ThingClass generic - - - - Set digital output - The name of the ActionType ({605b4d8e-71a7-441e-900a-e07c305acd93}) of ThingClass generic - - - - Set string state - The name of the ActionType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - - - - String state - The name of the ParamType (ThingClass: generic, ActionType: stringState, ID: {f477e227-0d2d-4d88-a545-7dedf36266d5}) ----------- -The name of the ParamType (ThingClass: generic, EventType: stringState, ID: {f477e227-0d2d-4d88-a545-7dedf36266d5}) ----------- -The name of the StateType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - - - - String state changed - The name of the EventType ({f477e227-0d2d-4d88-a545-7dedf36266d5}) of ThingClass generic - - - - Air flow rate - The name of the ParamType (ThingClass: ventilationFlow, ActionType: flowRate, ID: {5a273bba-0bef-49fb-870a-7f2df8fc14b6}) ----------- -The name of the ParamType (ThingClass: ventilationFlow, EventType: flowRate, ID: {5a273bba-0bef-49fb-870a-7f2df8fc14b6}) ----------- -The name of the StateType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - - - - Air flow rate changed - The name of the EventType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - - - - Generic ventilation with flow control - The name of the ThingClass ({a7eec5f7-3cc3-4edb-baa7-1f6b6f935bf8}) - - - - Set air flow rate - The name of the ActionType ({5a273bba-0bef-49fb-870a-7f2df8fc14b6}) of ThingClass ventilationFlow - - - - CO level - The name of the ParamType (ThingClass: coSensor, EventType: co, ID: {9eebe9d2-b34b-4847-bc25-109e2b8cab24}) ----------- -The name of the StateType ({9eebe9d2-b34b-4847-bc25-109e2b8cab24}) of ThingClass coSensor - - - - CO level changed - The name of the EventType ({9eebe9d2-b34b-4847-bc25-109e2b8cab24}) of ThingClass coSensor - - - - Current Power usage - The name of the ParamType (ThingClass: smartMeter, EventType: currentPower, ID: {5983d714-5f80-42d8-bee2-9228b6382b3b}) ----------- -The name of the StateType ({5983d714-5f80-42d8-bee2-9228b6382b3b}) of ThingClass smartMeter - - - - Current Power usage changed - The name of the EventType ({5983d714-5f80-42d8-bee2-9228b6382b3b}) of ThingClass smartMeter - - - - Gas level - The name of the ParamType (ThingClass: gasSensor, EventType: gas, ID: {5135648f-57b7-44b0-b9d0-c5accad09356}) ----------- -The name of the StateType ({5135648f-57b7-44b0-b9d0-c5accad09356}) of ThingClass gasSensor - - - - Gas level changed - The name of the EventType ({5135648f-57b7-44b0-b9d0-c5accad09356}) of ThingClass gasSensor - - - - Generic CO sensor - The name of the ThingClass ({262a29b2-b5df-4ee2-822c-e672f50d97b6}) - - - - Generic O2 sensor - The name of the ThingClass ({a8cf20ec-132b-4f6f-b5ec-73dc2f873b43}) - - - - Generic ORP sensor - The name of the ThingClass ({3edeec39-ab9d-4697-90cc-0bba089384cf}) - - - - Generic flammable gas sensor - The name of the ThingClass ({25c6725f-5c15-485b-9ec4-cb0e11ab6b32}) - - - - Gerneric water sensor - The name of the ThingClass ({09b9cb86-f551-4efe-9a7d-2f7624e9510f}) - - - - Maximum CO - The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {e9def195-1b67-4a1b-8030-cbbc6209d52e}) - - - - Maximum input ORP value - The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {bd0774c9-1b89-49ce-b0f8-66ff26ca10db}) - - - - Maximum input value - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {4e228f9b-8631-4643-8375-3d8d76d12e9c}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {198847f6-a188-42b0-9e0b-15587eaabbed}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {a8889e45-59e5-4cc4-b228-611f8f19f531}) - - - - Maximum value - The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {51f4a830-3ef9-4fa2-b36b-5976f724f8a1}) - - - - Minimum CO - The name of the ParamType (ThingClass: coSensor, Type: settings, ID: {e850b044-fd70-446c-a943-3c88407425f5}) - - - - Minimum input value - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {16ea3cf2-46fd-40a3-88bf-21a2bb7cbabe}) ----------- -The name of the ParamType (ThingClass: o2Sensor, Type: settings, ID: {58e84041-d451-44a2-972e-13a79b449b58}) ----------- -The name of the ParamType (ThingClass: orpSensor, Type: settings, ID: {396bf3f9-a3fc-44c3-90f8-b316670116a7}) ----------- -The name of the ParamType (ThingClass: phSensor, Type: settings, ID: {a8ff2e16-e06c-4b1e-839a-a06691a12d64}) - - - - Minimum value - The name of the ParamType (ThingClass: gasSensor, Type: settings, ID: {480945ea-6262-408d-b799-cbff905a40db}) - - - - O2 saturation - The name of the ParamType (ThingClass: o2Sensor, EventType: o2saturation, ID: {a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) ----------- -The name of the StateType ({a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) of ThingClass o2Sensor - - - - O2 saturation changed - The name of the EventType ({a3ff7641-87d9-4b07-b8e5-e6aa92b90088}) of ThingClass o2Sensor - - - - ORP - The name of the ParamType (ThingClass: orpSensor, EventType: orp, ID: {e5ed3535-2e5d-412e-85f8-782cbccd7731}) ----------- -The name of the StateType ({e5ed3535-2e5d-412e-85f8-782cbccd7731}) of ThingClass orpSensor - - - - ORP changed - The name of the EventType ({e5ed3535-2e5d-412e-85f8-782cbccd7731}) of ThingClass orpSensor - - - - PH - The name of the ParamType (ThingClass: phSensor, EventType: ph, ID: {743514b1-8018-4525-b87a-c5f414146ff2}) ----------- -The name of the StateType ({743514b1-8018-4525-b87a-c5f414146ff2}) of ThingClass phSensor - - - - PH changed - The name of the EventType ({743514b1-8018-4525-b87a-c5f414146ff2}) of ThingClass phSensor - - - - PH sensor - The name of the ThingClass ({e2934fa1-59c3-4de8-82f2-66181136085c}) - - - - Set water detected - The name of the ActionType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor - - - - Water detected - The name of the ParamType (ThingClass: waterSensor, ActionType: waterDetected, ID: {b2427b85-1f62-4635-b546-1961191426ef}) ----------- -The name of the ParamType (ThingClass: waterSensor, EventType: waterDetected, ID: {b2427b85-1f62-4635-b546-1961191426ef}) ----------- -The name of the EventType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor ----------- -The name of the StateType ({b2427b85-1f62-4635-b546-1961191426ef}) of ThingClass waterSensor - - - - Battery level critical - The name of the ParamType (ThingClass: car, EventType: batteryCritical, ID: {d33982d6-6467-4281-b448-68c1b1db088d}) ----------- -The name of the StateType ({d33982d6-6467-4281-b448-68c1b1db088d}) of ThingClass car - - - - Capacity - The name of the ParamType (ThingClass: car, ActionType: capacity, ID: {363a2a39-61b6-4109-9cd9-aca7367d12c7}) ----------- -The name of the ParamType (ThingClass: car, EventType: capacity, ID: {363a2a39-61b6-4109-9cd9-aca7367d12c7}) ----------- -The name of the StateType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - - - - Capacity changed - The name of the EventType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - - - - Generic electric car - The name of the ThingClass ({dbe0a9ff-94ba-4a94-ae52-51da3f05c717}) - - - - Set capacity - The name of the ActionType ({363a2a39-61b6-4109-9cd9-aca7367d12c7}) of ThingClass car - - - - Generic door or window sensor - The name of the ThingClass ({2d936f56-48ee-4be1-9b3e-28a335ad8085}) - - - - Generic water level sensor - The name of the ThingClass ({f1576df0-fb45-4bf0-89fa-a83c4118c326}) - - - - Tank capactity - The name of the ParamType (ThingClass: waterLevelSensor, Type: settings, ID: {5e98e8d2-d849-46c5-b25a-d54f184ea4c7}) - - - - Water level - The name of the ParamType (ThingClass: waterLevelSensor, EventType: waterLevel, ID: {07563165-e42d-4d0f-ac60-31cdd19170f2}) ----------- -The name of the StateType ({07563165-e42d-4d0f-ac60-31cdd19170f2}) of ThingClass waterLevelSensor - - - - Water level changed - The name of the EventType ({07563165-e42d-4d0f-ac60-31cdd19170f2}) of ThingClass waterLevelSensor - - - - - IntegrationPluginGenericThings - - Invalid closing or angle time - - - - diff --git a/nymea-plugins.pro b/nymea-plugins.pro index 11fcec44..781fa5bc 100644 --- a/nymea-plugins.pro +++ b/nymea-plugins.pro @@ -23,8 +23,6 @@ PLUGIN_DIRS = \ flowercare \ fronius \ garadget \ - genericelements \ - genericthings \ goecharger \ gpio \ i2cdevices \