added new logo and load each plugin json to its documentation
This commit is contained in:
parent
6bca9c08dc
commit
1ae57928d7
@ -11,6 +11,8 @@ headers.fileextensions = "*.h"
|
||||
|
||||
imagedirs = images
|
||||
|
||||
sourcedirs = ..
|
||||
sources.fileextensions = "*.cpp *.qdoc *.json"
|
||||
exampledirs = ..
|
||||
|
||||
sourcedirs = ..
|
||||
sources.fileextensions = "*.cpp *.qdoc"
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@ include(html-styles.qdocconf)
|
||||
HTML.postheader = \
|
||||
"<div class=\"header\">\n" \
|
||||
" <div class=\"content\"> \n" \
|
||||
" <a href=\"index.html\" class=\"indexref\"><img src=\"images/mascot.png\"/><span class="titleText">guh developer documentation<span></a>\n" \
|
||||
" <a href=\"index.html\" class=\"indexref\"><img src=\"images/logo.png\"/><span class="titleText">guh developer documentation<span></a>\n" \
|
||||
" </div>\n" \
|
||||
" <div class=\"breadcrumb toolblock\">\n" \
|
||||
" <ul>\n" \
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
\section2 Event based rules
|
||||
|
||||
Event based rules (trigger path 1) contain either one or more \l{Event}{Events} or are triggered by a \l{State} change (disregarding what
|
||||
the changed State's value actually is). Such rules may still evaluate \l{States}{State} for a certain value (leaving
|
||||
the changed State's value actually is). Such rules may still evaluate \l{State}{States} for a certain value (leaving
|
||||
Trigger path 1 and re-entering Trigger path 2), however, unless
|
||||
otherwise explicitly defined, the Rule is not evaluated when such a State change happens (given the Trigger path has been
|
||||
left by crossing a black arrow). Those rules are only executed for items on trigger path 1.
|
||||
@ -55,7 +55,7 @@
|
||||
|
||||
State binding rules (Trigger path 2) are rules which only contains \l{State}{States} and \l{Action}{Actions}. Each time
|
||||
a \l{State} on that path changes, the rule is evaluated. That means, all the States in the Rule are examined. If all
|
||||
evaluations are fulfilled, the Rule's \l{Actions}{Action} are executed. Please note, that such Rules may only check
|
||||
evaluations are fulfilled, the Rule's \l{Action}{Actions} are executed. Please note, that such Rules may only check
|
||||
if states are equal to, unequal, less than or greater then some value.
|
||||
|
||||
\section3 Examples
|
||||
|
||||
2
guh.pro
2
guh.pro
@ -13,7 +13,7 @@ plugins.depends = libguh
|
||||
tests.depends = libguh
|
||||
|
||||
doc.depends = libguh server
|
||||
doc.commands = cd $$top_srcdir/doc; qdoc config.qdocconf; cp images/mascot.png html/images/
|
||||
doc.commands = cd $$top_srcdir/doc; qdoc config.qdocconf; cp images/logo.png html/images/
|
||||
|
||||
licensecheck.commands = $$top_srcdir/tests/auto/checklicenseheaders.sh $$top_srcdir
|
||||
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
|
||||
#include "bobclient.h"
|
||||
|
||||
#include "libboblight/boblight.h"
|
||||
|
||||
@ -16,6 +16,30 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
/*!
|
||||
\page boblight.html
|
||||
\title Boblight
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup network
|
||||
|
||||
This plugin allows to communicate with a \l{https://code.google.com/p/boblight/}{boblight} server
|
||||
running on localhost:19333. If a boblight server is running ,the configured light devices from the server will
|
||||
appear automatically in guh.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/boblight/devicepluginboblight.json
|
||||
*/
|
||||
|
||||
#include "devicepluginboblight.h"
|
||||
|
||||
#include "plugin/device.h"
|
||||
|
||||
@ -23,32 +23,21 @@
|
||||
\ingroup plugins
|
||||
\ingroup rf433
|
||||
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from Conrad
|
||||
devices (\l{http://www.conrad.at}).
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from \l{http://www.conrad.at}{Conrad}
|
||||
devices.
|
||||
|
||||
Following devices are supported:
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\chapter Supported devices
|
||||
\section1 Actors
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li
|
||||
\li
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\section1 Remotes
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li
|
||||
\li
|
||||
\endtable
|
||||
*/
|
||||
\quotefile plugins/deviceplugins/conrad/devicepluginconrad.json
|
||||
*/
|
||||
|
||||
#include "devicepluginconrad.h"
|
||||
|
||||
|
||||
@ -23,32 +23,21 @@
|
||||
\ingroup plugins
|
||||
\ingroup rf433
|
||||
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from Elro
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from \l{http://www.elroshop.eu/}{Elro}
|
||||
devices.
|
||||
|
||||
Following devices are supported:
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\chapter Supported devices
|
||||
\section1 Actors
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li
|
||||
\li
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\section1 Remotes
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li
|
||||
\li
|
||||
\endtable
|
||||
*/
|
||||
\quotefile plugins/deviceplugins/elro/devicepluginelro.json
|
||||
*/
|
||||
|
||||
#include "devicepluginelro.h"
|
||||
#include "devicemanager.h"
|
||||
|
||||
@ -31,151 +31,33 @@
|
||||
software is recomanded (min/max setpoint temperature, weekly programm...).
|
||||
|
||||
\chapter Supported devices
|
||||
\section1 Max! Cube LAN Gateway
|
||||
In order to use this plugin, you need a \l{http://www.eq-3.de/max-heizungssteuerung-produktdetail/
|
||||
items/bc-lgw-o-tw.html}{Max! Cube LAN Gateway}. This device can be discovered and has following propertys:
|
||||
\section2 Device propertys
|
||||
\section3 Device parameters
|
||||
Following list contains all cube params:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li host address
|
||||
\li Holds the ip address from the cube
|
||||
\li string
|
||||
\row
|
||||
\li serial number
|
||||
\li Holds the serial number of the cube. This number is written on the cube.
|
||||
\li string
|
||||
\row
|
||||
\li port
|
||||
\li Holds the port, over which the cube is reachable
|
||||
\li int
|
||||
\row
|
||||
\li firmware version
|
||||
\li Holds the firmware version of the cube
|
||||
\li int
|
||||
\endtable
|
||||
\section2 Max! Cube LAN Gateway
|
||||
This \l{http://www.eq-3.de/max-heizungssteuerung-produktdetail/
|
||||
items/bc-lgw-o-tw.html}{cube} can be discovered in the network. Every
|
||||
device, which is connected with the cube, will be appear automatically, once the cube is configrued and
|
||||
added to guh.
|
||||
|
||||
\section3 Device states
|
||||
Following list contains all cube \l{State}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\li Data Type
|
||||
\row
|
||||
\li connected
|
||||
\li This state holds connection status of the cube. If the cube is connected, this state will be true.
|
||||
\li d0a9a369-cf8c-47c4-a12e-f2d076bf12fd
|
||||
\li bool
|
||||
\row
|
||||
\li portal enabled
|
||||
\li This state shows if the web portal of the cube is enabled. You can enable with the original
|
||||
Max! software an login into the cube over \l{https://max.eq-3.de/login.jsp}
|
||||
\li 2c2367da-c229-40ed-9d47-a6e73cd6dc3b
|
||||
\li bool
|
||||
\endtable
|
||||
|
||||
\section1 Max! Wall Thermostat
|
||||
\section2 Max! Wall Thermostat
|
||||
In order to use this device, you need a \l{http://www.eq-3.de/max-heizungssteuerung-produktdetail/
|
||||
items/bc-lgw-o-tw.html}{Max! Cube LAN Gateway}. A \l{http://www.eq-3.de/max-raumloesung-produktdetail/items/bc-tc-c-wm.html}{MAX! Wall Thermostat} can not be added,
|
||||
it will appear automaticaly in the device list, once you add it to the cube. A \l{http://www.eq-3.de/max-raumloesung-produktdetail/items/bc-tc-c-wm.html}{MAX! Wall Thermostat}
|
||||
has following propertys:
|
||||
\section2 Device propertys
|
||||
\section3 Device parameters
|
||||
Following list contains all device params:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li name
|
||||
\li Holds the name of the device, given during the setup in the cube
|
||||
\li string
|
||||
\row
|
||||
\li parent cube
|
||||
\li Holds the serial number of the cube, where this device is added
|
||||
\li string
|
||||
\row
|
||||
\li rfAddress
|
||||
\li Holds the RF address of the device. This parameter is not important for the user,
|
||||
but for the actions.
|
||||
\li string
|
||||
\row
|
||||
\li room number
|
||||
\li Holds the room number, where the device was added. This number represents the room
|
||||
from the cube-room management. Is not a guh paramter.
|
||||
\li int
|
||||
\row
|
||||
\li room name
|
||||
\li Holds the room name, where the device was added. This is the room name, which was given
|
||||
during the setup on the Cube.
|
||||
\li string
|
||||
\endtable
|
||||
it will appear automatically in the device list, once you add it to the cube.
|
||||
|
||||
\section3 Device states
|
||||
Following list contains all device \l{State}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\li Data Type
|
||||
\row
|
||||
\li setpoint temperature [Celsius]
|
||||
\li Describes the setpoint temperature. The setpoint temperatur represents the whished
|
||||
temperature, which influences the radiator. This temperature can be controlled also
|
||||
with the +/- Buttons on the device.
|
||||
\li 579aa8c6-8814-491b-9e7c-b98108c323d1
|
||||
\li double
|
||||
\row
|
||||
\li current temperature [Celsius]
|
||||
\li Describes the current measured temperature in the room.
|
||||
\li 852e7708-db1d-42d1-96e4-19c13598262c
|
||||
\li double
|
||||
\row
|
||||
\li comfort temperature [Celsius]
|
||||
\li Describes the configured comfort temperature. When the device goes into comfort mode,
|
||||
than this will be te setpoint temperature.
|
||||
\li 850380ee-a787-43e7-adb8-768a21a6e64d
|
||||
\li double
|
||||
\row
|
||||
\li eco temperature [Celsius]
|
||||
\li Describes the configured eco temperature. When the device goes into eco mode,
|
||||
than this will be te setpoint temperature.
|
||||
\li 24dfd20d-bc8d-48e4-8162-b20ae0465c41
|
||||
\li double
|
||||
\row
|
||||
\li max setpoint temperature [Celsius]
|
||||
\li Describes the highest configurable temperature.
|
||||
\li a8536ddf-a6e4-41c2-89c1-e7102608f5f6
|
||||
\li double
|
||||
\row
|
||||
\li min setpoint temperature [Celsius]
|
||||
\li Describes the lowest configurable temperature.
|
||||
\li ceb0ad05-37ad-4b79-a4d9-540c34a7e3e4
|
||||
\li double
|
||||
\endtable
|
||||
\section2 Max! Radiator Thermostat
|
||||
In order to use this device, you need a \l{http://www.eq-3.de/max-heizungssteuerung-produktdetail/
|
||||
items/bc-lgw-o-tw.html}{Max! Cube LAN Gateway}. A \l{http://www.eq-3.de/max-heizungssteuerung-produktdetail/items/bc-rt-trx-cyg.html}{MAX! Radiator Thermostat} can not be added,
|
||||
it will appear automatically in the device list, once you add it to the cube.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\section3 Device actions
|
||||
Following list contains all device \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li
|
||||
\li With this action you can switch WeMo ON (true) or OFF (false).
|
||||
\li 269f25eb-d0b7-4144-b9ef-801f4ff3e90c
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/eq-3/deviceplugineq-3.json
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -23,137 +23,21 @@
|
||||
\ingroup plugins
|
||||
\ingroup rf433
|
||||
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from Intertechno
|
||||
devices (\l{http://www.intertechno.at}).
|
||||
This plugin allows to controll RF 433 MHz actors an receive remote signals from
|
||||
\l{http://www.intertechno.at}{Intertechno} devices.
|
||||
|
||||
Following devices are supported:
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\chapter Supported devices
|
||||
\section1 Actors
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li IT-1500
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li IT-3500L
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li ITLR-3500
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li ITLR-3500T
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li IT-2300
|
||||
\li Multiple Socket Switch
|
||||
\row
|
||||
\li GRR-3500
|
||||
\li Outdoor Socket Switch
|
||||
\row
|
||||
\li IT-3500
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li ITR-3500
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li PA3-1000
|
||||
\li Socket Switch
|
||||
\row
|
||||
\li IT-300L
|
||||
\li Socket Dimmer
|
||||
\row
|
||||
\li ITLR-300
|
||||
\li Socket Dimmer
|
||||
\row
|
||||
\li IT-300
|
||||
\li Socket Dimmer
|
||||
\row
|
||||
\li ITR-300
|
||||
\li Socket Dimmer
|
||||
\row
|
||||
\li ITL-1000
|
||||
\li Switch
|
||||
\row
|
||||
\li ITL-230
|
||||
\li Switch
|
||||
\row
|
||||
\li CMR-1000
|
||||
\li Switch
|
||||
\row
|
||||
\li ITDL-1000
|
||||
\li Switch
|
||||
\row
|
||||
\li CMR-1224
|
||||
\li Switch
|
||||
\row
|
||||
\li ITL-3500
|
||||
\li Switch
|
||||
\row
|
||||
\li ITE-1000
|
||||
\li Switch
|
||||
\row
|
||||
\li ITL-300
|
||||
\li Dimmer
|
||||
\row
|
||||
\li ITL-210
|
||||
\li Dimmer
|
||||
\row
|
||||
\li ITL-150
|
||||
\li Dimmer
|
||||
\row
|
||||
\li ITL-250
|
||||
\li Dimmer (LED)
|
||||
\row
|
||||
\li CMR-300
|
||||
\li Dimmer
|
||||
\row
|
||||
\li ITE-300
|
||||
\li Dimmer
|
||||
\row
|
||||
\li CMR-500
|
||||
\li Jalousie Switch
|
||||
\row
|
||||
\li ITL-500
|
||||
\li Jalousie Switch
|
||||
\row
|
||||
\li ITL-1000
|
||||
\li Jalousie Switch
|
||||
\row
|
||||
\li LBUR-100
|
||||
\li Lamp Switch
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\section1 Remotes
|
||||
\table
|
||||
\header
|
||||
\li Model
|
||||
\li Device Type
|
||||
\row
|
||||
\li ITK-200
|
||||
\li Mini Remote
|
||||
\row
|
||||
\li ITS-150
|
||||
\li Remote
|
||||
\row
|
||||
\li ITZ-500
|
||||
\li Remote/Timer
|
||||
\row
|
||||
\li YWT-8500
|
||||
\li Wall Sender
|
||||
\row
|
||||
\li ITW-852
|
||||
\li Wall Sender
|
||||
\row
|
||||
\li ITM-100
|
||||
\li Magnet Sensor
|
||||
\row
|
||||
\li PIR-5000
|
||||
\li Moving Sensor
|
||||
\endtable
|
||||
*/
|
||||
\quotefile plugins/deviceplugins/intertechno/devicepluginintertechno.json
|
||||
*/
|
||||
|
||||
#include "devicepluginintertechno.h"
|
||||
|
||||
|
||||
@ -16,6 +16,28 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
/*!
|
||||
\page lgsmarttv.html
|
||||
\title LG Smart Tv
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup network
|
||||
|
||||
This plugin allows to interact with \l{http://www.lg.com/us/experience-tvs/smart-tv}{LG Smart Tv's}.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/lgsmarttv/devicepluginlgsmarttv.json
|
||||
*/
|
||||
|
||||
#include "devicepluginlgsmarttv.h"
|
||||
|
||||
#include "plugin/device.h"
|
||||
|
||||
@ -16,6 +16,30 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
/*!
|
||||
\page lirc.html
|
||||
\title LIRC
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup network
|
||||
|
||||
This plugin allows to interact with \l{http://www.lirc.org/}{LIRC} daemon and controll commonly used remote controls.
|
||||
If lircd (LIRC daemon) is configured on your system, guh will connect to the lirc daemon and all configured remote
|
||||
controls of lircd will appear in guh.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/lircd/devicepluginlircd.json
|
||||
*/
|
||||
|
||||
#include "devicepluginlircd.h"
|
||||
|
||||
#include "plugin/device.h"
|
||||
|
||||
@ -26,197 +26,35 @@
|
||||
The mail notification plugin allows you to send a mail notification from a mail
|
||||
account by performing an \l{Action}.
|
||||
|
||||
ATTENTION: The password currently will be saved as plain text in the guh configuration file.
|
||||
ATTENTION: The password currently will be saved as plain text in the guh settings file.
|
||||
This will be changed soon...
|
||||
|
||||
\section1 Google Mail Notification
|
||||
\section2 Examples
|
||||
\section3 Adding a Google Mail Notification service
|
||||
In order to add a Google Mail Notification service you need to configure
|
||||
the "Google Mail login" (user), the password for your Gmail account and the address
|
||||
of the recipient.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.AddConfiguredDevice",
|
||||
"params":{
|
||||
"deviceClassId": "{38ed6ffc-f43b-48f8-aea2-8d63cdcad87e}",
|
||||
"deviceParams":{
|
||||
"user":"my.address@gmail.com",
|
||||
"password":"my_secret_password"
|
||||
"recipient":"recipient@example.com"}
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
Before the device will be added, the plugin trys to login. If the username or the password
|
||||
are wrong, an error message will be send.
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceId": "{0b99ea27-896a-4a23-a044-3f1441f6a9a7}",
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\chapter Supported services
|
||||
\section2 Google Mail
|
||||
With the Google Mail Notification you can send a mail with your gmail address to a recipient. The
|
||||
username is your mail address (e.g. "chuck.norris@gmail.com"). The recipient will receive the notification
|
||||
from your gmail account.
|
||||
|
||||
\section3 Sending a mail notification
|
||||
In order to send a mail notification from a configured Gmail service use following message
|
||||
format.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Actions.ExecuteAction",
|
||||
"params":{
|
||||
"actionTypeId": "{fa54f834-34d0-4aaf-b0ab-a165191d39d3}",
|
||||
"deviceId":"{0b99ea27-896a-4a23-a044-3f1441f6a9a7}",
|
||||
"params":{
|
||||
"subject":"GUH notification",
|
||||
"body":"Hello world!"
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\section2 Yahoo Mail
|
||||
The Yahoo Mail Notification you can send a mail with your yahoo address to a recipient. The username
|
||||
is your mail address (e.g. "chuck.norris@yahoo.com"). The recipient will receive the notification
|
||||
from your yahoo account.
|
||||
|
||||
\section2 Plugin propertys:
|
||||
\section3 Plugin parameters
|
||||
Each configured plugin has following paramters:
|
||||
\section2 Custom Mail
|
||||
With the Custom Mail Notification you can set up a custom SMTP connection. The supported authentification
|
||||
methods are ["PLAIN", "LOGIN"], the supported encryption methods are ["NONE", "SSL", "TLS"].
|
||||
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li user
|
||||
\li This parameter holds the username (mail address) for the login
|
||||
\li string
|
||||
\row
|
||||
\li password
|
||||
\li This parameter holds the password for the login
|
||||
\li string
|
||||
\row
|
||||
\li recipient
|
||||
\li This parameter holds the mail address of the recipient of the notification
|
||||
\li string
|
||||
\endtable
|
||||
|
||||
\section3 Plugin actions:
|
||||
Following list contains all plugin \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li sendMail
|
||||
\li This action sends a mail to the recipient address of the configured device
|
||||
with a given subject and text body.
|
||||
\li fa54f834-34d0-4aaf-b0ab-a165191d39d3
|
||||
\endtable
|
||||
|
||||
\section1 Custom Mail Notification
|
||||
\section2 Examples
|
||||
\section3 Adding a Custom Mail Notification service
|
||||
In order to add a Custom Mail Notification service you need to configure
|
||||
the smtp host address, the login (user), the password, the address
|
||||
of the recipient, the connection port and the authentification method (PLAIN or LOGIN).
|
||||
The plugin currently supports only SSL encryption.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.AddConfiguredDevice",
|
||||
"params":{
|
||||
"deviceClassId": "{38ed6ffc-f43b-48f8-aea2-8d63cdcad87e}",
|
||||
"deviceParams":{
|
||||
"user":"my.address@gmail.com",
|
||||
"password":"my_secret_password"
|
||||
"recipient":"recipient@example.com"}
|
||||
"host":"smtp.mydomain.com"}
|
||||
"port":"465"}
|
||||
"auth":"PLAIN"}
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
Before the device will be added, the plugin trys to login. If the username or the password
|
||||
are wrong, an error message will be send.
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceId": "{0b99ea27-896a-4a23-a044-3f1441f6a9a7}",
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
|
||||
\section2 Plugin propertys:
|
||||
\section3 Plugin parameters
|
||||
Each configured plugin has following paramters:
|
||||
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li user
|
||||
\li This parameter holds the username (mail address) for the login
|
||||
\li string
|
||||
\row
|
||||
\li password
|
||||
\li This parameter holds the password for the login
|
||||
\li string
|
||||
\row
|
||||
\li recipient
|
||||
\li This parameter holds the mail address of the recipient of the notification
|
||||
\li string
|
||||
\row
|
||||
\li host
|
||||
\li This parameter holds the smtp host address from the mail server.
|
||||
\li string
|
||||
\row
|
||||
\li port
|
||||
\li This parameter holds the smtp port from the mail server.
|
||||
\li int
|
||||
\row
|
||||
\li auth
|
||||
\li This parameter holds the authentification method from the mail server.
|
||||
Possible values are: PLAIN, LOGIN
|
||||
\li string
|
||||
\endtable
|
||||
|
||||
\section3 Plugin actions:
|
||||
Following list contains all plugin \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li sendMail
|
||||
\li This action sends a mail to the recipient address of the configured device
|
||||
with a given subject and text body.
|
||||
\li fa54f834-34d0-4aaf-b0ab-a165191d39d3
|
||||
\endtable
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/mailnotification/devicepluginmailnotification.json
|
||||
*/
|
||||
|
||||
#include "devicepluginmailnotification.h"
|
||||
|
||||
@ -26,246 +26,23 @@
|
||||
This plugin alows you to get the current weather data from \l{http://www.openweathermap.org}.
|
||||
The plugin offers two different search methods: if the user searches for a empty string,
|
||||
the plugin makes an autodetction with the WAN ip and offers the user the found autodetectresult.
|
||||
Otherwise the plugin return the list with the found searchresults.
|
||||
The autodetection function uses the geolocation of your WAN ip and searches all available weather
|
||||
stations in a radius of 2.5 km. Otherwise the plugin returns the list of the found search results
|
||||
from the search string.
|
||||
|
||||
\section1 Examples
|
||||
\section2 Autodetect location
|
||||
If you want to autodetect your location dend a discovery request with an empty string.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.GetDiscoveredDevices",
|
||||
"params":{
|
||||
"deviceClassId":"985195aa-17ad-4530-88a4-cdd753d747d7",
|
||||
"discoveryParams": {
|
||||
"location":""
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response from autodetection...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceDescriptors": [
|
||||
{
|
||||
"description": "AT",
|
||||
"id": "{75607672-5354-428f-a752-910140c22b18}",
|
||||
"title": "Vienna"
|
||||
}
|
||||
],
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\section2 Searching city
|
||||
If you want to search a string send following discovery message:
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.GetDiscoveredDevices",
|
||||
"params":{
|
||||
"deviceClassId":"985195aa-17ad-4530-88a4-cdd753d747d7",
|
||||
"discoveryParams": {
|
||||
"location":"Vie"
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceDescriptors": [
|
||||
{
|
||||
"description": "DE",
|
||||
"id": "{6dc6be43-5bdc-4dbd-bcbf-6f8e1f90000b}",
|
||||
"title": "Viersen"
|
||||
},
|
||||
{
|
||||
"description": "VN",
|
||||
"id": "{af275298-77f1-40b4-843a-d0f3c7aef6bb}",
|
||||
"title": "Viet Tri"
|
||||
},
|
||||
{
|
||||
"description": "DE",
|
||||
"id": "{86a4ab63-41b4-4348-9830-4bf6c87474bf}",
|
||||
"title": "Viernheim"
|
||||
},
|
||||
{
|
||||
"description": "AR",
|
||||
"id": "{3b5f8eea-6159-4375-bd01-1f07de9c3a9d}",
|
||||
"title": "Viedma"
|
||||
},
|
||||
{
|
||||
"description": "FR",
|
||||
"id": "{f3b91f26-3275-4bb4-a594-924202a2124e}",
|
||||
"title": "Vierzon"
|
||||
},
|
||||
{
|
||||
"description": "AT",
|
||||
"id": "{b59d15f7-f52b-43a0-a9c5-a3fa80cbc2bd}",
|
||||
"title": "Vienna"
|
||||
}
|
||||
],
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\section2 Adding a discovered city
|
||||
If you want to add a dicovered city send the add "AddConfiguredDevice" message
|
||||
with the deviceDescriptorId from the searchresult list. In this example the id for Vienna.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.AddConfiguredDevice",
|
||||
"params":{
|
||||
"deviceClassId":"985195aa-17ad-4530-88a4-cdd753d747d7",
|
||||
"deviceDescriptorId": "b59d15f7-f52b-43a0-a9c5-a3fa80cbc2bd"
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceId": "{af0f1958-b901-48da-ad97-d4d64af88cf8}",
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\underline{NOTE}: If you are using a VPN connection, the autodetection will show the results around of your VPN location.
|
||||
|
||||
\section1 Plugin propertys:
|
||||
\section2 Plugin parameters
|
||||
Each configured plugin has following paramters:
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li location
|
||||
\li This parameter holds the name of the city
|
||||
\li string
|
||||
\row
|
||||
\li country
|
||||
\li This parameter holds the country of the city
|
||||
\li string
|
||||
\row
|
||||
\li id
|
||||
\li This parameter holds the city id from \l{http://www.openweathermap.org}
|
||||
\li string
|
||||
\endtable
|
||||
|
||||
\section2 Actions
|
||||
Following list contains all plugin \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li refresh
|
||||
\li This action refreshes all states.
|
||||
\li cfbc6504-d86f-4856-8dfa-97b6fbb385e4
|
||||
\endtable
|
||||
|
||||
\section2 States
|
||||
Following list contains all plugin \l{State}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\li Data Type
|
||||
\row
|
||||
\li city name
|
||||
\li The name of the city
|
||||
\li fd9e7b7f-cf1f-4093-8f6d-fff5b223471f
|
||||
\li string
|
||||
\row
|
||||
\li city id
|
||||
\li The city ID for openweathermap.org
|
||||
\li c6ef1c07-e817-4251-b83d-115bbf6f0ae9
|
||||
\li string
|
||||
\row
|
||||
\li country name
|
||||
\li The country name
|
||||
\li 0e607a5f-1938-4e77-a146-15e9ad15bfad
|
||||
\li string
|
||||
\row
|
||||
\li last update
|
||||
\li The timestamp of the weather data from the weatherstation in unixtime
|
||||
format
|
||||
\li 98e48095-87da-47a4-b812-28c6c17a3e76
|
||||
\li unsignend int
|
||||
\row
|
||||
\li temperature
|
||||
\li Current temperature [Celsius]
|
||||
\li 2f949fa3-ff21-4721-87ec-0a5c9d0a5b8a
|
||||
\li double
|
||||
\row
|
||||
\li temperature minimum
|
||||
\li Today temperature minimum [Clesius]
|
||||
\li 701338b3-80de-4c95-8abf-26f44529d620
|
||||
\li double
|
||||
\row
|
||||
\li temperature maximum
|
||||
\li Today temperature maximum [Clesius]
|
||||
\li f69bedd2-c997-4a7d-9242-76bf2aab3d3d
|
||||
\li double
|
||||
\row
|
||||
\li humidity
|
||||
\li Current relative humidity [%]
|
||||
\li 3f01c9f0-206b-4477-afa2-80d6e5e54fbb
|
||||
\li int
|
||||
\row
|
||||
\li pressure
|
||||
\li Current pressure [hPa]
|
||||
\li 6a57b6e9-7010-4a89-982c-ce0bc2a71f11
|
||||
\li double
|
||||
\row
|
||||
\li wind speed
|
||||
\li Current wind speed [m/s]
|
||||
\li 12dc85a9-825d-4375-bef4-abd66e9e301b
|
||||
\li double
|
||||
\row
|
||||
\li wind direction
|
||||
\li The wind direction rellative to the north pole [degree]
|
||||
\li a8b0383c-d615-41fe-82b8-9b797f045cc9
|
||||
\li int
|
||||
\row
|
||||
\li cloudiness
|
||||
\li This value represents how much of the sky is clowdy [%]
|
||||
\li 0c1dc881-560e-40ac-a4a1-9ab69138cfe3
|
||||
\li int
|
||||
\row
|
||||
\li weather description
|
||||
\li This string describes the current weather condition in clear words
|
||||
\li e71d98e3-ebd8-4abf-ad25-9ecc2d05276a
|
||||
\li string
|
||||
\row
|
||||
\li sunset
|
||||
\li The time of todays sunset in unixtime format
|
||||
\li 5dd6f5a3-25d6-4e60-82ca-e934ad76a4b6
|
||||
\li unsigned int
|
||||
\row
|
||||
\li sunrise
|
||||
\li The time of todays sunrise in unixtime format
|
||||
\li 413b3fc6-bd1c-46fb-8c86-03096254f94f
|
||||
\li unsigned int
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/openweathermap/devicepluginopenweathermap.json
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -16,6 +16,29 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
/*!
|
||||
\page philipshue.html
|
||||
\title Philips hue
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup network
|
||||
|
||||
This plugin allows to interact with the \l{http://www2.meethue.com/}{Philips hue} bridge. Each light bulp connected to the bridge
|
||||
will appear automatically in the system, once the bridge is added to guh.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/philipshue/devicepluginphilipshue.json
|
||||
*/
|
||||
|
||||
#include "devicepluginphilipshue.h"
|
||||
|
||||
#include "plugin/device.h"
|
||||
|
||||
@ -20,97 +20,25 @@
|
||||
\title Wake On Lan
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup services
|
||||
\ingroup network
|
||||
|
||||
Wake-on-LAN (WOL) is an Ethernet computer networking standard that allows a computer
|
||||
to be turned on or awakened by a network message. This plugin allows you to send a
|
||||
a "magic packet" to a certain mac address in the local network. The WOL service must
|
||||
be enabled on the host computer.
|
||||
a "magic packet" to a certain mac address in the local network.
|
||||
|
||||
\section1 Examples
|
||||
\section2 Adding a WOL device
|
||||
In order to add a WOL device you need to know the mac address of the host computer you
|
||||
want to wake up.
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Devices.AddConfiguredDevice",
|
||||
"params":{
|
||||
"deviceClassId": "{3c8f2447-dcd0-4882-8c09-99e579e4d24c}",
|
||||
"deviceParams":{
|
||||
"mac":"00:11:22:33:44:55",
|
||||
"name":"Wohnzimmer-PC"
|
||||
}
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"deviceId": "{76347a44-2091-428c-b320-5a8db4c359f6}",
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\underline{NOTE}: The WOL service has to be enabled on the host computer.
|
||||
|
||||
\section2 Wake up a device
|
||||
In order to wake up a configured device send following message:
|
||||
\code
|
||||
{
|
||||
"id":1,
|
||||
"method":"Actions.ExecuteAction",
|
||||
"params":{
|
||||
"actionTypeId": "{fb9b9d87-218f-4f0d-9e16-39f8a105029a}",
|
||||
"deviceId":"{76347a44-2091-428c-b320-5a8db4c359f6}"
|
||||
}
|
||||
}
|
||||
\endcode
|
||||
response...
|
||||
\code
|
||||
{
|
||||
"id": 1,
|
||||
"params": {
|
||||
"errorMessage": "",
|
||||
"success": true
|
||||
},
|
||||
"status": "success"
|
||||
}
|
||||
\endcode
|
||||
\section1 Plugin propertys:
|
||||
\section2 Plugin parameters
|
||||
Each configured plugin has following paramters:
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li name
|
||||
\li This parameter holds the name/description of the target computer
|
||||
\li string
|
||||
\row
|
||||
\li mac
|
||||
\li This parameter holds the mac address of the target computer
|
||||
\li string
|
||||
\endtable
|
||||
\section2 Plugin actions:
|
||||
Following list contains all plugin \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li wakeup
|
||||
\li This action send the "magic package" to the mac address configured in the device parameter.
|
||||
\li fb9b9d87-218f-4f0d-9e16-39f8a105029a
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/wakeonlan/devicepluginwakeonlan.json
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -27,102 +27,17 @@
|
||||
\l{http://www.belkin.com/de/PRODUKTE/home-automation/c/wemo-home-automation/}{Belkin}
|
||||
home automation system.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
\chapter Supported devices
|
||||
\section1 WeMo Switch
|
||||
Currently, there is just the \l{http://www.belkin.com/de/F7C027-Belkin/p/P-F7C027/}
|
||||
{WeMo Switch} supportet. For the first setup, the original app from WeMo (only availabel for
|
||||
iOS and Android Smartphones) will be needed. Once the WeMo switch is in the private network,
|
||||
the device can be discovered and controlled from guh.
|
||||
|
||||
\e{\underline{Note:} when the WeMo Switch will not be reachabel, remove the device from guh and re-discover/re-add
|
||||
it, because the port of the device can change (between 49152-49155 so fare...).}
|
||||
|
||||
\section2 Device propertys
|
||||
\section3 Device parameters
|
||||
Following list contains all device Params:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li Data Type
|
||||
\row
|
||||
\li name
|
||||
\li Holds the name of the device
|
||||
\li string
|
||||
\row
|
||||
\li uuid
|
||||
\li Holds the uuid of the device (set from the manufacturer)
|
||||
\li string
|
||||
\row
|
||||
\li model
|
||||
\li Describes the model
|
||||
\li string
|
||||
\row
|
||||
\li host address
|
||||
\li Holds the ip address from the device
|
||||
\li string
|
||||
\row
|
||||
\li port
|
||||
\li Holds the port, over which the switch is reachable
|
||||
\li int
|
||||
\row
|
||||
\li model description
|
||||
\li Holds the description of the model (given from the manufacturer)
|
||||
\li string
|
||||
\row
|
||||
\li serial number
|
||||
\li Holds the serial number of the WeMo Switch
|
||||
\li string
|
||||
\row
|
||||
\li location
|
||||
\li Holds the url of the device information page (XML)
|
||||
\li string
|
||||
\row
|
||||
\li manufacturer
|
||||
\li Holds the name of the manufacturer (Belkin International Inc.)
|
||||
\li string
|
||||
\row
|
||||
\li device type
|
||||
\li Holds the type of the device (urn:Belkin:device:controllee:1)
|
||||
\li string
|
||||
\endtable
|
||||
|
||||
\section3 Device states
|
||||
Following list contains all device \l{State}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\li Data Type
|
||||
\row
|
||||
\li power
|
||||
\li Thes state holds the power sate of the switch. If the WeMo Switch power state will be changed
|
||||
outside of guh (with the button or with the WeMo app), guh will recognize that here.
|
||||
\li 269f25eb-d0b7-4144-b9ef-801f4ff3e90c
|
||||
\li bool
|
||||
\row
|
||||
\li reachable
|
||||
\li Thes state gives the information, if the WeMo switch is currently reachable or not. If he's not
|
||||
reachabel, it can't be controlled.
|
||||
\li ec2f5b49-585c-4455-a233-b7aa4c608dbc
|
||||
\li bool
|
||||
\endtable
|
||||
|
||||
\section3 Device actions
|
||||
Following list contains all device \l{Action}s:
|
||||
\table
|
||||
\header
|
||||
\li Name
|
||||
\li Description
|
||||
\li UUID
|
||||
\row
|
||||
\li Set power
|
||||
\li With this action you can switch WeMo ON (true) or OFF (false).
|
||||
\li 269f25eb-d0b7-4144-b9ef-801f4ff3e90c
|
||||
\endtable
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/wemo/devicepluginwemo.json
|
||||
*/
|
||||
|
||||
#include "devicepluginwemo.h"
|
||||
|
||||
@ -16,6 +16,31 @@
|
||||
* *
|
||||
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
||||
|
||||
/*!
|
||||
\page wifidetector.html
|
||||
\title WiFi Detector
|
||||
|
||||
\ingroup plugins
|
||||
\ingroup network
|
||||
|
||||
This plugin allows to find and monitor network devices in your local network by using the MAC address.
|
||||
|
||||
\underline{NOTE}: the application \c nmap has to be installed.
|
||||
|
||||
\chapter Plugin properties
|
||||
Following JSON file contains the definition and the description of all available \l{DeviceClass}{DeviceClasses}
|
||||
and \l{Vendor}{Vendors} of this \l{DevicePlugin}.
|
||||
|
||||
Each \l{DeviceClass} has a list of \l{ParamType}{paramTypes}, \l{ActionType}{actionTypes}, \l{StateType}{stateTypes}
|
||||
and \l{EventType}{eventTypes}. The \l{DeviceClass::CreateMethod}{createMethods} parameter describes how the \l{Device}
|
||||
will be created in the system. A device can have more than one \l{DeviceClass::CreateMethod}{CreateMethod}.
|
||||
The \l{DeviceClass::SetupMethod}{setupMethod} describes the setup method of the \l{Device}.
|
||||
The detailed implementation of each \l{DeviceClass} can be found in the source code.
|
||||
|
||||
\quotefile plugins/deviceplugins/wifidetector/devicepluginwifidetector.json
|
||||
*/
|
||||
|
||||
|
||||
#include "devicepluginwifidetector.h"
|
||||
|
||||
#include "plugin/device.h"
|
||||
|
||||
Reference in New Issue
Block a user