From 72786df044d113b5143a27530c523e4d956b0570 Mon Sep 17 00:00:00 2001 From: Andrew Fiddian-Green Date: Tue, 10 Jan 2023 07:14:54 +0000 Subject: [PATCH] [velux] tweak read me (#14196) Signed-off-by: Andrew Fiddian-Green --- bundles/org.openhab.binding.velux/README.md | 32 +++++----- .../doc/conf/rules/velux.rules | 37 ----------- .../doc/conf/things/velux.things | 62 ------------------- .../doc/{conf/items/velux.items => items.md} | 27 +------- .../org.openhab.binding.velux/doc/rules.md | 15 +++++ .../sitemaps/velux.sitemap => sitemaps.md} | 26 +------- .../org.openhab.binding.velux/doc/things.md | 28 +++++++++ 7 files changed, 63 insertions(+), 164 deletions(-) delete mode 100644 bundles/org.openhab.binding.velux/doc/conf/rules/velux.rules delete mode 100644 bundles/org.openhab.binding.velux/doc/conf/things/velux.things rename bundles/org.openhab.binding.velux/doc/{conf/items/velux.items => items.md} (82%) create mode 100644 bundles/org.openhab.binding.velux/doc/rules.md rename bundles/org.openhab.binding.velux/doc/{conf/sitemaps/velux.sitemap => sitemaps.md} (61%) create mode 100644 bundles/org.openhab.binding.velux/doc/things.md diff --git a/bundles/org.openhab.binding.velux/README.md b/bundles/org.openhab.binding.velux/README.md index 9d1e847880b..d9c892c17f2 100644 --- a/bundles/org.openhab.binding.velux/README.md +++ b/bundles/org.openhab.binding.velux/README.md @@ -83,13 +83,13 @@ Normally it differs from the password of the web frontend. Advice: if you see a significant number of messages per day as follows, you should increase the parameters `retries` or/and `timeoutMsecs`... -``` +```text communicate(): socket I/O failed continuously (x times). ``` For your convenience you'll see a log entry for the recognized configuration within the log file i.e. -``` +```text 2018-07-23 20:40:24.746 [INFO ] [.b.velux.internal.VeluxBinding] - veluxConfig[ipAddress=192.168.42.1,tcpPort=80,password=********,timeoutMsecs=2000,retries=10] ``` @@ -108,7 +108,7 @@ In addition there are some optional Configuration Parameters. Notes: 1. To enable a complete inversion of all parameter values (i.e. for Velux windows), use the property `inverted` or add a trailing star to the eight-byte serial number. -For an example, see the Thing definition for 'Bathroom_Roof_Window' below. + For an example, see the Thing definition for 'Bathroom_Roof_Window' below. 2. Somfy devices do not provide a valid serial number to the Velux KLF200 Bridge. For such devices you have to enter the special all-zero serial number 00:00:00:00:00:00:00:00 in the `serial` parameter. @@ -258,7 +258,7 @@ The bridge Thing provides the following properties. ### Things -``` +```java Bridge velux:klf200:g24 "Velux KLF200 Hub" @ "Under Stairs" [ipAddress="192.168.1.xxx", password="secret"] { // Velux (standard) window (with serial number) Thing window Bathroom_Roof_Window "Bathroom Roof Window" @ "Bathroom" [serial="56:36:13:5A:11:2A:05:70", inverted=true] @@ -268,25 +268,25 @@ Bridge velux:klf200:g24 "Velux KLF200 Hub" @ "Under Stairs" [ipAddress="192.168. } ``` -See [velux.things](doc/conf/things/velux.things) for more examples. +See [things.md](doc/things.md) for more examples. ### Items -``` +```java Rollershutter Bathroom_Roof_Window_Position "Bathroom Roof Window Position [%.0f %%]" {channel="velux:window:g24:w56-36-13-5A-11-2A-05-70:position"} ``` -See [velux.items](doc/conf/items/velux.items) for more examples. +See [items.md](doc/items.md) for more examples. ### Sitemap -``` +```perl Frame label="Velux Windows" { Slider item=Bathroom_Roof_Window_Position } ``` -See [velux.sitemap](doc/conf/sitemaps/velux.sitemap) for more examples. +See [sitemaps.md](doc/sitemaps.md) for more examples. ### Rule for simultaneously moving the main position and the vane position @@ -360,7 +360,7 @@ then end ``` -See [velux.rules](doc/conf/rules/velux.rules) for more examples. +See [rules.md](doc/rules.md) for more examples. ### Rule for rebooting the Bridge @@ -431,21 +431,21 @@ For those who are interested in more detailed insight of the processing of this With Karaf you can use the following command sequence: -``` +```text log:set TRACE org.openhab.binding.velux log:tail ``` This, of course, is possible on command line with the commands: -``` +```text % openhab-cli console log:set TRACE org.openhab.binding.velux % openhab-cli console log:tail org.openhab.binding.velux ``` On the other hand, if you prefer a textual configuration, you can append the logging definition with: -``` +```text @@ -453,7 +453,7 @@ On the other hand, if you prefer a textual configuration, you can append the log During startup of normal operations, there should be only some few messages within the logfile, like: -``` +```text [INFO ] [nal.VeluxValidatedBridgeConfiguration] - veluxConfig[protocol=slip,ipAddress=192.168.45.9,tcpPort=51200,password=********,timeoutMsecs=1000,retries=5,refreshMsecs=15000,isBulkRetrievalEnabled=true] [INFO ] [ng.velux.bridge.slip.io.SSLconnection] - Starting velux bridge connection. [INFO ] [hab.binding.velux.bridge.slip.SClogin] - velux bridge connection successfully established (login succeeded). @@ -478,7 +478,7 @@ During startup of normal operations, there should be only some few messages with However if you have set the configuration parameter isProtocolTraceEnabled to true, you'll see the complete sequence of exchanged messages: -``` +```text [INFO ] [internal.bridge.slip.SlipVeluxBridge] - Sending command GW_PASSWORD_ENTER_REQ. [INFO ] [nternal.bridge.slip.io.SSLconnection] - Starting velux bridge connection. [INFO ] [internal.bridge.slip.SlipVeluxBridge] - Received answer GW_PASSWORD_ENTER_CFM. @@ -559,6 +559,6 @@ All known Velux devices can be handled by this binding. However, there might be some new ones which will be reported within the logfiles. Therefore, error messages like the one below should be reported to the maintainers so that the new Velux device type can be incorporated. -``` +```text [ERROR] [g.velux.things.VeluxProductReference] - PLEASE REPORT THIS TO MAINTAINER: VeluxProductReference(3) has found an unregistered ProductTypeId. ``` diff --git a/bundles/org.openhab.binding.velux/doc/conf/rules/velux.rules b/bundles/org.openhab.binding.velux/doc/conf/rules/velux.rules deleted file mode 100644 index 14e43017c61..00000000000 --- a/bundles/org.openhab.binding.velux/doc/conf/rules/velux.rules +++ /dev/null @@ -1,37 +0,0 @@ -/** - * - * Copyright (c) 2010-2023 Contributors to the openHAB project - * - * See the NOTICE file(s) distributed with this work for additional - * information. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - */ - -/** - * OpenHAB rules for velux binding: - * This rule simulates the push button behaviour. - * - * @author Guenther Schreiner - Initial contribution - */ - -rule "PushButton of group gV" - when - Item gV changed - then - // waiting a second. - Thread::sleep(1000) - // Foreach-Switch-is-ON - gV.allMembers.filter( s | s.state == ON).forEach[i| - // switching OFF - i.sendCommand(OFF) - ] - end - -// -// vim: syntax=Xtend vim: noai:ts=4:sw=4 -// -// end-of-rules/velux.rules -// diff --git a/bundles/org.openhab.binding.velux/doc/conf/things/velux.things b/bundles/org.openhab.binding.velux/doc/conf/things/velux.things deleted file mode 100644 index 3035b29d606..00000000000 --- a/bundles/org.openhab.binding.velux/doc/conf/things/velux.things +++ /dev/null @@ -1,62 +0,0 @@ -/** - * - * Copyright (c) 2010-2023 Contributors to the openHAB project - * - * See the NOTICE file(s) distributed with this work for additional - * information. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - */ - -/** - * OpenHAB thing definition for velux binding: - * define basic Velux bridge parameters - * - * This is a definition which corresponds to the output of th Bridge - * during startup, i.e. - * - * [INFO ] [x.internal.handler.VeluxBridgeHandler] - Found velux actuators: - * Product "#0" / SLIDER_SHUTTER (bridgeIndex=0,serial=56:32:14:5A:12:1C:05:5F,position=0000) - * Product "#1" / SLIDER_SHUTTER (bridgeIndex=1,serial=53:09:40:5A:0C:23:0A:6E,position=0000) - * Product "DG-M-Window" / SLIDER_WINDOW (bridgeIndex=3,serial=56:23:3E:26:0C:1B:00:10,position=C800) - * Product "#2" / SLIDER_SHUTTER (bridgeIndex=2,serial=53:09:40:5A:0C:2A:05:64,position=0000) - * Product "#4" / SWITCH (bridgeIndex=4,serial=Somfy-Switch,position=C800) - * Product "#5" / SWITCH (bridgeIndex=5,serial=Somfy-Switch,position=C800) - * - * @author Guenther Schreiner - Initial contribution - */ - -// -// Definition of Velux bridge velux:klf200:home -// - -Bridge velux:klf200:home [ ipAddress="192.168.45.9", tcpPort=51200, password="verySecret" ] { - -// Velux scenes - - Thing scene windowClosed [ sceneName="V_DG_Window_Mitte_000" ] - Thing scene windowUnlocked [ sceneName="V_DG_Window_Mitte_005" ] - Thing scene windowOpened [ sceneName="V_DG_Window_Mitte_100" ] - Thing scene unknownScene [ sceneName="ThisIsADummySceneName" ] - -// Velux IO-homecontrol devices - - Thing window V_DG_M_W [ serial="56:23:3E:26:0C:1B:00:10" ] - Thing rollershutter V_DG_M_S [ serial="56:23:3E:26:0C:1B:00:10" ] - Thing rollershutter V_DG_W_S [ serial="53:09:40:5A:0C:2A:05:64" ] - Thing rollershuffer V_DG_O_S [ serial="53:09:40:5A:0C:23:0A:6E" ] - Thing actuator V_SWITCH1 [ name="#4" ] - Thing actuator V_SWITCH2 [ name="#5" ] - -// Virtual rollershutter - - Thing vshutter V_WINDOW [ sceneLevels="0,V_DG_Window_Mitte_000#5,V_DG_Window_Mitte_005#100,V_DG_Window_Mitte_100" ] -} - -// -// vim: syntax=Xtend vim: noai:ts=4:sw=4 -// -// end-of-things/velux.things -// diff --git a/bundles/org.openhab.binding.velux/doc/conf/items/velux.items b/bundles/org.openhab.binding.velux/doc/items.md similarity index 82% rename from bundles/org.openhab.binding.velux/doc/conf/items/velux.items rename to bundles/org.openhab.binding.velux/doc/items.md index be3922cc186..55f91076a3c 100644 --- a/bundles/org.openhab.binding.velux/doc/conf/items/velux.items +++ b/bundles/org.openhab.binding.velux/doc/items.md @@ -1,22 +1,4 @@ -/** - * - * Copyright (c) 2010-2023 Contributors to the openHAB project - * - * See the NOTICE file(s) distributed with this work for additional - * information. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - */ - -/** - * OpenHAB item defintion for velux binding: - * Velux Bridge and Devices - * - * @author Guenther Schreiner - Initial contribution - */ - +```java // Group for simulating push buttons Group:Switch:OR(ON, OFF) gV "PushButton" @@ -58,9 +40,4 @@ Rollershutter V_DG_M_W2 "DG Fenster Bad [%d]" { channel="velux:klf200:home:V_DG Rollershutter V_DG_M_S "DG Bad [%d]" { channel="velux:klf200:home:V_DG_M_S" } Rollershutter V_DG_W_S "DG West [%d]" { channel="velux:klf200:home:V_DG_W_S" } Rollershutter V_DG_O_S "DG Ost [%d]" { channel="velux:klf200:home:V_DG_O_S" } - -// -// vim: syntax=Xtend vim: noai:ts=4:sw=4 -// -// end-of-items/velux.items -// +``` diff --git a/bundles/org.openhab.binding.velux/doc/rules.md b/bundles/org.openhab.binding.velux/doc/rules.md new file mode 100644 index 00000000000..cd031642a30 --- /dev/null +++ b/bundles/org.openhab.binding.velux/doc/rules.md @@ -0,0 +1,15 @@ +```java +// This rule simulates a push button behaviour. +rule "PushButton of group gV" + when + Item gV changed + then + // waiting a second. + Thread::sleep(1000) + // Foreach-Switch-is-ON + gV.allMembers.filter( s | s.state == ON).forEach[i| + // switching OFF + i.sendCommand(OFF) + ] + end +``` diff --git a/bundles/org.openhab.binding.velux/doc/conf/sitemaps/velux.sitemap b/bundles/org.openhab.binding.velux/doc/sitemaps.md similarity index 61% rename from bundles/org.openhab.binding.velux/doc/conf/sitemaps/velux.sitemap rename to bundles/org.openhab.binding.velux/doc/sitemaps.md index db13f11c7fa..bb310c9313d 100644 --- a/bundles/org.openhab.binding.velux/doc/conf/sitemaps/velux.sitemap +++ b/bundles/org.openhab.binding.velux/doc/sitemaps.md @@ -1,22 +1,5 @@ -/** - * - * Copyright (c) 2010-2023 Contributors to the openHAB project - * - * See the NOTICE file(s) distributed with this work for additional - * information. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0 - */ - -/** - * OpenHAB sitemap definition for velux binding: - * displays most of the Velux items - * - * @author Guenther Schreiner - Initial contribution - */ +```perl sitemap velux label="Velux Environment" { Frame label="Velux Shutter and Window" { @@ -51,9 +34,4 @@ sitemap velux label="Velux Environment" } } - -// -// vim: syntax=Xtend vim: noai:ts=4:sw=4 -// -// end-of-sitemap/velux.sitemap -// +``` diff --git a/bundles/org.openhab.binding.velux/doc/things.md b/bundles/org.openhab.binding.velux/doc/things.md new file mode 100644 index 00000000000..77ced47e6bc --- /dev/null +++ b/bundles/org.openhab.binding.velux/doc/things.md @@ -0,0 +1,28 @@ +```java +// +// Definition of Velux bridge velux:klf200:home +// + +Bridge velux:klf200:home [ ipAddress="192.168.45.9", tcpPort=51200, password="verySecret" ] { + +// Velux scenes + + Thing scene windowClosed [ sceneName="V_DG_Window_Mitte_000" ] + Thing scene windowUnlocked [ sceneName="V_DG_Window_Mitte_005" ] + Thing scene windowOpened [ sceneName="V_DG_Window_Mitte_100" ] + Thing scene unknownScene [ sceneName="ThisIsADummySceneName" ] + +// Velux IO-homecontrol devices + + Thing window V_DG_M_W [ serial="56:23:3E:26:0C:1B:00:10" ] + Thing rollershutter V_DG_M_S [ serial="56:23:3E:26:0C:1B:00:10" ] + Thing rollershutter V_DG_W_S [ serial="53:09:40:5A:0C:2A:05:64" ] + Thing rollershuffer V_DG_O_S [ serial="53:09:40:5A:0C:23:0A:6E" ] + Thing actuator V_SWITCH1 [ name="#4" ] + Thing actuator V_SWITCH2 [ name="#5" ] + +// Virtual rollershutter + + Thing vshutter V_WINDOW [ sceneLevels="0,V_DG_Window_Mitte_000#5,V_DG_Window_Mitte_005#100,V_DG_Window_Mitte_100" ] +} +```