added UIs and auto generated list of bindings

Signed-off-by: Kai Kreuzer <kai@openhab.org>
pull/1/merge
Kai Kreuzer 2016-05-17 18:29:00 +02:00
parent 84125061d4
commit 531cc8be0c
18 changed files with 317 additions and 198 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
_site
.sass-cache

View File

@ -1,36 +1,37 @@
id,label
digitalstrom, digitalSTROM
fsinternetradio, FS Internet Radio
hue, Philips Hue
lifx, LIFX
ntp, NTP
sonos, Sonos
wemo, Belkin Wemo
yahooweather, YahooWeather
astro, Astro
autelis, Autelis Pool Control
avmfritz, AVM FRITZ!
dscalarm,DSC Alarm
freebox, Freebox Configuration
harmonyhub, Logitech Harmony Hub
homematic, Homematic
ipp, IPP
keba, Keba
kostalinverter, Kostal inverter
lutron, Lutron
max,MAX!
netatmo, Netatmo
network, Network
opensprinkler, OpenSprinkler
orvibo, Orvibo
pioneeravr, PioneerAVR Configuration
pulseaudio, Pulseaudio
rfxcom, RFXCOM
rme, RME
samsungtv, Samsung TV
smaenergymeter, SMA Energy Meter
squeezebox, Logitech Squeezebox
tesla, Tesla
urtsi, Somfy URTSI II
vitotronic, vitotronic
zwave, ZWave
id,label,description
digitalstrom,digitalSTROM,"This binding integrates the [digitalSTROM-System](http://www.digitalstrom.de/)."
fsinternetradio,FS Internet Radio,"This binding integrates internet radios based on the [Frontier Silicon chipset](http://www.frontier-silicon.com/)."
hue,Philips Hue,"This binding integrates the [Philips Hue Lighting system](http://www.meethue.com)."
lifx,LIFX,"This binding integrates the [LIFX LED Bulb](http://www.lifx.com/). All LIFX bulbs are directly connected to the WLAN and the binding communicates with them over a UDP protocol."
ntp,NTP,"The NTP binding is used for displaying the local date and time based update from an NTP server."
sonos,Sonos,"This binding integrates the [Sonos Multi-Room Audio system](http://www.sonos.com)."
wemo,Belkin Wemo,"This binding integrates the [Belkin WeMo Family](http://www.belkin.com/us/Products/c/home-automation/)."
yahooweather,YahooWeather,"This binding uses the [Yahoo Weather service](https://developer.yahoo.com/weather/) for providing current weather information."
astro,Astro,"The Astro binding is used for calculating many DateTime and positional values for sun and moon."
autelis,Autelis Pool Control,"Autelis manufactures a network enabled pool interface for many popular pool systems. See [the Autelis website](http://www.autelis.com) and the [Autelis Command Protocol](http://www.autelis.com/wiki/index.php?title=Pool_Control_(PI)_HTTP_Command_Reference) for more information."
avmfritz,AVM FRITZ!,"The binding integrates the AHA ( [AVM Home Automation](http://avm.de/ratgeber/smart-home/) ) system."
dscalarm,DSC Alarm,"This is an OpenHAB binding for a DSC PowerSeries Alarm System utilizing the EyezOn Envisalink 3/2DS interface or the DSC IT-100 RS-232 interface."
freebox,Freebox,"This binding integrates the [Freebox Revolution](http://www.free.fr/adsl/freebox-revolution.html) to your openHab installation."
harmonyhub,Logitech Harmony Hub,"The Harmony Hub binding is used to enable communication between openHAB2 and multiple Logitech Harmony Hub devices. The API exposed by the Harmony Hub is relatively limited, but it does allow for reading the current activity as well as setting the activity and sending device commands."
homematic,Homematic,"This is the binding for the [eQ-3 Homematic Solution](http://www.eq-3.de/)."
ipp,IPP,"This binding integrates printers, which implement the Internet Printing protocol (IPP). This is the successor of the CUPS binding."
keba,Keba,"This binding integrates the [Keba KeContact EV Charging Stations](http://www.keba.com)."
kostalinverter,Kostal inverter,"![LIFX E27](doc/kostalpico.jpg)"
lutron,Lutron,"This binding integrates with [Lutron](http://www.lutron.com) light control systems."
max,MAX!,"This is the binding for the [eQ-3 MAX! Home Solution](http://www.eq-3.de/)."
netatmo,Netatmo,"The Netatmo binding integrates the following Netatmo products :"
network,Network,"This binding integrates a way to check whether a device is currently available on the network and the required ping time."
opensprinkler,OpenSprinkler,"This binding allows allows basic control of the OpenSprinkler and OpenSprinkler PI (Plus) devices. Stations can be controlled to be turned on or off and rain sensor state can be read."
orvibo,Orvibo,"This binding integrates Orvibo devices that communicate using UDP. Primarily this was designed for S20 Wifi Sockets but other products using the same protocol may be implemented in future."
pioneeravr,PioneerAVR Configuration,"The binding can auto-discover the Pioneer AVRs present on your local network. The auto-discovery is enabled by default. To disable it, you can create a file in the services directory called pioneeravr.cfg with the following content:"
pulseaudio,Pulseaudio,"This binding integrates pulseaudio devices."
rfxcom,RFXCOM,"This binding integrates large number of sensors and actuators from several different manufactures throug the [RFXCOM transceivers](http://www.rfxcom.com)."
rme,RME,"This binding integrates the RME RainManager rain water pump and management system"
samsungtv,Samsung TV,"This binding integrates the [Samsung TV's](http://www.samsung.com)."
smaenergymeter,SMA Energy Meter,"This Binding is used to display the measured values of a SMA Energy Meter device. It shows purchased and grid feed-in power and energy."
squeezebox,Logitech Squeezebox,"This binding integrates the [Logitech Media Server](http://www.mysqueezebox.com) and compatible Squeeze players."
systeminfo,Systeminfo,"System information Binding provides operating system and hardware information including:"
tesla,Tesla,"This binding integrates the [Tesla Electrical Vehicle](http://www.teslamotors.com)."
urtsi,Somfy URTSI II,"The addressable Universal RTS Interface II (URTSI II) can be used to communicate between home automation or other third party systems and SOMFYs RTS Motors and controls. It is capable of individual or group control, and can be operated via infrared remote, RS232 and RS485 serial communication. Once an input is activated, an RTS radio command is sent to the automated window treatment."
vitotronic,vitotronic,"Viessmann heating systems with vitotronic has a optolink Interface for maintenance."
zwave,ZWave,"The ZWave binding supports an interface to a wireless ZWave home automation network."

