Merge branch 'main' into pr-webconsole
commit
c23fbff70e
|
@ -9,7 +9,7 @@ MD013: false
|
||||||
|
|
||||||
# Allow duplicate headers for different nesting
|
# Allow duplicate headers for different nesting
|
||||||
MD024:
|
MD024:
|
||||||
allow_different_nesting: true
|
siblings_only: true
|
||||||
|
|
||||||
# Allow Multiple top level headers in the same document
|
# Allow Multiple top level headers in the same document
|
||||||
MD025: false
|
MD025: false
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
name: Check for broken links
|
|
||||||
|
|
||||||
# https://github.blog/2020-08-03-github-actions-improvements-for-fork-and-pull-request-workflows/
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
|
|
||||||
markdown-link-check:
|
|
||||||
|
|
||||||
name: Check for broken links
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@master
|
|
||||||
- uses: gaurav-nelson/github-action-markdown-link-check@v1
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
name: Check Markdown For Errors
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
tags-ignore:
|
||||||
|
- '**'
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
markdownlint:
|
||||||
|
name: markdownlint
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
# pinning to SHA to mitigate possible supply chain attack
|
||||||
|
- name: Run markdownlint-cli
|
||||||
|
uses: nosborn/github-action-markdown-cli@58bcfd1af530d87a13d51b76e6713b52602e3613 # v3.4.0
|
||||||
|
with:
|
||||||
|
files: .
|
||||||
|
config_file: ".github/.markdownlint.yaml"
|
||||||
|
|
||||||
|
# markdown-link-check:
|
||||||
|
# name: Broken Links Check
|
||||||
|
# runs-on: ubuntu-latest
|
||||||
|
# steps:
|
||||||
|
# - name: Checkout repository
|
||||||
|
# uses: actions/checkout@v4
|
||||||
|
#
|
||||||
|
# # pinning to SHA to mitigate possible supply chain attack
|
||||||
|
# - name: Check for broken links
|
||||||
|
# uses: tcort/github-action-markdown-link-check@a800ad5f1c35bf61987946fd31c15726a1c9f2ba # v1.1.0
|
||||||
|
# with:
|
||||||
|
# use-quiet-mode: 'yes' # only show errors in output
|
||||||
|
# use-verbose-mode: 'yes' # show detailed HTTP status for checked links
|
|
@ -1,33 +0,0 @@
|
||||||
name: Checking Markdown For Errors
|
|
||||||
|
|
||||||
# https://github.blog/2020-08-03-github-actions-improvements-for-fork-and-pull-request-workflows/
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- 2.5.x
|
|
||||||
tags-ignore:
|
|
||||||
- '**'
|
|
||||||
|
|
||||||
pull_request:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
types:
|
|
||||||
- open
|
|
||||||
- synchronize
|
|
||||||
- reopen
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
markdownlint:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
|
|
||||||
- name: Check out code
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Run markdownlint-cli
|
|
||||||
uses: nosborn/github-action-markdown-cli@v3
|
|
||||||
with:
|
|
||||||
files: .
|
|
||||||
config_file: ".github/.markdownlint.yaml"
|
|
|
@ -75,12 +75,12 @@ Usage: openhab:send <item> <command> - sends a command for an item
|
||||||
### Links
|
### Links
|
||||||
|
|
||||||
| Command | Description |
|
| Command | Description |
|
||||||
|---------------------------------------------------------|----------------------------------------------------------------------------------|
|
|----------------------------------------------|----------------------------------------------------------------------------------|
|
||||||
| `openhab:links list` | lists all links |
|
| `openhab:links list` | lists all links |
|
||||||
| `openhab:links link <itemName> <channelUID>` | links an item with to channel |
|
| `openhab:links link <itemName> <channelUID>` | links an item with to channel |
|
||||||
| `openhab:links unlink <itemName> <thingUID>` | unlinks an item with to channel |
|
| `openhab:links unlink <itemName> <thingUID>` | unlinks an item with to channel |
|
||||||
| `openhab:links clear` | removes all managed links |
|
| `openhab:links clear` | removes all managed links |
|
||||||
| `openhab:links orphan <list|purge>` | lists/purges all orphaned - one missing element (either item or channel) - links |
|
| `openhab:links orphan <list\|purge>` | lists/purges all orphaned - one missing element (either item or channel) - links |
|
||||||
|
|
||||||
### Audio
|
### Audio
|
||||||
|
|
||||||
|
|
|
@ -308,6 +308,7 @@ If there is no `dayset-weekend` defined, calls to `isWeekend` will generate erro
|
||||||
Config file location: `$OH_CONF/services/ephemeris.cfg`.
|
Config file location: `$OH_CONF/services/ephemeris.cfg`.
|
||||||
|
|
||||||
Fields:
|
Fields:
|
||||||
|
|
||||||
Field | Description
|
Field | Description
|
||||||
-|-
|
-|-
|
||||||
`country` | Country to use to get the built in list of bank holidays, uses the standard two letter country code.
|
`country` | Country to use to get the built in list of bank holidays, uses the standard two letter country code.
|
||||||
|
|
|
@ -3,6 +3,7 @@ layout: documentation
|
||||||
title: Rules Blockly
|
title: Rules Blockly
|
||||||
---
|
---
|
||||||
<!-- markdownlint-disable MD036 -->
|
<!-- markdownlint-disable MD036 -->
|
||||||
|
<!-- markdownlint-disable MD039 -->
|
||||||
|
|
||||||
# Blockly Reference
|
# Blockly Reference
|
||||||
|
|
||||||
|
|
|
@ -424,6 +424,7 @@ The default icon will be used for negative numbers, or above 100 i.e. the availa
|
||||||
Dimmer type Items work in the same way, being limited to 0-100 anyway.
|
Dimmer type Items work in the same way, being limited to 0-100 anyway.
|
||||||
|
|
||||||
For a dimmable light (0-100%), you might provide icons as in the example:
|
For a dimmable light (0-100%), you might provide icons as in the example:
|
||||||
|
|
||||||
| File name | Description |
|
| File name | Description |
|
||||||
| ----------------- | ---------------------------------------------------- |
|
| ----------------- | ---------------------------------------------------- |
|
||||||
| `mydimmer.svg` | Default icon (used in undefined states) |
|
| `mydimmer.svg` | Default icon (used in undefined states) |
|
||||||
|
|
|
@ -533,100 +533,128 @@ All parameters are Strings.
|
||||||
Read the JSR223 language specific documentation for examples of using these `TriggerType` objects.
|
Read the JSR223 language specific documentation for examples of using these `TriggerType` objects.
|
||||||
|
|
||||||
::: details timer.DateTimeTrigger
|
::: details timer.DateTimeTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------- | ---------------------- |
|
|------------|------------------------|
|
||||||
| `itemName` | The name of the `Item` |
|
| `itemName` | The name of the `Item` |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details timer.GenericCronTrigger
|
::: details timer.GenericCronTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------------- | ------------------- |
|
|------------------|---------------------|
|
||||||
| `cronExpression` | The cron expression |
|
| `cronExpression` | The cron expression |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details timer.TimeOfDayTrigger
|
::: details timer.TimeOfDayTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| --------- | -------------------------- |
|
|-----------|----------------------------|
|
||||||
| `time` | The time in "hh:mm" format |
|
| `time` | The time in "hh:mm" format |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ItemCommandTrigger
|
::: details core.ItemCommandTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------- | ------------------------ |
|
|------------|--------------------------|
|
||||||
| `itemName` | The name of the `Item` |
|
| `itemName` | The name of the `Item` |
|
||||||
| `command` | The `Command` (optional) |
|
| `command` | The `Command` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ItemStateUpdateTrigger
|
::: details core.ItemStateUpdateTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------- | ---------------------- |
|
|------------|------------------------|
|
||||||
| `itemName` | The name of the `Item` |
|
| `itemName` | The name of the `Item` |
|
||||||
| `state` | The `State` (optional) |
|
| `state` | The `State` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ItemStateChangeTrigger
|
::: details core.ItemStateChangeTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| --------------- | ------------------------------- |
|
|-----------------|---------------------------------|
|
||||||
| `itemName` | The name of the `Item` |
|
| `itemName` | The name of the `Item` |
|
||||||
| `previousState` | The previous `State` (optional) |
|
| `previousState` | The previous `State` (optional) |
|
||||||
| `state` | The `State` (optional) |
|
| `state` | The `State` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.GroupCommandTrigger
|
::: details core.GroupCommandTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ----------- | --------------------------- |
|
|-------------|-----------------------------|
|
||||||
| `groupName` | The name of the `GroupItem` |
|
| `groupName` | The name of the `GroupItem` |
|
||||||
| `command` | The `Command` (optional) |
|
| `command` | The `Command` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.GroupStateUpdateTrigger
|
::: details core.GroupStateUpdateTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ----------- | --------------------------- |
|
|-------------|-----------------------------|
|
||||||
| `groupName` | The name of the `GroupItem` |
|
| `groupName` | The name of the `GroupItem` |
|
||||||
| `state` | The `State` (optional) |
|
| `state` | The `State` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.GroupStateChangeTrigger
|
::: details core.GroupStateChangeTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| --------------- | ------------------------------- |
|
|-----------------|---------------------------------|
|
||||||
| `groupName` | The name of the `GroupItem` |
|
| `groupName` | The name of the `GroupItem` |
|
||||||
| `previousState` | The previous `State` (optional) |
|
| `previousState` | The previous `State` (optional) |
|
||||||
| `state` | The `State` (optional) |
|
| `state` | The `State` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ThingStatusUpdateTrigger
|
::: details core.ThingStatusUpdateTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------- | ---------------------------- |
|
|------------|------------------------------|
|
||||||
| `thingUID` | The `thingUID` |
|
| `thingUID` | The `thingUID` |
|
||||||
| `status` | The `ThingStatus` (optional) |
|
| `status` | The `ThingStatus` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ThingStatusChangeTrigger
|
::: details core.ThingStatusChangeTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ---------------- | ------------------------------------- |
|
|------------------|---------------------------------------|
|
||||||
| `thingUID` | The `thingUID` |
|
| `thingUID` | The `thingUID` |
|
||||||
| `previousStatus` | The previous `ThingStatus` (optional) |
|
| `previousStatus` | The previous `ThingStatus` (optional) |
|
||||||
| `status` | The `ThingStatus` (optional) |
|
| `status` | The `ThingStatus` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.ChannelEventTrigger
|
::: details core.ChannelEventTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ------------ | ---------------------------------------- |
|
|--------------|------------------------------------------|
|
||||||
| `channelUID` | The `ChannelUID` of the `Channel` |
|
| `channelUID` | The `ChannelUID` of the `Channel` |
|
||||||
| `event` | The `Channel` trigger `Event` (optional) |
|
| `event` | The `Channel` trigger `Event` (optional) |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.GenericEventTrigger
|
::: details core.GenericEventTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| `topic` | The topic to match, as a file-system style glob (*, **, ?, and {} operators).<br><br>Example filters:<br>Item events: "openhab/items/\*/"<br>Channel events: "openhab/channels/\*/triggered"<br>Thing events: "openhab/things/\*\*" |
|
| `topic` | The topic to match, as a file-system style glob (*, **, ?, and {} operators).<br><br>Example filters:<br>Item events: "openhab/items/\*/"<br>Channel events: "openhab/channels/\*/triggered"<br>Thing events: "openhab/things/\*\*" |
|
||||||
| `source` | The object that triggered the event, such as `org.openhab.core.expire` |
|
| `source` | The object that triggered the event, such as `org.openhab.core.expire` |
|
||||||
| `types` | `ItemCommandEvent`, `ItemStateEvent`, `ItemStateChangedEvent`, `GroupItemStateChangedEvent`, `ItemAddedEvent`, `ItemRemovedEvent`, `ThingAddedEvent`, `ThingRemovedEvent`, `ThingStatusInfoChangedEvent`, `ThingStatusInfoEvent`, `ThingUpdatedEvent`, etc. A non-exhaustive list can be found [in the Javadocs](https://www.openhab.org/javadoc/latest/org/openhab/core/events/event). |
|
| `types` | `ItemCommandEvent`, `ItemStateEvent`, `ItemStateChangedEvent`, `GroupItemStateChangedEvent`, `ItemAddedEvent`, `ItemRemovedEvent`, `ThingAddedEvent`, `ThingRemovedEvent`, `ThingStatusInfoChangedEvent`, `ThingStatusInfoEvent`, `ThingUpdatedEvent`, etc. A non-exhaustive list can be found [in the Javadocs](https://www.openhab.org/javadoc/latest/org/openhab/core/events/event). |
|
||||||
| `payload` | Regex to match against the actual event data. |
|
| `payload` | Regex to match against the actual event data. |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
||||||
::: details core.SystemStartlevelTrigger
|
::: details core.SystemStartlevelTrigger
|
||||||
|
|
||||||
| Parameter | Description |
|
| Parameter | Description |
|
||||||
| ------------ | ----------------------- |
|
|--------------|-------------------------|
|
||||||
| `startlevel` | The system `StartLevel` |
|
| `startlevel` | The system `StartLevel` |
|
||||||
|
|
||||||
:::
|
:::
|
||||||
|
|
|
@ -93,12 +93,12 @@ It consists of bundles that implement all add-on services from the OSGi specific
|
||||||
Some of the core bundles are listed in the table below.
|
Some of the core bundles are listed in the table below.
|
||||||
Some or all of these bundles must be included in your runtime configuration, if you want to use the services that they provide.
|
Some or all of these bundles must be included in your runtime configuration, if you want to use the services that they provide.
|
||||||
|
|
||||||
Name | Bundle Symbolic Name | Description
|
| Name | Bundle Symbolic Name | Description |
|
||||||
-------- | -------- | --------
|
|----------------------|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
Declarative Services | org.eclipse.equinox.ds | An implementation of the OSGi [Declarative Services](osgids.html) specification
|
| Declarative Services | org.eclipse.equinox.ds | An implementation of the OSGi [Declarative Services](osgids.html) specification |
|
||||||
Event Admin Service | org.eclipse.equinox.event | OSGi Compendium Release 8 [Event Admin](https://osgi.org/javadoc/osgi.cmpn/8.0.0/org/osgi/service/event/EventAdmin.html) Service provides an inter-bundle communication mechanism based on an event publish and subscribe model
|
| Event Admin Service | org.eclipse.equinox.event | OSGi Compendium Release 8 [Event Admin](https://osgi.org/javadoc/osgi.cmpn/8.0.0/org/osgi/service/event/EventAdmin.html) Service provides an inter-bundle communication mechanism based on an event publish and subscribe model |
|
||||||
Equinox Utilities | org.eclipse.equinox.util | A library of utility classes that are frequently used from the Equinox OSGi Service implementation bundles
|
| Equinox Utilities | org.eclipse.equinox.util | A library of utility classes that are frequently used from the Equinox OSGi Service implementation bundles |
|
||||||
OSGi Services API | org.eclipse.osgi.service | This bundle contains the set of OSGi specified service APIs
|
| OSGi Services API | org.eclipse.osgi.service | This bundle contains the set of OSGi specified service APIs |
|
||||||
|
|
||||||
Table 2. OSGi Bundles (Full list can be found at: <https://www.eclipse.org/equinox/bundles/>)
|
Table 2. OSGi Bundles (Full list can be found at: <https://www.eclipse.org/equinox/bundles/>)
|
||||||
|
|
||||||
|
|
|
@ -206,10 +206,10 @@ A component goes through several states in his lifecycle:
|
||||||
- **REGISTERED** - temporary state. Only *delayed- components go through this state;
|
- **REGISTERED** - temporary state. Only *delayed- components go through this state;
|
||||||
- **ACTIVE** - the component is active and component instance is created.
|
- **ACTIVE** - the component is active and component instance is created.
|
||||||
|
|
||||||
<img src="images/immediatecomponent.png" width="320" height="200" />
|
<img src="images/immediatecomponent.png" alt="Delayed component lifecycle" width="320" height="200" />
|
||||||
Fig.1 Immediate component lifecycle
|
Fig.1 Immediate component lifecycle
|
||||||
|
|
||||||
<img src="images/delayedcomponent.png" width="400" height="200" />
|
<img src="images/delayedcomponent.png" alt="Delayed component lifecycle" width="400" height="200" />
|
||||||
Fig.2 Delayed component lifecycle
|
Fig.2 Delayed component lifecycle
|
||||||
|
|
||||||
### States
|
### States
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="1280" height="274.562" viewBox="0 0 338.667 72.644" xmlns:v="https://vecta.io/nano"><path d="M294.697 60.122c6.777 0 12.314-3.055 15.781-7.762l-3.725-2.121c-2.691 3.415-6.831 5.641-12.056 5.641-8.464 0-14.985-5.832-15.666-13.294h33.565c.024-.441.05-.881.05-1.293 0-10.397-8.482-18.831-18.854-18.831s-18.802 8.435-18.802 18.832 8.43 18.829 19.706 18.829zm-.877-33.419c7.068 0 13.213 5.068 14.568 11.796h-29.139c1.346-6.727 7.455-11.796 14.571-11.796zm-99.896-4.243c-10.398 0-18.83 8.435-18.83 18.833s8.432 18.83 18.83 18.83c6.281 0 11.468-3.078 14.59-7.806v7.082h4.24V23.184h-4.24v7.082c-3.122-4.728-8.309-7.806-14.59-7.806zm0 4.243c8.07 0 14.59 6.518 14.59 14.59s-6.52 14.587-14.59 14.587a14.57 14.57 0 0 1-14.587-14.587c0-8.072 6.517-14.59 14.587-14.59zM65.715 32.905c-7.996 2.19-15.164 7.406-19.636 15.152s-5.407 16.568-3.306 24.587l7.835-4.526a23.9 23.9 0 0 1 1.105-11.836l18.309 10.569 4.303-2.487v-4.967L56.016 48.829a23.92 23.92 0 0 1 9.699-6.879zm-57.108 0v9.045a23.91 23.91 0 0 1 9.699 6.879L0 59.398v4.967l4.303 2.487 18.306-10.569c1.39 3.868 1.726 7.938 1.108 11.836l7.832 4.526c2.101-8.02 1.167-16.841-3.306-24.587A32.52 32.52 0 0 0 8.607 32.905zM337.063 22.46c-8.542 0-15.466 6.448-15.466 15.47v21.469h4.243V37.93c0-6.68 5.025-11.227 11.223-11.227h1.604V22.46zm-213.131 0c-8.542 0-15.466 6.448-15.466 15.47v21.469h4.243V37.93c0-6.68 5.023-11.227 11.223-11.227s11.227 4.547 11.227 11.227v21.469h4.243V37.93c0-6.68 5.023-11.227 11.223-11.227s11.227 4.547 11.227 11.227v21.469h4.243V37.93c0-9.021-6.927-15.47-15.47-15.47-5.535 0-10.576 2.848-13.37 8.642-2.845-5.741-7.84-8.642-13.323-8.642zm108.531-11.636l-4.24 2.43v9.931h-5.691v4.087h5.691v23.847c0 4.605 3.621 8.279 8.225 8.279h6.307v-4.243h-6.307c-2.175 0-3.986-1.811-3.986-4.087V27.271h21.574v23.847c0 4.605 3.619 8.279 8.171 8.279h6.364v-4.243h-6.364c-2.12 0-3.929-1.811-3.929-4.087V27.271h10.293v-4.087H258.28v-12.36l-4.243 2.43v9.931h-21.574zM37.161 0l-4.303 2.484v21.138c-4.046-.731-7.736-2.476-10.804-4.961l-7.838 4.522c5.895 5.83 14 9.429 22.946 9.429s17.051-3.599 22.946-9.429l-7.835-4.522a23.92 23.92 0 0 1-10.807 4.961V2.484z"/></svg>
|
After Width: | Height: | Size: 2.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 4.8 KiB |
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 813.97 541.95"><defs><style>.st0 {fill: #007acc;}.st1, .st2 {fill: #000f30;}.st2 {fill-rule: evenodd;}</style></defs><path class="st1" d="M430.77,107.42c-63.99,0-115.99,51.03-115.99,116.95v172.16c0,2.25,1.76,4.01,4.01,4.01h55.99c2.25,0,4.01-1.76,4.01-4.01v-172.97c0-28.8,23.35-52.01,52.01-52.01s52.16,23.35,52.16,52.01v172.97c0,2.25,1.76,4.01,4.01,4.01h56c2.25,0,4.01-1.76,4.01-4.01v-172.16c0-65.92-52.16-116.95-116.17-116.95h-.03Z"></path><path class="st1" d="M275.37,396.7c0,2.25-1.76,4.01-4.01,4.01h-55.99c-2.25,0-4.01-1.76-4.01-4.01v-252.95c.32-17.44,14.55-31.52,32.01-31.52s31.69,14.08,32.01,31.52v252.95Z"></path><path class="st1" d="M153.43,181.51c-1.27,1.76-3.84,2.08-5.6.81-8.95-6.7-19.34-10.71-31.03-10.71-28.95-.49-52.79,23.67-52.79,52.79v172.16c0,2.25-1.76,4.01-4.01,4.01H4.01c-2.25,0-4.01-1.76-4.01-4.01v-172.16c0-65.14,52.01-117.29,116.15-117.29,26.26,0,51.2,10.24,69.93,23.03,1.91,1.27,2.23,3.84.96,5.6l-33.6,45.77Z"></path><circle class="st0" cx="243.4" cy="40.03" r="40.03"></circle><path class="st2" d="M813.65,226.11c-1.57-72.76-55.53-118.25-116-118.57-64.97-.49-118.08,53.6-118.08,118.57v61.91c0,64.8,52.48,117.27,117.27,117.27,20.32-.32,36.31-7.53,48.95-19.05,1.93-1.76,4.96-.49,4.96,2.08v31.37c0,15.36-6.24,29.93-16.65,40.81-6.09,7.04-16.65,12.15-23.67,14.08-38.88,11.2-59.52-7.19-85.12-28.17-1.93-1.59-4.65-1.12-6.09.81l-33.24,44.84c-1.12,1.44-.95,3.52.32,4.79,14.23,15.21,38.39,34.55,73.11,42.23,18.56,3.52,37.12,3.52,50.71,1.44,11.05-1.59,21.76-4.96,31.84-9.44,9.93-4.47,19.2-10.39,27.68-17.29,8.31-6.87,15.84-15.04,22.08-23.84,6.24-8.95,11.37-18.73,15.04-29.12,3.84-10.56,6.09-21.76,6.87-32.96.17-2.72.32-5.45.32-8.17l-.32-193.61ZM749.45,295.47c-3.7,26.02-26.17,46.03-53.05,46.03-25.07,0-46.31-17.41-52.05-40.86-.06-.24-.11-.48-.17-.74-.32-1.41-.6-2.84-.81-4.29-1.47-9.17-2.42-23.36-2.42-39.31s.95-30.14,2.42-39.31c.21-1.45.49-2.88.81-4.29.06-.25.11-.5.17-.74,5.75-23.45,26.98-40.86,52.05-40.86s44.65,16.09,51.31,38.16c.42,1.22.81,2.79,1.19,4.64,0,0,0,0,0,.01,1.78,8.88,2.96,24.51,2.96,42.32,0,15.91-.94,30.08-2.41,39.25Z"></path></svg>
|
After Width: | Height: | Size: 2.1 KiB |
|
@ -18,7 +18,7 @@ h1.welcome {
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<img src="/openhab-logo-square.svg" width="150" height="150" class="intro-logo" />
|
<img src="/openhab-logo-square.svg" width="150" height="150" class="intro-logo" alt="openHAB logo" />
|
||||||
|
|
||||||
<h1 class="welcome">Welcome!</h1>
|
<h1 class="welcome">Welcome!</h1>
|
||||||
|
|
||||||
|
|
|
@ -165,7 +165,7 @@ Currently, the supported commands are:
|
||||||
To leave out a parameter, leave a colon space empty, e.g. `notification:$text:$title:::$closeTimeout`.
|
To leave out a parameter, leave a colon space empty, e.g. `notification:$text:$title:::$closeTimeout`.
|
||||||
|
|
||||||
For example, send `notification:This is the text.:This is the title.:This is the subtitle.:This is the right title.` to the UI command Item to display the following notification:
|
For example, send `notification:This is the text.:This is the title.:This is the subtitle.:This is the right title.` to the UI command Item to display the following notification:
|
||||||
<p align="center"><img style="max-width: 40%;" src="images/notification.png"/></p>
|
<p align="center"><img style="max-width: 40%;" src="images/notification.png" alt="notification"/></p>
|
||||||
- `close`:
|
- `close`:
|
||||||
Close all popups, popovers and sheets.
|
Close all popups, popovers and sheets.
|
||||||
- `back`:
|
- `back`:
|
||||||
|
|
|
@ -48,12 +48,12 @@ Every openHAB deployment is unique.
|
||||||
Consequently, every administrator of an openHAB instance will need to create a custom interface for the users of their bespoke home automation system.
|
Consequently, every administrator of an openHAB instance will need to create a custom interface for the users of their bespoke home automation system.
|
||||||
openHAB provides a number of options to support this in addition to MainUI Pages.
|
openHAB provides a number of options to support this in addition to MainUI Pages.
|
||||||
|
|
||||||
Interface | Purpose | How the UI is Defined | Notes
|
| Interface | Purpose | How the UI is Defined | Notes |
|
||||||
-|-|-|-
|
|------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------|
|
||||||
[Pages]({{base}}/ui/index.html) | Built into MainUI. Allows for a rich set of options to present your home automation. | Can be built automatically through the semantic model as well as customized which includes [Layout Pages]({{base}}/ui/layout-pages.html), [Map Pages]({{base}}/ui/map-pages.html), [Floorplan Pages]({{base}}/ui/floorplan-pages.html), [Tabbed Pages]({{base}}/ui/tabbed-pages.html) and [Chart Pages]({{base}}/ui/chart-pages.html).
|
| [Pages]({{base}}/ui/index.html) | Built into MainUI. Allows for a rich set of options to present your home automation. | Can be built automatically through the semantic model as well as customized which includes [Layout Pages]({{base}}/ui/layout-pages.html), [Map Pages]({{base}}/ui/map-pages.html), [Floorplan Pages]({{base}}/ui/floorplan-pages.html), [Tabbed Pages]({{base}}/ui/tabbed-pages.html) and [Chart Pages]({{base}}/ui/chart-pages.html). | |
|
||||||
[Sitemaps]({{base}}/ui/sitemaps.html) | A simple declaritive way to define a simple user interface | Created using .sitemap files or through MainUI. | Used by BasicUI and the phone apps by default.
|
| [Sitemaps]({{base}}/ui/sitemaps.html) | A simple declaritive way to define a simple user interface | Created using .sitemap files or through MainUI. | Used by BasicUI and the phone apps by default. |
|
||||||
[HABPanel]({{base}}/ui/habpanel/habpanel.html) | UI designed for fixed wall mounted tablets and similar touch screen displays using a blocks interface (e.g. the Windows 10 start menu) with a lot of customization options. | Built graphically though the browser. A number of custom widgets are defined and installable.
|
| [HABPanel]({{base}}/ui/habpanel/habpanel.html) | UI designed for fixed wall mounted tablets and similar touch screen displays using a blocks interface (e.g. the Windows 10 start menu) with a lot of customization options. | Built graphically though the browser. A number of custom widgets are defined and installable. | |
|
||||||
[HABot]({{base}}/ui/habot/) | Provides a basic chatbot interface to interact with your home automation through natural langauge. | Requires the configuration of the semantic model.
|
| [HABot]({{base}}/ui/habot/) | Provides a basic chatbot interface to interact with your home automation through natural langauge. | Requires the configuration of the semantic model. | |
|
||||||
|
|
||||||
Once installed, any non-Pages UI can be accessed in the "Other Apps" menu that pops up when clicking on the square icon in the upper right corner of the MainUI Overview page (the first page you see when first accessing openHAB).
|
Once installed, any non-Pages UI can be accessed in the "Other Apps" menu that pops up when clicking on the square icon in the upper right corner of the MainUI Overview page (the first page you see when first accessing openHAB).
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue