Skip to content

Commit

Permalink
added automatic binding menu generation
Browse files Browse the repository at this point in the history
Signed-off-by: Kai Kreuzer <[email protected]>
  • Loading branch information
kaikreuzer committed May 15, 2016
1 parent b42103f commit 175883d
Show file tree
Hide file tree
Showing 4 changed files with 174 additions and 8 deletions.
36 changes: 36 additions & 0 deletions _data/bindings.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
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
12 changes: 4 additions & 8 deletions _includes/documentation-menu.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,11 @@
</li>
<li><a href="{{docu}}/features/addons.html">Add-ons</a>
<ul>
<li><a href="{{docu}}/features/bindings/digitalstrom/readme.html">Bindings</a>
<li><a href="{{docu}}/features/bindings.html">Bindings</a>
<ul>
<li><a href="{{docu}}/features/bindings/digitalstrom/readme.html">digitalSTROM</a></li>
<li><a href="{{docu}}/features/bindings/hue/readme.html">Philips Hue</a></li>
<li><a href="{{docu}}/features/bindings/fsinternetradio/readme.html">FS Internet Radio</a></li>
<li><a href="{{docu}}/features/bindings/lifx/readme.html">LIFX</a></li>
<li><a href="{{docu}}/features/bindings/ntp/readme.html">NTP Time Server</a></li>
<li><a href="{{docu}}/features/bindings/wemo/readme.html">Belkin Wemo</a></li>
<li><a href="{{docu}}/features/bindings/yahooweather/readme.html">Yahoo Weather</a></li>
{% for binding in site.data.bindings %}
<li><a href="{{docu}}/features/bindings/{{ binding.id }}/readme.html">{{ binding.label }}</a></li>
{% endfor %}
</ul>
</li>
<li><a href="{{docu}}/features/uis.html">User Interfaces</a>
Expand Down
130 changes: 130 additions & 0 deletions features/bindings.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
---
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.

## 2.0 Bindings

| 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

| Application | Description |
|-------|----------------------|
| [iot_bridge](https://github.com/openhab/openhab/wiki/ROS-Robot-Operating-System) | Bridge between ROS Robot Operating System and openHAB |
4 changes: 4 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,8 @@
<configuration>
<source>
def bindings = new File(project.basedir, 'features/bindings')
def bindingList = new File(project.basedir, '_data/bindings.csv')
bindingList.write("id,label\n")

bindings.eachFile
{
Expand All @@ -150,6 +152,8 @@
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')
}
}
}
Expand Down

0 comments on commit 175883d

Please sign in to comment.