added expire documentation (#1293)

Signed-off-by: Kai Kreuzer <kai@openhab.org>
pull/1301/head
Kai Kreuzer 2020-11-28 23:12:42 +01:00 committed by GitHub
parent e63c00c987
commit 7ee847acc0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 35 additions and 0 deletions

View File

@ -658,6 +658,7 @@ The first example shows a symbiosis of the network health Binding and the Wake-o
The second example shows a common use case for the [Expire Binding](/addons/bindings/expire1/) The second example shows a common use case for the [Expire Binding](/addons/bindings/expire1/)
where the mysensors Binding will update temperature readings regularly but the expire Binding will also listen and eventually modify the Item state. where the mysensors Binding will update temperature readings regularly but the expire Binding will also listen and eventually modify the Item state.
{: #autoupdate}
#### Parameter `autoupdate` #### Parameter `autoupdate`
`autoupdate="false"` is a special instruction which keeps the current state of the item, even if a *command* has been received. `autoupdate="false"` is a special instruction which keeps the current state of the item, even if a *command* has been received.
@ -669,6 +670,40 @@ Example:
Switch Garage_Gate {binding="xxx", autoupdate="false"} Switch Garage_Gate {binding="xxx", autoupdate="false"}
``` ```
{: #expire}
#### Parameter `expire`
This parameter allows to post an update or command to an item after a period of time has passed.
The expiration timer is started or restarted every time an item receives an update or a command *other than* the specified "expire" update/command.
Any future expiring update or command is cancelled, if the item receives an update or command that matches the "expire" update/command.
The parameter accepts a duration of time that can be a combination of hours, minutes and seconds in the format
```
expire="1h 30m 45s"
expire="1h05s"
expire="55h 59m 12s"
```
Every part is optional, but all parts present must be in the given order (hours, minutes, seconds).
Whitespaces are allowed between the sections.
This duration can optionally be followed by a comma and the state or command to post, when the timer expires.
If this optional section is not present, it defaults to the Undefined (`UnDefType.UNDEF`) state.
```
Player MyPlayer { expire="1h,command=STOP" } // send STOP command after one hour
Number MyChannel { expire="5m,state=0" } // update state to 0 after five minutes
String MyMessage { expire="3m12s,Hello" } // update state to Hello after three minutes and 12 seconds
Switch MySwitch { expire="2h" } // update state to Undefined two hours after last value
```
Note that the `state=` part is optional.
In the special case of a String item, it is possible to define a state/command as the string "UNDEF" or "NULL" by putting it into single quotes (e.g. "1m,state='UNDEF'").
Without the quotes, the state would be the system type `UNDEF`.
#### Profiles #### Profiles
With Profiles, you're able to change the behavior how Channels interact with your Items. You can use *State Profiles* on State Channels and *Trigger Profiles* on Trigger Channels. With Profiles, you're able to change the behavior how Channels interact with your Items. You can use *State Profiles* on State Channels and *Trigger Profiles* on Trigger Channels.