1 id label description
2 digitalstrom digitalSTROM This binding integrates the [digitalSTROM-System](http://www.digitalstrom.de/).
3 fsinternetradio FS Internet Radio This binding integrates internet radios based on the [Frontier Silicon chipset](http://www.frontier-silicon.com/).
4 hue Philips Hue This binding integrates the [Philips Hue Lighting system](http://www.meethue.com).
5 lifx LIFX This binding integrates the [LIFX LED Bulb](http://www.lifx.com/). All LIFX bulbs are directly connected to the WLAN and the binding communicates with them over a UDP protocol.
6 ntp NTP The NTP binding is used for displaying the local date and time based update from an NTP server.
7 sonos Sonos This binding integrates the [Sonos Multi-Room Audio system](http://www.sonos.com).
8 wemo Belkin Wemo This binding integrates the [Belkin WeMo Family](http://www.belkin.com/us/Products/c/home-automation/).
9 yahooweather YahooWeather This binding uses the [Yahoo Weather service](https://developer.yahoo.com/weather/) for providing current weather information.
10 astro Astro The Astro binding is used for calculating many DateTime and positional values for sun and moon.
11 autelis Autelis Pool Control Autelis manufactures a network enabled pool interface for many popular pool systems. See [the Autelis website](http://www.autelis.com) and the [Autelis Command Protocol](http://www.autelis.com/wiki/index.php?title=Pool_Control_(PI)_HTTP_Command_Reference) for more information.
12 avmfritz AVM FRITZ! The binding integrates the AHA ( [AVM Home Automation](http://avm.de/ratgeber/smart-home/) ) system.
13 dscalarm DSC Alarm This is an OpenHAB binding for a DSC PowerSeries Alarm System utilizing the EyezOn Envisalink 3/2DS interface or the DSC IT-100 RS-232 interface.
14 freebox Freebox Configuration Freebox This binding integrates the [Freebox Revolution](http://www.free.fr/adsl/freebox-revolution.html) to your openHab installation.
15 harmonyhub Logitech Harmony Hub The Harmony Hub binding is used to enable communication between openHAB2 and multiple Logitech Harmony Hub devices. The API exposed by the Harmony Hub is relatively limited, but it does allow for reading the current activity as well as setting the activity and sending device commands.
16 homematic Homematic This is the binding for the [eQ-3 Homematic Solution](http://www.eq-3.de/).
17 ipp IPP This binding integrates printers, which implement the Internet Printing protocol (IPP). This is the successor of the CUPS binding.
18 keba Keba This binding integrates the [Keba KeContact EV Charging Stations](http://www.keba.com).
19 kostalinverter Kostal inverter ![LIFX E27](doc/kostalpico.jpg)
20 lutron Lutron This binding integrates with [Lutron](http://www.lutron.com) light control systems.
21 max MAX! This is the binding for the [eQ-3 MAX! Home Solution](http://www.eq-3.de/).
22 netatmo Netatmo The Netatmo binding integrates the following Netatmo products :
23 network Network This binding integrates a way to check whether a device is currently available on the network and the required ping time.
24 opensprinkler OpenSprinkler This binding allows allows basic control of the OpenSprinkler and OpenSprinkler PI (Plus) devices. Stations can be controlled to be turned on or off and rain sensor state can be read.
25 orvibo Orvibo This binding integrates Orvibo devices that communicate using UDP. Primarily this was designed for S20 Wifi Sockets but other products using the same protocol may be implemented in future.
26 pioneeravr PioneerAVR Configuration The binding can auto-discover the Pioneer AVRs present on your local network. The auto-discovery is enabled by default. To disable it, you can create a file in the services directory called pioneeravr.cfg with the following content:
27 pulseaudio Pulseaudio This binding integrates pulseaudio devices.
28 rfxcom RFXCOM This binding integrates large number of sensors and actuators from several different manufactures throug the [RFXCOM transceivers](http://www.rfxcom.com).
29 rme RME This binding integrates the RME RainManager rain water pump and management system
30 samsungtv Samsung TV This binding integrates the [Samsung TV's](http://www.samsung.com).
31 smaenergymeter SMA Energy Meter This Binding is used to display the measured values of a SMA Energy Meter device. It shows purchased and grid feed-in power and energy.
32 squeezebox Logitech Squeezebox This binding integrates the [Logitech Media Server](http://www.mysqueezebox.com) and compatible Squeeze players.
33 tesla systeminfo Tesla Systeminfo System information Binding provides operating system and hardware information including:
34 urtsi tesla Somfy URTSI II Tesla This binding integrates the [Tesla Electrical Vehicle](http://www.teslamotors.com).
35 vitotronic urtsi vitotronic Somfy URTSI II The addressable Universal RTS Interface II (URTSI II) can be used to communicate between home automation or other third party systems and SOMFY’s RTS Motors and controls. It is capable of individual or group control, and can be operated via infrared remote, RS232 and RS485 serial communication. Once an input is activated, an RTS radio command is sent to the automated window treatment.
36 zwave vitotronic ZWave vitotronic Viessmann heating systems with vitotronic has a optolink Interface for maintenance.
37 zwave ZWave The ZWave binding supports an interface to a wireless ZWave home automation network.

View File

@ -4,124 +4,17 @@ layout: documentation
{% include base.html %}
# List of available Add-ons
# Available Add-ons
All optional add-ons for openHAB 2 are part of the distribution. This includes all new 2.0 bindings as well as all 1.x add-ons that were reported to be compatible. If you are successfully using a 1.x add-on with the 2.0 runtime, which is not yet on this list, please create a PR for adding it.
All optional add-ons for openHAB 2 are part of the distribution. This includes all new 2.0 bindings as well as all 1.x add-ons that were reported to be compatible.
_Note_: If you are successfully using a 1.x add-on with the 2.0 runtime, which is not yet on this list, please create a PR for adding it!
## 2.0 Bindings
| Add-on Type | Description |
|-------------|----------------------|
|[Bindings](bindings.html)| Bindings integrate physical hardware, external systems and web services in openHAB |
|[User Interfaces](uis.html)| User interfaces are either native smartphone apps or web applications that access the openHAB server through the REST API |
| Binding | Description |
|-------|----------------------|
| [Astro Binding](bindings/astro/readme.html) | Astronomical calculations for sun and moon positions |
| [Autelis Binding](bindings/autelis/readme.html) | Pool controller |
| [AVM Fritz!Box Binding](bindings/avmfritz/readme.html) | currently only supports FRITZ AHA devices |
| [DSCAlarm Binding](bindings/dscalarm/readme.html) | DSC PowerSeries alarm systems |
| [Freebox Binding](bindings/freebox/readme.html) | the french [Freebox Revolution](http://www.free.fr/adsl/freebox-revolution.html) server |
| [HDanywhere Binding](bindings/hdanywhere/) | HDMI matrix |
| [IPP Binding](bindings/ipp/readme.html) | Internet Printing Protocol (replaces 1.x CUPS Binding) |
| [KEBA Binding](bindings/keba/readme.html) | Electric vehicle charging station |
| [Kostal Inverter Binding](bindings/kostalinverter/readme.html) | Photovoltaic converter |
| [FS Internet Radio Binding](bindings/fsinternetradio/readme.html) | Internet radios with chip from Frontier Silicon |
| [LIFX Binding](bindings/lifx/readme.html) | Wifi-enabled LED bulbs |
| [Lutron Binding](bindings/lutron/readme.html) | Dimmers And Lighting Controls |
| [MAX! Binding](bindings/max/readme.html) | Heater control solution by eQ-3 |
| [Network Binding](bindings/network/) | Scans local network (replaces 1.x networkhealth Binding) |
| [NTP Binding](bindings/ntp/readme.html) | NTP time servers |
| [OpenSprinkler Binding](bindings/opensprinkler/readme.html) | Open sprinkler system |
| [PioneerAVR Binding](bindings/pioneeravr/readme.html) | AV receivers by Pioneer |
| [Philips Hue Binding](bindings/hue/readme.html) | LED lighting system |
| [Pulseaudio Binding](bindings/pulseaudio/readme.html) | software-based audio distribution |
| [Rfxcom Binding](bindings/rfxcom/readme.html) | 433MHz radio transceiver and devices |
| [SamsungTV Binding](bindings/samsungtv/readme.html) | Samsung Smart TVs |
| [SMAEnergyMeter Binding](bindings/smaenergymeter/readme.html) | SMA Energy Meter for photovoltaic systems |
| [Sonos Binding](bindings/sonos/readme.html) | Multi-room audio system |
| [Squeezebox Binding](bindings/squeezebox/readme.html) | Logitech's connected speakers |
| [Tesla Binding](bindings/tesla/readme.html) | Teslas Model S Electric Vehicle |
| [Vitotronic Binding](bindings/vitotronic/readme.html) | Heating systems by Viessmann |
| [WeMo Binding](bindings/wemo/readme.html) | Switchable sockets by Belkin |
| [YahooWeather Binding](bindings/yahooweather/readme.html) | Weather information from Yahoo |
| [Z-Wave Binding](bindings/zwave/readme.html) | Z-Wave radio controlled devices |
## Compatible 1.x Add-ons
| Add-on | Type |
|--------|------|
| Anel | Binding |
| Astro | Binding |
| Comfo Air | Binding |
| Denon | Binding |
| DMX (OLA) | Binding |
| Ecobee | Action |
| Ecobee | Binding |
| EDS OWServer | Binding |
| Energenie | Binding |
| Enocean | Binding |
| Enphaseenergy | Binding |
| Epsonprojector | Binding |
| Exec | Binding |
| Freebox | Binding |
| Freeswitch | Binding |
| FS20 | Binding |
| Heatmiser | Binding |
| Homematic | Binding |
| HTTP | Binding |
| IHC | Binding |
| Intertechno | Binding |
| IRtrans | Binding |
| KNX | Binding |
| LCN | Binding |
| Milight | Binding |
| MiOS | Binding |
| Modbus | Binding |
| MQTT | Binding |
| MyQ | Binding |
| NeoHub | Binding |
| Nest | Binding |
| Netatmo | Binding |
| Networkhealth | Binding |
| Nibeheatpump | Binding |
| NTP | Binding |
| Onkyo | Binding |
| OpenEnergyMonitor | Binding |
| OneWire | Binding |
| RFXCOM | Binding |
| RWE SmartHome | Binding |
| Samsung AC | Binding |
| Sapp | Binding |
| Satel | Binding |
| Serial | Binding |
| SNMP | Binding |
| SwegonVentilation | Binding |
| SystemInfo | Binding |
| TCP | Binding |
| Tellstick | Binding |
| Tinkerforge | Binding |
| Weather | Binding |
| WOL | Binding |
| XBMC | Binding |
| ZWave | Binding |
| InfluxDB | Persistence |
| rrd4j | Persistence |
| MySQL | Persistence |
| MongoDB | Persistence |
| JPA | Persistence |
| Mail | Action |
| MiOS | Action |
| Pushover | Action |
| Telegram | Action |
| XBMC | Action |
| XMPP | Action |
| GoogleTTS | TTS engine |
| MaryTTS | TTS engine |
## Currently incompatible 1.x Add-ons:
| Add-on | Type | Reason
|--------|------|------|
| CalDAV | Binding | see [issue 4074](https://github.com/openhab/openhab/issues/4074) |
| InsteonPLM | Binding | see [issue 3922](https://github.com/openhab/openhab/issues/3922) |
| SagerCaster | Binding | Not following the architecture guidelines, see [issue 3754](https://github.com/openhab/openhab/issues/3754) |
| Logging | Persistence | openHAB 2 does not use logback anymore |
...
## Compatible Applications

View File

@ -4,43 +4,15 @@ layout: documentation
{% include base.html %}
# List of available Add-ons
All optional add-ons for openHAB 2 are part of the distribution. This includes all new 2.0 bindings as well as all 1.x add-ons that were reported to be compatible. If you are successfully using a 1.x add-on with the 2.0 runtime, which is not yet on this list, please create a PR for adding it.
# List of available bindings
## 2.0 Bindings
{% assign bindings = site.data.bindings | sort: 'label.toLowerCase()' %}
| Binding | Description |
|-------|----------------------|
| [Astro Binding](bindings/astro/readme.html) | Astronomical calculations for sun and moon positions |
| [Autelis Binding](bindings/autelis/readme.html) | Pool controller |
| [AVM Fritz!Box Binding](bindings/avmfritz/readme.html) | currently only supports FRITZ AHA devices |
| [DSCAlarm Binding](bindings/dscalarm/readme.html) | DSC PowerSeries alarm systems |
| [Freebox Binding](bindings/freebox/readme.html) | the french [Freebox Revolution](http://www.free.fr/adsl/freebox-revolution.html) server |
| [HDanywhere Binding](bindings/hdanywhere/) | HDMI matrix |
| [IPP Binding](bindings/ipp/readme.html) | Internet Printing Protocol (replaces 1.x CUPS Binding) |
| [KEBA Binding](bindings/keba/readme.html) | Electric vehicle charging station |
| [Kostal Inverter Binding](bindings/kostalinverter/readme.html) | Photovoltaic converter |
| [FS Internet Radio Binding](bindings/fsinternetradio/readme.html) | Internet radios with chip from Frontier Silicon |
| [LIFX Binding](bindings/lifx/readme.html) | Wifi-enabled LED bulbs |
| [Lutron Binding](bindings/lutron/readme.html) | Dimmers And Lighting Controls |
| [MAX! Binding](bindings/max/readme.html) | Heater control solution by eQ-3 |
| [Network Binding](bindings/network/) | Scans local network (replaces 1.x networkhealth Binding) |
| [NTP Binding](bindings/ntp/readme.html) | NTP time servers |
| [OpenSprinkler Binding](bindings/opensprinkler/readme.html) | Open sprinkler system |
| [PioneerAVR Binding](bindings/pioneeravr/readme.html) | AV receivers by Pioneer |
| [Philips Hue Binding](bindings/hue/readme.html) | LED lighting system |
| [Pulseaudio Binding](bindings/pulseaudio/readme.html) | software-based audio distribution |
| [Rfxcom Binding](bindings/rfxcom/readme.html) | 433MHz radio transceiver and devices |
| [SamsungTV Binding](bindings/samsungtv/readme.html) | Samsung Smart TVs |
| [SMAEnergyMeter Binding](bindings/smaenergymeter/readme.html) | SMA Energy Meter for photovoltaic systems |
| [Sonos Binding](bindings/sonos/readme.html) | Multi-room audio system |
| [Squeezebox Binding](bindings/squeezebox/readme.html) | Logitech's connected speakers |
| [Tesla Binding](bindings/tesla/readme.html) | Teslas Model S Electric Vehicle |
| [Vitotronic Binding](bindings/vitotronic/readme.html) | Heating systems by Viessmann |
| [WeMo Binding](bindings/wemo/readme.html) | Switchable sockets by Belkin |
| [YahooWeather Binding](bindings/yahooweather/readme.html) | Weather information from Yahoo |
| [Z-Wave Binding](bindings/zwave/readme.html) | Z-Wave radio controlled devices |
{% for binding in bindings %}| [{{ binding.label }}]({{docu}}/features/bindings/{{ binding.id }}/readme.html) | {{ binding.description }} |
{% endfor %}
## Compatible 1.x Add-ons

View File

@ -58,11 +58,14 @@ The things requires the geolocation (latitude, longitude) for which the calculat
## Full Example
Things:
```
astro:sun:home [ geolocation="xx.xxxxxx,xx.xxxxxx", interval=60]
astro:moon:home [ geolocation="xx.xxxxxx,xx.xxxxxx", interval=60]
```
Items:
```
DateTime Sunrise_Time "Sunrise [%1$tH:%1$tM]" { channel="astro:sun:home:rise#start" }
DateTime Sunset_Time "Sunset [%1$tH:%1$tM]" { channel="astro:sun:home:set#start" }

View File

@ -68,7 +68,8 @@ If correct credentials are set in the bridge configuration, connected AHA device
## Full Example
demo.things:
demo.Things:
```
Bridge avm:fritzbox:192.168.178.1 [ ipAddress="192.168.0.64" ] {
FRITZ_DECT_200 DECT1 [ ain="xxxxxxxxxxx" ]

View File

@ -4,7 +4,7 @@ layout: documentation
{% include base.html %}
# Freebox Binding Configuration
# Freebox Binding
This binding integrates the [Freebox Revolution](http://www.free.fr/adsl/freebox-revolution.html) to your openHab installation.

View File

@ -39,7 +39,8 @@ All devices support the following channels (non exhaustive):
## Full Example
demo.things:
demo.Things:
```
Thing keba:kecontactp20:1 [ipAddress="192.168.0.64", refreshInterval=30]
```

View File

@ -73,7 +73,8 @@ Currently there is only one keypad thing type to cover all keypads. Not all chan
## Full Example
demo.things:
demo.Things:
```
lutron:dimmer:theater (lutron:ipbridge:radiora2) [ integrationId=8, fadeOutTime=2 ]
lutron:occupancysensor:theater (lutron:ipbridge:radiora2) [ integrationId=9 ]

View File

@ -41,7 +41,8 @@ All devices support some of the following channels:
## Full Example
demo.things:
demo.Things:
```
network:device:1 [ hostname="192.168.0.64", port="0", retry="1", timeout="5000", refresh_interval="60000", use_system_ping="false" ]
```

View File

@ -102,7 +102,8 @@ The following are only support by the OpenSprinkler using the HTTP API interface
## Full Example
demo.things:
demo.Things:
```
opensprinkler:http:1 [ hostname="192.168.1.23", port=80, password="opendoor", refresh=60 ]
```

View File

@ -80,7 +80,8 @@ Here after are the ID values of the input sources:
##Full example
*demo.things:
*demo.Things:
```
pioneeravr:ipAvr:vsx921 [ address="192.168.188.89" ]
```

View File

@ -33,7 +33,7 @@ The Samsung TV Thing requires the host name and port address as a configuration
E.g.
```
Thing samsungtv:tv:livingroom [ hostname="192.168.1.10", port=55000, refreshInterval=1000]
Thing samsungtv:tv:livingroom [ hostName="192.168.1.10", port=55000, refreshInterval=1000]
```
## Channels

View File

@ -0,0 +1,203 @@
---
layout: documentation
---
{% include base.html %}
# Systeminfo Binding
System information Binding provides operating system and hardware information including:
- Operating system name, version and manufacturer
- CPU average recent load and load for last 1, 5, 15 minutes, name, description, number of physical and logical cores, running threads number, system uptime
- Free, total and available memory
- Free, total and available swap memory
- Hard drive name, model and serial number
- Free, total, available storage space and storage type (NTSFS, FAT32 ..)
- Battery information - estimated remaining time, capacity, name
- Sensors information - CPU voltage and temperature, fan speeds
- Display information
- Network IP,name and adapter name, mac, data sent and received, packages sent and received
The binding uses [oshi](https://github.com/dblock/oshi) API to access this information regardless of the underlying platform and does not need any native parts.
## Supported Things
The binding supports only one thing type - **computer**. This thing represents a system with one storage volume, one display device and one network adapter.
The thing has the following properties:
- `cpu_logicalCores` - Number of CPU logical cores
- `cpu_physicalCores` - Number of CPU physical cores
- `os_manufacturer` - The manufacturer of the operating system
- `os_version` - The version of the operating system
- `os_family` - The family of the operating system
If multiple storage or display devices support is needed, new thing type has to be defined. This is workaround until [this issue] (https://github.com/eclipse/smarthome/issues/588) is resolved and it is possible to add dynamically channels to DSL defined thing.
## Discovery
The discovery service implementation tries to resolve the computer name. If the resolving process fails, the computer name is set to "Unknown". In both cases it creates a Discovery Result with thing type **computer**.
When [this issue] (https://github.com/eclipse/smarthome/issues/1118) is resolved it will be possible to implement creation of dynamic channels (e.g. the binding will scan how much storage devices are present and create channel groups for them). At the moment this is not supported.
## Binding configuration
No binding configuration required.
## Thing configuration
The configuration of the Thing gives the user the possibility to update channels at different intervals.
The thing has two configuration parameters:
* **interval_high** - refresh interval in seconds for channels with 'High' priority configuration. Default value is 1 s.
* **interval_medium** - refresh interval in seconds for channels with 'Medium' priority configuration. Default value is 60s.
That means that by default configuration:
* channels with priority set to 'High' are updated every second
* channels with priority set to 'Medium' - every minute
* channels with priority set to 'Low' only at initializing or at Refresh command.
For more info see [channel configuration](#channel-configuration)
## Channels
The binding support several channel group. Each channel group, contains one or more channels. In the list below, you can find, how are channel group and channels id`s related.
**thing** `computer`
* **group** `memory`
**channel** `available, total, used, available_percent`
* **group** `swap`
**channel** `available, total, used, available_percent`
* **group** `storage` (deviceIndex)
**channel** `available, total, used, available_percent, name, description, type`
* **group** `drive` (deviceIndex)
**channel** `name, model, serial`
* **group** `display` (deviceIndex)
**channel** `information`
* **group** `battery` (deviceIndex)
**channel** `name, remainingCapacity, remainingTime`
* **group** `cpu`
**channel** `name, description, load, load1, load5, load15, uptime`
* **group** `sensors`
**channel** `cpuTemp, cpuVoltage, fanSpeed`
* **group** `network` (deviceIndex)
**channel** `ip, mac, networkDisplayName, networkName, packagesSent, packagesReceived, dataSent, dataReceived`
The groups marked with "deviceIndex" may have device index attached to the Channel Group.
- channel ::= chnanel_group & (deviceIndex) & # channel_id
- deviceIndex ::= number > 0
- (e.g. *storage1#available*)
The binding uses this index to get information about a specific device from a list of devices.
(e.g on a single computer could be installed several local disks with names C:\, D:\, E:\ - the first will have deviceIndex=0, the second deviceIndex=1 ant etc). If device with this index is not existing, the binding will display an error message on the console.
In the table is shown more detailed information about each Channel type.
The binding introduces the following channels:
| Chnanel ID | Channel Description | Supported item type | Default priority | Advanced |
| ------------- | ------------- |------------|----------|----------|
| load | Recent load in percents | Number | High | False |
| load1 | Load in percents for the last 1 minutes | Number | Medium | True |
| load5 | Load in percents for the last 5 minutes | Number | Medium | True |
| load15 | Load in percents for the last 1 minutes | Number | Medium | True |
| threads | Number of threads currently running | Number | Medium | True |
| uptime | System uptime (time after start) in minutes | Number | Medium | True |
| name | Name of the device | String | Low | False |
| available | Available size in MB | Number | High | False |
| used | Used size in MB | Number | High | False |
| total | Total size in MB | Number | Low | False |
| availablePercent | Available size in % | Number | High | False |
| model | The model of the device | String | Low | True |
| serial | The serial number of the device | String | Low | True |
| description | Description of the device | String | Low | True |
| type | Storage type | String | Low | True |
| cpuTemp | CPU Temperature in Celsius degrees | Number | High | True |
| cpuVoltage | CPU Voltage in V | Number | Medium | True |
| fanSpeed | Fan speed in rpm | Number | Medium | True |
| remainingTime | Remaining time in minutes | Number | Medium | False |
| remainingCapacity | Remaining capacity in percents | Number | Medium | False |
| information | Product, manufacturer, SN, width and height of the display in cm | String | Low | True |
| ip | Host IP address of the network | String | Low | False |
| mac | MAC address | String | Low | True |
| networkName | The name of the network. | String | Low | False |
| networkDisplayName | The display name of the network | String | Low | False |
| packagesSent | Number of packages sent | Number | Medium | True |
| packagesReceived | Number of packages received | Number | Medium | True |
| dataSent | Data sent in MB | Number | Medium | True |
| dataReceived | Data received in MB | Number | Medium | True |
##Channel configuration
Each of the channels has a default configuration parameter - priority. It has the following options:
- **High**
- **Medium**
- **Low**
## Full example
Things:
```
systeminfo:computer:work [interval_high=3, interval_medium=60]
```
Items:
```
/* Network information*/
String Network_AdapterName { channel="systeminfo:computer:work:network#networkDisplayName" }
String Network_Name { channel="systeminfo:computer:work:network#networkName" }
String Network_IP { channel="systeminfo:computer:work:network#ip" }
String Network_Mac { channel="systeminfo:computer:work:network#mac" }
Number Network_DataSent { channel="systeminfo:computer:work:network#dataSent" }
Number Network_DataRecevied { channel="systeminfo:computer:work:network#dataReceived" }
Number Network_PackagesSent { channel="systeminfo:computer:work:network#packagesSent" }
Number Network_PackagesRecevied { channel="systeminfo:computer:work:network#packagesReceived" }
/* CPU information*/
String CPU_Name { channel="systeminfo:computer:work:cpu#name" }
String CPU_Description { channel="systeminfo:computer:work:cpu#description" }
Number CPU_Load { channel="systeminfo:computer:work:cpu#load"}
Number CPU_Load1 { channel="systeminfo:computer:work:cpu#load1" }
Number CPU_Load5 { channel="systeminfo:computer:work:cpu#load5" }
Number CPU_Load15 { channel="systeminfo:computer:work:cpu#load15" }
Number CPU_Load1 { channel="systeminfo:computer:work:cpu#load1" }
Number CPU_Threads { channel="systeminfo:computer:work:cpu#threads" }
Number CPU_Uptime { channel="systeminfo:computer:work:cpu#uptime" }
/* Drive information*/
String Drive_Name { channel="systeminfo:computer:work:drive#name" }
String Drive_Model { channel="systeminfo:computer:work:drive#model" }
String Drive_Serial { channel="systeminfo:computer:work:drive#serial" }
/* Storage information*/
String Storage_Name { channel="systeminfo:computer:work:storage#name" }
String Storage_Type { channel="systeminfo:computer:work:storage#type" }
String Storage_Description { channel="systeminfo:computer:work:storage#description" }
Number Storage_Available { channel="systeminfo:computer:work:storage#available" }
Number Storage_Used { channel="systeminfo:computer:work:storage#used" }
Number Storage_Total { channel="systeminfo:computer:work:storage#total" }
Number Storage_Available_Percent { channel="systeminfo:computer:work:storage#availablePercent" }
/* Memory information*/
Number Memory_Available { channel="systeminfo:computer:work:memory#available" }
Number Memory_Used { channel="systeminfo:computer:work:memory#used" }
Number Memory_Total { channel="systeminfo:computer:work:memory#total" }
Number Memory_Available_Percent { channel="systeminfo:computer:work:memory#availablePercent" }
/* Swap memory information*/
Number Swap_Available { channel="systeminfo:computer:work:swap#available" }
Number Swap_Used { channel="systeminfo:computer:work:swap#used" }
Number Swap_Total { channel="systeminfo:computer:work:swap#total" }
Number Swap_Available_Percent { channel="systeminfo:computer:work:swap#availablePercent" }
/* Battery information*/
String Battery_Name { channel="systeminfo:computer:work:battery#name" }
Number Battery_RemainingCapacity { channel="systeminfo:computer:work:battery#remainingCapacity" }
Number Battery_RemainingTime { channel="systeminfo:computer:work:battery#remainingTime" }
/* Display information*/
String Display_Description { channel="systeminfo:computer:work:display#information" }
/* Sensors information*/
Number Sensor_CPUTemp { channel="systeminfo:computer:work:sensors#cpuTemp" }
Number Sensor_CPUVoltage { channel="systeminfo:computer:work:sensors#cpuVoltage" }
Number Sensor_FanSpeed { channel="systeminfo:computer:work:sensors#fanSpeed" }
```

View File

@ -42,7 +42,8 @@ All devices support the following channels (non exhaustive):
## Full Example
demo.things:
demo.Things:
```
Thing tesla:models:1 [ username="your.email@company.com", password="somepassword", vin="5YJSA7H25FFP53746"]
```

View File

@ -4,4 +4,20 @@ layout: documentation
{% include base.html %}
# List of UIs
# List of UI Features
## User Interfaces
| UI | Description |
|-------|----------------------|
| [Basic UI]({{docu}}/features/uis/basic/readme.html) | The Basic UI is an HTML5 web application in Material Design, designed for operating openHAB. |
...
## Iconsets
| Iconset | Description |
|-------|----------------------|
| [Classic Icons]({{docu}}/features/iconsets/classic/readme.html) | This is a modernized version of the original icon set of openHAB 1. |
...

View File

@ -4,11 +4,12 @@ layout: documentation
{% include base.html %}
## Eclipse Smarthome BasicUI
## Basic UI
BasicUI is a web interface for Eclipse Smarthome based on Material Design Lite from Google.
The Basic UI is a web interface based on Material Design Lite from Google.
Features:
* Responsive layout suitable for various screen sizes
* AJAX navigation
* Live update<sup>1</sup>
@ -16,6 +17,7 @@ Features:
<sup>1</sup>: as for now, only control states and icons are updated. Visibility changes require a page reload.
Configuration:
```
org.eclipse.smarthome.basicui:defaultSitemap=demo
# Icons can be disabled

26
pom.xml
View File

@ -19,8 +19,14 @@
<filesets>
<fileset>
<directory>${basedir}/features/bindings/</directory>
</fileset>
<fileset>
<directory>${basedir}/features/uis/</directory>
</fileset>
<fileset>
<directory>${basedir}/features/iconsets/</directory>
</fileset>
<fileset>
<directory>${basedir}/esh/</directory>
</fileset>
</filesets>
@ -139,7 +145,7 @@
<source>
def bindings = new File(project.basedir, 'features/bindings')
def bindingList = new File(project.basedir, '_data/bindings.csv')
bindingList.write("id,label\n")
bindingList.write("id,label,description\n")
bindings.eachFile
{
@ -158,8 +164,22 @@
if(!readme.text.startsWith('---')) {
readme.write("---\nlayout: documentation\n---\n\n{% include base.html %}\n\n" + readme.text)
}
def label = readme.readLines().find{it.startsWith('#')}.replace('#', '').replace(' Binding', '')
bindingList.append(bindingId + ',' + label + '\n')
def label = readme.readLines().find{it.startsWith('#')}.replace('#', '').replace(' Binding', '').trim()
def description = ""
boolean firstHeadline = false
for(def line : readme.readLines()) {
if(line.startsWith('#')) {
if(!firstHeadline) {
firstHeadline = true
}
} else {
if(firstHeadline &amp;&amp; line.trim().size() > 0) {
description = line.trim()
break
}
}
}
bindingList.append(bindingId + ',' + label + ',"' + description + '"\n')
}
}
}