diff --git a/.github/workflows/test-and-release.yml b/.github/workflows/test-and-release.yml index a56a557f..d272c790 100644 --- a/.github/workflows/test-and-release.yml +++ b/.github/workflows/test-and-release.yml @@ -30,7 +30,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} @@ -62,7 +62,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} @@ -99,7 +99,7 @@ jobs: uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} diff --git a/README.md b/README.md index 7c559d96..97b8e2c1 100644 --- a/README.md +++ b/README.md @@ -27,11 +27,11 @@ This adapter uses the service Sentry.io to automatically report exceptions and c automatische Rollladensteuerung -[Deutsche Beschreibung hier](docs/de/shuttercontrol.md) +[Deutsche Beschreibung hier](https://github.com/simatec/ioBroker.shuttercontrol/wiki/Shuttercontrol-Wiki-Deutsch) automatic control for shutters -[English Description here](docs/en/shuttercontrol.md) +[English Description here](https://github.com/simatec/ioBroker.shuttercontrol/wiki/Shuttercontrol-Wiki-English) ### What is Sentry.io and what is reported to the servers of that company? @@ -46,11 +46,13 @@ When the adapter crashes or an other Code error happens, this error message that ## Changelog -### __WORK IN PROGRESS__ +### 1.6.3 (2023-11-01) * (simatec) Saturday added as work week * (simatec) Dependencies updated * (simatec) Fix Auto-Living, Auto-Sleep & Auto-Children * (simatec) Timeout Fix +* (FredF63) Update German Docu +* (simatec) Wiki added ### 1.6.2 (2023-08-28) * (simatec) Dependencies updated diff --git a/docs/de/img/datapointscontrol.PNG b/docs/de/img/datapointscontrol.png similarity index 100% rename from docs/de/img/datapointscontrol.PNG rename to docs/de/img/datapointscontrol.png diff --git a/docs/de/shuttercontrol.md b/docs/de/shuttercontrol.md index 0504aace..2ba7f8e0 100644 --- a/docs/de/shuttercontrol.md +++ b/docs/de/shuttercontrol.md @@ -1,5 +1,4 @@ ![Logo](img/shuttercontrol.png) -# Shuttercontrol - Adapter zur automatischen Rollladensteuerung ![Number of Installations](http://iobroker.live/badges/shuttercontrol-installed.svg) ![Number of Installations](http://iobroker.live/badges/shuttercontrol-stable.svg) @@ -7,7 +6,6 @@ [![Downloads](https://img.shields.io/npm/dm/iobroker.shuttercontrol.svg)](https://www.npmjs.com/package/iobroker.shuttercontrol) [![Known Vulnerabilities](https://snyk.io/test/github/simatec/ioBroker.shuttercontrol/badge.svg)](https://snyk.io/test/github/simatec/ioBroker.shuttercontrol) -[![Travis-CI](http://img.shields.io/travis/simatec/ioBroker.shuttercontrol/master.svg)](https://travis-ci.org/simatec/ioBroker.shuttercontrol) ![Test and Release](https://github.com/simatec/ioBroker.shuttercontrol/workflows/Test%20and%20Release/badge.svg) [![License](https://img.shields.io/github/license/simatec/ioBroker.shuttercontrol?style=flat)](https://github.com/simatec/ioBroker.shuttercontrol/blob/master/LICENSE) [![Donate](https://img.shields.io/badge/donate-paypal-blue?style=flat)](https://paypal.me/mk1676) @@ -18,35 +16,13 @@ [![paypal](https://www.paypalobjects.com/en_US/DK/i/btn/btn_donateCC_LG.gif)](https://paypal.me/mk1676) -# Inhalt -* [Grundlegendes](#grundlegendes) -* [Installation](#installation) -* [Konfiguration](#konfiguration) - * [HAUPTEINSTELLUNGEN](#haupteinstellungen) - * [Adapterkonfiguration sichern oder hochladen](#adapterkonfiguration-sichern-oder-hochladen) - * [ZEIT-EINSTELLUNGEN](#zeit-einstellungen) - * [EXTRA-EINSTELLUNGEN](#extra-einstellungen) - * [Astro-Einstellungen](#astro-einstellungen) - * [Sommer-Einstellungen](#sommer-einstellungen) - * [Weihnachtseinstellungen](#weihnachtseinstellungen) - * [Urlaubs- und Feiertagseinstellungen](#urlaubs--und-feiertagseinstellungen) - * [Einstellungen Helligkeitssensor](#einstellungen-helligkeitssensor) - * [Schulferien Einstellungen](#schulferien-einstellungen) - * [Sonderzeiten](#sonderzeiten) - * [Extra-Einstellungen](#extra-einstellungen) - * [Alarm-Einstellungen](#alarm-einstellungen) - * [Rollladeneinstellungen](#rollladeneinstellungen) - * [Haupteinstellungen Rollladen](#haupteinstellungen-rollladen) - * [Sonnenschutz-Einstellungen](#sonnenschutz-einstellungen) - * [Extra-Einstellungen](#extra-einstellungen-rollladen) -* [Datenpunkte](#datenpunkte) - * [shuttercontrol.0.control](#shuttercontrol0control) - * [shuttercontrol.0.info](#shuttercontrol0info) - * [shuttercontrol.0.shutters](#shuttercontrol0shutters) - -## Grundlegendes - ->:grey_exclamation: Die Anleitung ist gültig für Version stable 1.6.2 :grey_exclamation: + +--- + + +# Grundlegendes + +>:grey_exclamation: Die Anleitung ist gültig ab Version stable 1.6.2 :grey_exclamation: Shuttercontrol ist ein Adapter für eine sehr umfangreiche Steuerung von Rollläden, Jalousien oder Markisen und umfasst sowohl die automatische Beschattung als auch @@ -78,35 +54,44 @@ anbieten, können unter Verwendung von zwei Rollladenobjekten mit gleicher Param werden. +--- -## Installation + +# Installation Der Adapter befindet sich im "stable" Verwahrungsort von ioBroker. Im Reiter "Adapter" wird dann "shuttercontrol" ausgewählt und über (+) eine Instanz des Shuttercontrol-Adapters erzeugt. -## Konfiguration +# Konfiguration Nach der Erstellung der Instanz öffnet sich automatisch das Konfigurationsfenster mit den Reitern HAUPTEINSTELLUNGEN, ZEIT-EINSTELLUNGEN und EXTRA-EINSTELLUNGEN. >:point_right: Die Reiter [Zeit-Einstellungen][] und [Extra-Einstellungen][] sollten zuerst bearbeitet werden, also bevor Rollläden über den Bleistift in den HAUPTEINSTELLUNGEN hinzugefügt werden. -### HAUPTEINSTELLUNGEN + +--- + + +## HAUPTEINSTELLUNGEN ![main](img/main.png) --- >:point_right: Über das Fragezeichen oben rechts (7), kann die Dokumentation auf github erreicht werden. -#### Adapterkonfiguration sichern oder hochladen +### Adapterkonfiguration sichern oder hochladen Oben rechts kann mit klicken auf den Pfeil nach unten(9) die Adapterkonfiguration als .json Datei gesichert werden. Mit klicken auf den Pfeil nach oben (8) kann eine vorhandene Adapterkonfiguration im .json Format hochgeladen werden. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -### ZEIT-EINSTELLUNGEN + +## ZEIT-EINSTELLUNGEN Hier werden grundlegende Zeit- bzw. Astro Einstellungen vorgenommen, die später in den [Rollladeneinstellungen][] für jeden Rollladen verwendet werden. @@ -116,7 +101,7 @@ und **Sonntags** immer zur eingestellten Zeit der **Arbeitswoche** :heavy_exclam ![timeSettings](img/timeSettings.png) -#### Einstellungen für den Wohnbereich, Schlafbereich und Kinderbereich +### Einstellungen für den Wohnbereich, Schlafbereich und Kinderbereich Über Dropdown werden die einzelnen Einstellungen geöffnet. Die Beschreibung ist exemplarisch für den Wohnbereich beschrieben und gilt analog für alle Bereiche. @@ -157,14 +142,16 @@ Stand noch nicht überschritten hat, muss diese Zeit auf den spätesten Zeitpunkt dieses Sonnenstandes (am 21.12.) eingestellt werden. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -### EXTRA-EINSTELLUNGEN +## EXTRA-EINSTELLUNGEN ![KonfigExtra](img/KonfigExtra.png) -#### Astro-Einstellungen +### Astro-Einstellungen ![extraSettingsAstro](img/ExtraSettingsAstro.png) @@ -184,10 +171,12 @@ um den sich die Rollladenfahrten von der in der [Zeit-Einstellungen][] ausgewäh kann hier eine globale Zeitverzögerung in Sekunden eingestellt werden.* -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Sommer-Einstellungen +### Sommer-Einstellungen ![extraSettingsSummer](img/ExtraSettingsSummer.png) @@ -196,10 +185,12 @@ kann hier eine globale Zeitverzögerung in Sekunden eingestellt werden.* Unter [Rollladen-Einstellungen][] des jeweiligen Rolladens wird dann durch setzen der Checkbox bei ```Rollladen im Sommer nicht schließen``` verhindert, das dieser Rollladen im Sommer schließt. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Weihnachtseinstellungen +### Weihnachtseinstellungen ![extraSettingsChristmas](img/ExtraSettingsChristmas.png) @@ -210,10 +201,12 @@ die zu dieser Zeit gewünschte Funktion eingeschaltet und die gewünschte Rollladenposition festgelegt. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Urlaubs- und Feiertagseinstellungen +### Urlaubs- und Feiertagseinstellungen ![extraSettingsHolidays](img/ExtraSettingsHolidays.png) @@ -226,10 +219,12 @@ die gewünschte Rollladenposition festgelegt. Hier kann z.Bsp. ein Datenpunkt aus dem iCal-Adapter verwenden werden, der im Urlaubsfall den Wert ```true``` liefert und damit die Rollläden zu den Wochenendzeiten fahren lässt. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Einstellungen Helligkeitssensor +### Einstellungen Helligkeitssensor ![extraSettingsBrightnesssensor](img/ExtraSettingsBrightnesssensor.png) @@ -245,10 +240,12 @@ beim Punkt **Art der Steuerung für schließen (bzw. öffnen) des Rollladens**, **Objekt-ID des Helligkeitssensors** *Der Verweis auf den Helligkeitssensor, z.B. von einer Wetterstation oder von einem Bewegungsmelder im Außenbereich oder separaten Helligkeitssensor* -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Schulferien Einstellungen +### Schulferien Einstellungen ![extraSettingsSchoolholidays](img/ExtraSettingsSchoolholidays.png) @@ -257,10 +254,12 @@ Die Rollläden öffnen dann in der Ferienzeit zu den eingestellten Zeiten für d Der Ferienbetrieb kann für jeden Bereich einzeln aktiviert werden. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Sonderzeiten +### Sonderzeiten ![extraSettingsSonder](img/ExtraSettingsSonder.png) @@ -280,10 +279,12 @@ bei **Rollladen spät schließen** separat aktiviert bzw. falls nicht gewünscht abgelaufen ist.* -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Extra-Einstellungen +### Extra-Einstellungen ![extraSettingsExtra](img/ExtraSettingsExtra.png) @@ -304,7 +305,7 @@ Hier kann die Postition der Rolllläden in 5er oder 10er Schritten gerundet werd **Objekt ID des Triggers für den Kinderbereich (Auto):** *Mit diesem Auslöser wird der Automodus des Kinderbereichs aktiviert.* --- -#### Alarm-Einstellungen +### Alarm-Einstellungen ![extraSettingsAlarm](img/ExtraSettingsAlarm.png) @@ -340,10 +341,12 @@ Beim deaktivieren der einzelnen Alarme wird aber auf folgende Priorität geachte Der Frost Alarm wirkt sich nur dann direkt aus, wenn die aktivierten Rollos bereits geschlossen sind (Gefahr von Festfrieren des Rollos). Wenn der Frostalarm bei noch offenem Rollladen ausgelöst wird, fährt der Rollladen beim Schliessen automatisch nur auf die für Frostalarm eingestelle Höhe. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -### Rollladeneinstellungen +## Rollladeneinstellungen ![main1](img/main1.png) @@ -388,7 +391,7 @@ jeder Rollladen einzeln weiter konfiguriert. --- -#### Haupteinstellungen Rollladen +### Haupteinstellungen Rollladen ![mainShutter.png](img/mainShutter.png) @@ -485,10 +488,12 @@ bei Türen um durchgehen zu können.* -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Sonnenschutz-Einstellungen +### Sonnenschutz-Einstellungen ![sunProtect](img/mainSunprotect.png) **Art der Sonnenschutzsteuerung:** @@ -560,14 +565,16 @@ Die Hysterese ist der Unterschied zwischen dem oberen Temperaturwert, bei dem di Ist kein Innensensor als Auslöser gewählt, dieses Feld leer lassen. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -#### Extra-Einstellungen Rollladen +### Extra-Einstellungen Rollladen ![mainExtra](img/mainExtra.png) -##### Rollladen-Einstellungen +### Rollladen-Einstellungen ![mainExtraShutterSettings](img/mainExtraShutterSettings.png) @@ -587,7 +594,7 @@ Position gefahren. > :point_right: Dies funktioniert nur, wenn der Aussperrschutz nicht auf "Aus" steht! -##### Weihnachtseinstellungen +### Weihnachtseinstellungen ![mainExtraChristmas](img/mainExtraChristmas.png) @@ -605,7 +612,7 @@ eingestellt. > verwendet werden. > :point_right: Diese beiden Optionen sind auch unabhängig von den Weihnachtseinstellungen verwendbar. -##### Sonnenschutz-Einstellungen +### Sonnenschutz-Einstellungen ![mainExtraSun](img/mainExtraSun.png) @@ -626,7 +633,7 @@ automatisch angefahrenen, setzt die Automatik aus! > :point_right: Wird der Rollladen manuell in die konfigurierte Höhe für öffnen, schließen oder Sonnenschutz gefahren, bleibt die Automatik allerdings bestehen. -##### Extra-Einstellungen +### Extra-Einstellungen ![mainExtraExtra](img/mainExtraExtra.png) **Rollladen Verzögerung bei Fenster öffnen (s)** *Parameter um das Öffnen des Rollladens zu verzögern, nachdem das Fenster/Türe geöffnet wurde (in Sekunden)* @@ -635,17 +642,19 @@ automatisch angefahrenen, setzt die Automatik aus! **In Zwischenposition fahren und später komplett schliessen** *Bei Aktivierung wird **Rollladenhöhe in der Zwischenposition** sichtbar. Der Rollladen fährt dann beim Schließen in die eingestellte Zwischenposition und schließt später komplett* -##### Alarm Einstellung +### Alarm Einstellung ![mainExtraAlarm](img/mainExtraAlarm.png) Hier werden die über [Alarm-Einstellungen][] vordefinierten Alarme für den aktuellen Rollladen aktiviert oder deaktiviert. -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -## Datenpunkte +# Datenpunkte Shuttercontrol legt verschiedene Datenpunkte unter folgenden Ordnern an: * shuttercontrol.x.control * shuttercontrol.x.info @@ -654,7 +663,7 @@ Shuttercontrol legt verschiedene Datenpunkte unter folgenden Ordnern an: > :point_right: x steht für die jeweilig installierte Instanz --- -### shuttercontrol0control +## shuttercontrol0control ![datapointscontrol](img/datapointscontrol.png) @@ -720,21 +729,26 @@ Button um **alle** Rollläden im Wohnbereich zu öffnen *Button um die Rollläden im Schlafbereich in die Sonnenschutzposition zu fahren* -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -### shuttercontrol0info + +## shuttercontrol0info Datenpunkte zur Anzeige berechneter Werte und zur Überprüfung von konfigurierten Zeiten: ![datapointsinfo](img/datapointsinfo.png) -* [zurück zum Inhaltsverzeichnis][] +_[Zurück zum Anfang](#top)_ + + --- -### shuttercontrol0shutters +## shuttercontrol0shutters ![datapointsshutters](img/datapointsshutters.png) * autoDown @@ -756,32 +770,5 @@ bzw. mit ```true```aktiviert werden.* bzw. mit ```true```aktiviert werden.* -* [zurück zum Inhaltsverzeichnis][] - - -[zurück zum Inhaltsverzeichnis]: #Inhalt -[Grundlegendes]: #grundlegendes -[Installation]: #installation -[Konfiguration]: #konfiguration -[HAUPTEINSTELLUNGEN]: #haupteinstellungen -[ZEIT-EINSTELLUNGEN]: #zeit-einstellungen -[EXTRA-EINSTELLUNGEN]: #extra-einstellungen -[Astro-Einstellungen]: #astro-einstellungen -[Sommer-Einstellungen]: #sommer-einstellungen -[Weihnachtseinstellungen]: #weihnachtseinstellungen -[Urlaubs- und Feiertagseinstellungen]: #urlaubs--und-feiertagseinstellungen -[Einstellungen Helligkeitssensor]: #einstellungen-helligkeitssensor -[Schulferien Einstellungen]: #schulferien-einstellungen -[Sonderzeiten]: #sonderzeiten -[Extra-Einstellungen]: #extra-einstellungen -[Alarm-Einstellungen]: #alarm-einstellungen -[Rollladeneinstellungen]: #rollladeneinstellungen -[Haupteinstellungen Rollladen]: #haupteinstellungen-rollladen -[Sonnenschutz-Einstellungen]: #sonnenschutz-einstellungen -[Extra-Einstellungen Rollladen]: #extra-einstellungen-rollladen -[Rollladen-Einstellungen]: #rollladen-einstellungen -[Alarm Einstellung]: #alarm-einstellung -[Datenpunkte]: #datenpunkte -[shuttercontrol.0.control]: #shuttercontrol0control -[shuttercontrol.0.info]: #shuttercontrol0info -[shuttercontrol.0.shutters]: #shuttercontrol0shutters +_[Zurück zum Anfang](#top)_ + diff --git a/docs/en/img/ExtraSettingsAlarm.png b/docs/en/img/ExtraSettingsAlarm.png new file mode 100644 index 00000000..dbb719d5 Binary files /dev/null and b/docs/en/img/ExtraSettingsAlarm.png differ diff --git a/docs/en/img/ExtraSettingsAstro.png b/docs/en/img/ExtraSettingsAstro.png new file mode 100644 index 00000000..e5967d02 Binary files /dev/null and b/docs/en/img/ExtraSettingsAstro.png differ diff --git a/docs/en/img/ExtraSettingsBrightnesssensor.png b/docs/en/img/ExtraSettingsBrightnesssensor.png new file mode 100644 index 00000000..d073552f Binary files /dev/null and b/docs/en/img/ExtraSettingsBrightnesssensor.png differ diff --git a/docs/en/img/ExtraSettingsChristmas.png b/docs/en/img/ExtraSettingsChristmas.png new file mode 100644 index 00000000..f6719ed0 Binary files /dev/null and b/docs/en/img/ExtraSettingsChristmas.png differ diff --git a/docs/en/img/ExtraSettingsExtra.png b/docs/en/img/ExtraSettingsExtra.png new file mode 100644 index 00000000..07e6697a Binary files /dev/null and b/docs/en/img/ExtraSettingsExtra.png differ diff --git a/docs/en/img/ExtraSettingsHolidays.png b/docs/en/img/ExtraSettingsHolidays.png new file mode 100644 index 00000000..5faafda6 Binary files /dev/null and b/docs/en/img/ExtraSettingsHolidays.png differ diff --git a/docs/en/img/ExtraSettingsSchoolholidays.png b/docs/en/img/ExtraSettingsSchoolholidays.png new file mode 100644 index 00000000..05a8dad1 Binary files /dev/null and b/docs/en/img/ExtraSettingsSchoolholidays.png differ diff --git a/docs/en/img/ExtraSettingsSonder.png b/docs/en/img/ExtraSettingsSonder.png new file mode 100644 index 00000000..f5d4c2c2 Binary files /dev/null and b/docs/en/img/ExtraSettingsSonder.png differ diff --git a/docs/en/img/ExtraSettingsSummer.png b/docs/en/img/ExtraSettingsSummer.png new file mode 100644 index 00000000..9c946141 Binary files /dev/null and b/docs/en/img/ExtraSettingsSummer.png differ diff --git a/docs/en/img/ExtraSettingsTrigger.png b/docs/en/img/ExtraSettingsTrigger.png deleted file mode 100644 index 95248bb2..00000000 Binary files a/docs/en/img/ExtraSettingsTrigger.png and /dev/null differ diff --git a/docs/en/img/ID_Selector_DP_Level.png b/docs/en/img/ID_Selector_DP_Level.png new file mode 100644 index 00000000..0c3ef4de Binary files /dev/null and b/docs/en/img/ID_Selector_DP_Level.png differ diff --git a/docs/en/img/KonfigExtra.png b/docs/en/img/KonfigExtra.png new file mode 100644 index 00000000..e56abce6 Binary files /dev/null and b/docs/en/img/KonfigExtra.png differ diff --git a/docs/en/img/Shuttercontrol Alarm Settings.png b/docs/en/img/Shuttercontrol Alarm Settings.png deleted file mode 100644 index 868e7814..00000000 Binary files a/docs/en/img/Shuttercontrol Alarm Settings.png and /dev/null differ diff --git a/docs/en/img/datapointscontrol.png b/docs/en/img/datapointscontrol.png new file mode 100644 index 00000000..19e07809 Binary files /dev/null and b/docs/en/img/datapointscontrol.png differ diff --git a/docs/en/img/datapointsinfo.png b/docs/en/img/datapointsinfo.png new file mode 100644 index 00000000..59a8d6b3 Binary files /dev/null and b/docs/en/img/datapointsinfo.png differ diff --git a/docs/en/img/datapointsshutters.png b/docs/en/img/datapointsshutters.png new file mode 100644 index 00000000..5710db42 Binary files /dev/null and b/docs/en/img/datapointsshutters.png differ diff --git a/docs/en/img/extraSettings.jpg b/docs/en/img/extraSettings.jpg deleted file mode 100644 index 099cf7c4..00000000 Binary files a/docs/en/img/extraSettings.jpg and /dev/null differ diff --git a/docs/en/img/idSelect.jpg b/docs/en/img/idSelect.jpg deleted file mode 100644 index 36c1c86c..00000000 Binary files a/docs/en/img/idSelect.jpg and /dev/null differ diff --git a/docs/en/img/main.jpg b/docs/en/img/main.jpg deleted file mode 100644 index da8ffe1a..00000000 Binary files a/docs/en/img/main.jpg and /dev/null differ diff --git a/docs/en/img/main.png b/docs/en/img/main.png new file mode 100644 index 00000000..dbaf2c64 Binary files /dev/null and b/docs/en/img/main.png differ diff --git a/docs/en/img/main1.png b/docs/en/img/main1.png new file mode 100644 index 00000000..e07d60f3 Binary files /dev/null and b/docs/en/img/main1.png differ diff --git a/docs/en/img/mainExtra.PNG b/docs/en/img/mainExtra.PNG deleted file mode 100644 index 4eb7223b..00000000 Binary files a/docs/en/img/mainExtra.PNG and /dev/null differ diff --git a/docs/en/img/mainExtra.png b/docs/en/img/mainExtra.png new file mode 100644 index 00000000..94708ccd Binary files /dev/null and b/docs/en/img/mainExtra.png differ diff --git a/docs/en/img/mainExtraAlarm.png b/docs/en/img/mainExtraAlarm.png new file mode 100644 index 00000000..9d12b217 Binary files /dev/null and b/docs/en/img/mainExtraAlarm.png differ diff --git a/docs/en/img/mainExtraChristmas.png b/docs/en/img/mainExtraChristmas.png new file mode 100644 index 00000000..056ff1f0 Binary files /dev/null and b/docs/en/img/mainExtraChristmas.png differ diff --git a/docs/en/img/mainExtraExtra.png b/docs/en/img/mainExtraExtra.png new file mode 100644 index 00000000..ce44aa09 Binary files /dev/null and b/docs/en/img/mainExtraExtra.png differ diff --git a/docs/en/img/mainExtraShutterSettings.png b/docs/en/img/mainExtraShutterSettings.png new file mode 100644 index 00000000..438eafad Binary files /dev/null and b/docs/en/img/mainExtraShutterSettings.png differ diff --git a/docs/en/img/mainExtraSun.png b/docs/en/img/mainExtraSun.png new file mode 100644 index 00000000..3a85e51c Binary files /dev/null and b/docs/en/img/mainExtraSun.png differ diff --git a/docs/en/img/mainShutter.jpg b/docs/en/img/mainShutter.jpg deleted file mode 100644 index 3e2b309b..00000000 Binary files a/docs/en/img/mainShutter.jpg and /dev/null differ diff --git a/docs/en/img/mainShutter.png b/docs/en/img/mainShutter.png index 0d30050f..be9b09e3 100644 Binary files a/docs/en/img/mainShutter.png and b/docs/en/img/mainShutter.png differ diff --git a/docs/en/img/mainSunprotect.png b/docs/en/img/mainSunprotect.png new file mode 100644 index 00000000..a48500dd Binary files /dev/null and b/docs/en/img/mainSunprotect.png differ diff --git a/docs/en/img/sunProtect.jpg b/docs/en/img/sunProtect.jpg deleted file mode 100644 index edd0c4f0..00000000 Binary files a/docs/en/img/sunProtect.jpg and /dev/null differ diff --git a/docs/en/img/sunProtect.png b/docs/en/img/sunProtect.png deleted file mode 100644 index 7a62c94c..00000000 Binary files a/docs/en/img/sunProtect.png and /dev/null differ diff --git a/docs/en/img/timeSettings.jpg b/docs/en/img/timeSettings.jpg deleted file mode 100644 index 871c12de..00000000 Binary files a/docs/en/img/timeSettings.jpg and /dev/null differ diff --git a/docs/en/img/timeSettings.png b/docs/en/img/timeSettings.png new file mode 100644 index 00000000..bcae8aca Binary files /dev/null and b/docs/en/img/timeSettings.png differ diff --git a/docs/en/shuttercontrol.md b/docs/en/shuttercontrol.md index 1df4201d..d12c598c 100644 --- a/docs/en/shuttercontrol.md +++ b/docs/en/shuttercontrol.md @@ -1,4 +1,4 @@ -## Shuttercontrol is an adapter for the automatic control of roller shutters and awnings. +![Logo](img/shuttercontrol.png) ![Number of Installations](http://iobroker.live/badges/shuttercontrol-installed.svg) ![Number of Installations](http://iobroker.live/badges/shuttercontrol-stable.svg) @@ -6,315 +6,772 @@ [![Downloads](https://img.shields.io/npm/dm/iobroker.shuttercontrol.svg)](https://www.npmjs.com/package/iobroker.shuttercontrol) [![Known Vulnerabilities](https://snyk.io/test/github/simatec/ioBroker.shuttercontrol/badge.svg)](https://snyk.io/test/github/simatec/ioBroker.shuttercontrol) -[![Travis-CI](http://img.shields.io/travis/simatec/ioBroker.shuttercontrol/master.svg)](https://travis-ci.org/simatec/ioBroker.shuttercontrol) ![Test and Release](https://github.com/simatec/ioBroker.shuttercontrol/workflows/Test%20and%20Release/badge.svg) [![License](https://img.shields.io/github/license/simatec/ioBroker.shuttercontrol?style=flat)](https://github.com/simatec/ioBroker.shuttercontrol/blob/master/LICENSE) [![Donate](https://img.shields.io/badge/donate-paypal-blue?style=flat)](https://paypal.me/mk1676) [![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/simatec) -**If you like it, please consider a donation:** +**If you like the adapter, please consider making a donation:** [![paypal](https://www.paypalobjects.com/en_US/DK/i/btn/btn_donateCC_LG.gif)](https://paypal.me/mk1676) -# Basic -As of version 0.2.11, all configuration data points are already preset with examples, so that the adapter is ready for operation after installation and entry of the IDs of the roller shutter actuators. -The further configuration then serves to adapt to personal wishes. +--- + + +# Basics + +>:grey_exclamation: The manual is valid from version stable 1.6.2 :grey_exclamation: + +Shuttercontrol is an adapter for a very comprehensive control of roller shutters, +blinds or awnings and includes both the automatic shading and the nightly +the night-time darkening. + +>:point_right: For the sake of simplicity, only roller shutters are mentioned here. + +A large number of adjustable parameters are available for the control, for example: +* three different global timers for e.g. living room, bedroom and children's area, +* various sun position-dependent parameters that can be set individually for each roller shutter. +can be set individually for each roller shutter, +* Triggers for door/window sensors that serve as lock-out protection or automatic opening at an individual level. +opening at an individual level when the door or window is opened, +* Various adjustable parameters for shading depending on e.g. +inside temperature, outside temperature, brightness, heat sensor or similar, +* Inclusion of the position of the sun in order to only darken rooms that are actually shaded. +are illuminated. + +All configuration data points are already preset with examples so that +the adapter is quickly ready for use after installing and entering the IDs of the shutter +ready for operation. + +The further configuration is then used to adapt to personal wishes. + +> Shuttercontrol can only control actuators via the position, e.g. LEVEL, with values of +from 0 to 100 or 0-255 respectively. The respective shutter or blind timing must be taken over by the actuator. +be taken over by the actuator. Blind actuators that offer one object each for "height" and "slat angle" can be controlled using two blinds. +can be used with two shutter objects with the same parameterisation. +be used. + + +--- + + +# Installation +The adapter is located in the "stable" repository of ioBroker. In the "Adapter" tab +"shuttercontrol" is selected and an instance of the shuttercontrol adapter is created via (+). + +# Configuration +After the creation of the instance, the configuration window opens automatically with the +tabs MAIN SETTINGS, TIME SETTINGS and EXTRA SETTINGS. + +>:point_right: The [Time Settings][] and [Extra Settings][] tabs should be edited first, +i.e. before shutters are added via the pencil in the MAIN SETTINGS. + + +--- + + +## MAIN SETTINGS + + +![main](img/main.png) +--- +>:point_right: The documentation on github can be accessed via the question mark at the top right (7). + +### Save or upload adapter configuration + +Click on the arrow pointing downwards (9) in the top right-hand corner to save the adapter configuration as a .json file. +Click on the up arrow (8) to upload an existing adapter configuration in .json format. + + +_[Back to top](#top)_ + + +--- + + +## TIME SETTINGS +Basic time or Astro settings are made here, which are later used in the [Shutter settings][] for each shutter. +the [Shutter settings][] for each shutter. + +>:heavy_exclamation_mark: Shuttercontrol always closes shutters **Friday** at the set time of the **weekend**. +and **Sundays** always at the set time of the **working week** :heavy_exclamation_mark: + + +![timeSettings](img/timeSettings.png) + +### Settings for the living area, sleeping area and children's area +The individual settings are opened via dropdown. The description is given as an example for the living area and applies analogously to all areas. +for all areas. + +>:point_right: Of course, this categorisation does not necessarily have to be used for a living, sleeping or children's area. +children's area, but makes it possible to define three areas in the building with different movement times of the roller shutters. + +**Type of automatic control for the living area** + +Pulldown is used to select between: + +* **Living area time only:** +*The roller shutters are only operated time-controlled. + +* Time living area with sunrise & sunset. +*The roller shutters are controlled according to sunrise and sunset, but do not go up +up before the earliest time and not down after the latest time. + +* **Time living area with Golden Hour:** +*Analogous to the sunrise and sunset, but with the beginning and end of the "Golden Hour" as a reference. + +**Closing the shutters during the working week:** *Customary time for darkening during the week*. + +**Earliest time for raising during the week:** *This is the earliest time for raising the shutters during the week. + +**Latest time for raising during the week:** *This is the latest time at which the roller shutters will be raised during the week*. + +**Time delay for the staggered raising of the roller shutters (seconds):** *Distance between the individual raising of the roller shutters +of this range, e.g. to avoid radio interference or to give the impression that they are being moved manually. + +**Closing of roller shutters at weekends:** *Customary time for darkening at weekends **and** on public holidays. + +**Earliest time for raising at weekends:** *This is the earliest time at which the shutters are raised at weekends **and** on public holidays. + +**Latest time for raising at the weekend:** *At this time the roller shutters are raised at the weekend **and** at the latest on public holidays*. + +>:point_right: If roller shutters are never to be raised if the sun has not yet exceeded a certain +has not yet passed a certain position, this time must be set to the latest +time of this sun position (on 21.12.). + + +_[Back to top](#top)_ + + +--- + +## EXTRA SETTINGS + +![ConfigExtra](img/KonfigExtra.png) + +### Astro settings + +![extraSettingsAstro](img/ExtraSettingsAstro.png) + +**Latitude and longitude:** *Shuttercontrol takes the latitude and longitude from the ioBroker system settings. +Shuttercontrol uses these values to calculate the position of the sun. + +**Exiting the sun protection function with sun height (elevation):** *As soon as the sun falls below the height set here, the shading ends. +the shading by Shuttercontrol ends. + +>:point_right: Possibly existing premature shading due to buildings or high trees, +can be taken into account here and end the automatic shading earlier. + +**Time delay for raising or lowering (minutes):** *A +/- offset can be entered here, +by which the shutter movements should be delayed from the type of automatic control selected in [Time settings][]. + +**Time delay for staggered shutter movement (seconds):** *To prevent all shutters from moving at the same time, +a global time delay in seconds can be set here. + + +_[Back to top](#top)_ + +--- + +### Summer settings + +![extraSettingsSummer](img/ExtraSettingsSummer.png) + +**Start of summer** and **End of summer:** *Here the start or end of summer can be set according to your own wishes. + +Under [Shutter settings][] of the respective shutter, setting the checkbox at ``Do not close shutter in summer`` prevents this shutter from closing in summer. + + +_[Back to top](#top)_ + + +--- + +### Christmas settings + +![extraSettingsChristmas](img/ExtraSettingsChristmas.png) + +**Start of the Christmas period** and **End of the Christmas period:** *Here, the start or end of the Christmas period can be set according to your own wishes. + +Under [Extra settings for roller shutters][] Christmas settings +the function desired at this time is switched on and +the desired roller shutter position. + + +_[Back to top](#top)_ + + +--- + +### Holiday and public holiday settings + +![extraSettingsHolidays](img/ExtraSettingsHolidays.png) + +**Using public holidays:** *By activating this checkbox and selecting the corresponding instance of the holiday adapter, the shutters will move on public holidays at the set times from the weekend. + +>:point_right: If necessary, two instances of the public holiday adapter can be created: +> one to display all possible public holidays and one with public holidays relevant to working time, which is then accessed by shuttercontrol. + +**Object ID for setting the holiday: *This object ID sets the internal state "Holiday". +Here, for example, a data point from the iCal adapter can be used that returns the value ``true`` in the case of a holiday and thus allows the shutters to move at the weekend times. + + +_[Back to top](#top)_ + + +--- + +### Brightness Sensor Settings + +![extraSettingsBrightnesssensor](img/ExtraSettingsBrightnesssensor.png) + +If the shutters are to be moved automatically using a brightness sensor, this is configured here. + +Activation is then carried out individually for each shutter under [Main shutter settings][]. +under **Type of control for closing (or opening) the roller shutter** by selecting the entry "Brightness sensor". + +**Brightness value for closing with brightness sensor** *Brightness value from which the shutters are to be closed. + +**Brightness value for opening with brightness sensor** *Brightness value from which the shutters are to be opened*. + +**Object ID of brightness sensor** *The reference to the brightness sensor, e.g. from a weather station or from an outdoor motion sensor or separate brightness sensor. + + +_[Back to top](#top)_ + + +--- + +### School Holidays Settings -> Shuttercontrol is able to work with actors which can be controlled over an position object like LEVEL with values from 0 to 100% or 0-255 respectivly. The needed shutter timing must be done by the according actor. Actor for blinds with 2 separated objecs for "hight" and "lid angle" are supported and can be controled by using 2 Objects with the same configuraiton (one for "hight" one for "lid angle" +![extraSettingsSchoolholidays](img/ExtraSettingsSchoolholidays.png) +Here, the holiday period can be activated either via a separate data point with **Object ID for activating/deactivating school holidays** or by setting the tick the instance of the installed Schoolfree Adapter. +The shutters then open during the holiday period at the set times for weekend driving. +Holiday mode can be activated individually for each area. -## installation -The adapter is already in the latest repository. In order to install it you have to set its active repository (temporarily) to latest in the basic settings of ioBroker. -At the latest after refreshing the adapter list the adapter **Shuttercontrol** is available. +_[Back to top](#top)_ -After clicking the (+) an instance is created and the necessary data of the adapter is loaded from the repository: -# Configuration - Main Settings -If in the installation window the checkbox "***close when finished***" does not have to be ticked you have to close this course. +--- + +### Special times + +![extraSettingsSonder](img/ExtraSettingsSonder.png) + + +**Close certain shutters later** *This option allows all shutters to be lowered again late in the evening. +This covers the scenario when at the normal time for shutting down the window or door was still open. +window or door was still open at the normal time for closing, or if, for example, the patio door is +is opened again after shutting down. +When the check mark is set, the setting **Time at which the configured roller shutters should close late** appears. + +> This function must be activated for each shutter in the [Shutter settings][] with the check mark +at **Close roller shutter late** for each roller shutter separately or deactivated if not desired. + +**Close all shutters completely in the intermediate position** *Time when all shutters are completely closed in the evening (e.g. 10:00 p.m.)*. + +**Open roller shutter only if last movement x minutes ago:** *The roller shutter is only opened by the adapter if the time set here has elapsed. +set here has elapsed. + + +_[Back to top](#top)_ + +--- + +### Extra settings + +![extraSettingsExtra](img/ExtraSettingsExtra.png) + +**Checking the current shutter status:** +Some users (among others shelly users) have the problem that the +level changes a little bit. For this reason there is a checkbox here. +If the checkbox is activated, shuttercontrol will check the current level after the waiting time for the +check of the shutter status, shuttercontrol checks the current level and saves it temporarily. + +**Blocking the manu mode for known shutter heights** *Rounding up or down the current shutter heights*. +Here the position of the roller shutters can be rounded in steps of 5 or 10. + + +**Object ID of the trigger for the sleeping area (Auto):** *This trigger activates the auto mode of the sleeping area. + +**Object ID of the living area trigger (Auto):** *This trigger activates the living area's Auto mode. + +**Object ID of the trigger for the children's area (Auto):** *This trigger activates the children's area's Auto mode. + +--- +### Alarm settings + +![extraSettingsAlarm](img/ExtraSettingsAlarm.png) + +>:point_right: For each alarm, a logical data point (true/false) is required for activation, +> which activates the **alarm** = status **true** or deactivates the **alarm** = status **false**. +>:point_right: Furthermore, the height (0-100%) to which the roller shutter moves in the event of an alarm must be defined for each alarm. +>point_right: In the [Alarm setting][] of the respective shutter, it is then defined to which alarms the shutter should react. +shutter should react. + + +Priorities of the individual alarms: + +Prio 1 (highest priority) --> Fire: + +If this alarm is triggered, the roller shutters configured for it will move to the set height in **any** case. +>:exclamation: The shutters are then blocked and will **NOT** close automatically, even if the fire alarm is reset (false). -The configuration window consists of three tabs: -* Main settings -* Time settings -* Extra settings +>:point_right:After the fire alarm has been reset, the blinds must be reinitialised using the "openAll" / "closeAll" buttons. +This prevents the roller shutters from being closed again automatically for any reason in the event of a fire. +It also ensures that escape routes remain open and access for the fire brigade is guaranteed. + +Prio 2 - 5 (same priority) --> Rain, Wind2, Wind1, Frost: -The configuration window opens automatically with the main settings +When these alarms are activated, Shuttercontrol moves the configured roller shutter to the last active alarm level. -![main.jpg](img/main.jpg) +When deactivating the individual alarms, however, the following priority is observed: + Prio 1 = Fire + Prio 2 = Rain + Prio 3 = Wind 2 + Prio 4 = Wind 1 + Prio 5 = Frost -An example ID is stored on this page. -Please delete these and then add your own IDs by clicking on the (+) on the top left of the table your own shutter actuators +The frost alarm only has a direct effect if the activated roller blinds are already closed (danger of the roller blind freezing). If the frost alarm is triggered when the roller shutter is still open, the roller shutter automatically only moves to the height set for frost alarm when it is closed. -Please select the data points with LEVEL (or similar). NOT the device as such. -After completion of the ID selection, the adapter is already ready for use, but not yet adapted to your own wishes. +_[Back to top](#top)_ -![idSelect.jpg](img/idSelect.jpg) -### Structure of the table -No: consecutive number of the listed shutters -Active: Checkbox for activating the control of the corresponding roller shutter -Name: name of the actor; is automatically read from the objects when the ID is selected -Object ID Roller shutter: Unique ID of the data point to be controlled in the objects -(+): Add / change the ID -Pencil: specific configuration of the respective roller shutter -Arrows: change the order of the different shutters -Trash can: delete ID with all configured data! +--- + +## Shutter settings + + +![main1](img/main1.png) + +>:point_right: The example actuator *shutter example* is automatically created, please delete it via the waste bin (5). + +Now add your own shutter actuators by clicking on the (+) (1). The ID selection opens and +select the data point LEVEL that represents the position of the desired roller shutter. + +![ID_Selector_DP_Levelg](img/ID_Selector_DP_Level.png) -## individual configuration of a roller shutter -This configuration level also consists of two tabs: main settings and sunshade settings +Structure of the table: -### Main Settings +![tab](img/main1.png) -![mainShutter.jpg](img/mainShutter.png) -In the upper area, the times are set for the up and down driving to the night darkness. -These times can be configured under ***Time Settings*** and selected here in pulldown. +* **No:** *consecutive number of the listed shutters*. -The following options are available: +* **Active:** *Checkbox for activating/deactivating the control of the corresponding roller shutter*. -Explanations below. +* **Name:** *Name of the actuator is automatically read in from the objects when the ID is selected +and can then be changed according to your own wishes. -**Trigger setpoint:** To enable lock-out protection, a trigger can be selected in the bottom line to prevent shutters from shutting down. Here, the value of the sensor is given, at which the roller shutter may drive. +* **Object ID shutter:** *Unique ID of the data point to be controlled in the objects*. -* **off**: No movement while opening the window -* **open**: While opening the window, the shutter will open and will remain up after closing -* **close**: After closing the window, the shutter will drive down -* **open and close:** The shutter will open with opening the window and will drive down when the window is beeing closed +* **(+)** *Change a selected roller shutter actuator* * **Pencil** * *Modify a selected roller shutter actuator -**Roller shutter height when triggered:** If the roller shutter is to be moved when the sensor is triggered, the desired roller shutter position is entered here. (For example, windows 25% for ventilation, or 100% for doors to go through) +* **Pencil** *Open individual configuration of the respective roller shutter*. -**Driving on change:**Pulldown to select the lock-out protection function. It is taken into account, at the point in time, when the automatic is going to drive the shutter. -* **off**: lock-out protection is active in both ways, the shutters will not move if the window is open. -* **open**: drive up only. The shutter is alowed to open automatically, even the window is open, but the shutter will not be closed automatically, if the window is open. -* **close**: drive down only. The shutter is alowed to close automatically, even the window is open, but the shutter will not open automatically, if the window is open -* **open and close**: The shutter is allowed to drive up or down if the window is open. +* **Double sheet:** *Copy roller shutter* -**Roller shutter height when moving down:** Desired roller shutter position when darkening +* **Arrows:** *Determine the order in which the roller shutters move with the same settings. -**Roller shutter height when raising:** desired roller shutter position in the morning +* Trashcan:* *Deletes the shutter actuator with all configured data. -**Sun altitude:** If the darkening starts and ends at a fixed elevation, this value is entered here; otherwise leave empty. -**Trigger ID:** via which (+) select the sensor (State) which should prevent a roller shutter movement. + +After the roller shutters have been created, pressing the pencil (3) on the corresponding roller shutter with the tabs +[MAIN SETTINGS for roller shutters][], [SUN PROTECTION SETTINGS][] and [EXTRA SETTINGS][] +each shutter is further configured individually. --- -### Timing -**Off:** do not use originals. Buttons for openAll/closeAll are still working -**only manual drive** the shutter is driven manually only in the configured direction. Buttons have no effect on shutters configured with this option. May helpful for awning, which shall not be moved togehter with the rest of the shutters. +### Main shutter settings + +![mainShutter.png](img/mainShutter.png) + +In the upper area, the times for opening or closing the shutter are selected +are selected separately via a pull-down menu. +> :point_right: These times have already been configured in [Time settings][]. + +Selection options: +* **Off:** *Do not use timers. + +* **Living area:** *The shutter moves at the times as configured in *Living area settings*. + +* Living area (automatic):** * *The roller shutter moves at the times configured in *Settings for the living area*. +**and** in addition, the shutter is activated in response to the trigger defined under Extra settings. +Object ID for activating/deactivating the auto living area''. If +If this is set to false, the roller shutter will **not** be moved automatically. + +* The roller shutter is moved at the times configured in *Sleeping area settings*. -**Living area:** The shutters are driven as configured in the menu item Time settings / Living area. +* The roller shutter is moved at the times configured in *Settings for the sleeping area*. +**and** in addition, the shutter is activated in response to the trigger specified under Extra settings. +Object ID for activating/deactivating the auto-sleep area''. +If this is set to false, the roller shutter will **not** be moved automatically. -**Living area (AUTO):** The shutters are operated as configured in the menu item Time settings / Living area. In addition, attention is paid to the trigger set under Extra settings. If this is set to false, the shutters will not be moved automatically +* Children's area: * *The roller shutter is moved at the times configured in *Children's area settings*. -**Sleeping area:** The shutters are operated as configured in the menu item Time settings / Sleeping area. +* Children's area (automatic):* *The roller shutter moves at the times configured in *Settings for the children's area*. +**and** in addition, the shutter is activated in response to the trigger defined under Extra settings. +Object ID for activating/deactivating the auto children's area''. +If this is set to false, the shutter will **not** be moved automatically. -**Sleeping area (AUTO):** The shutters are operated as configured in the menu item Time settings / sleeping area. In addition, attention is paid to the trigger set under Extra settings. If this is set to false, the shutters will not be moved automatically +* Sunset/Sunrise:** * *The shutter moves at sunset or sunrise. -**Sunset:** The shutters are driven at sunset to the darkening stage (when driving up here is analogous to the sunrise) +* Sun elevation:If the elevation falls below the value set here, the roller shutter is closed. -**Sun altitude:** If the elevation falls below the value set in the individual configuration, the shutters are moved +* Golden Hour:** * *The roller shutter closes at Golden Hour, which, depending on latitude and time of year, is approx. 1 hour before sunset or after sunrise. +before sunset or after sunrise, depending on latitude and time of year. -**Golden Hour:** This value is an astronomical term and lies before sunset. The term comes from photography, because the colors have a golden shimmer. +* Brightness sensor:** * *The roller shutter only moves according to the brightness sensor, which is set under [Brightness sensor settings][]. -**close roler shutters late:** With this option, the roller shutter is additionally shut down at a defined time (adjustable in the extra settings) +* Manual operation only:** * *The roller shutter can only be moved manually in the selected direction. +:point_right: No movement is possible via the buttons under ``shuttercontrol.0.control``. +point_right: This can be useful for awnings, for example, which should not be opened together with other roller shutters. +which should not be opened together with other shutters. -**do not close close shutters in summer:** some shutters should not be closed in summer. The period for this is specified in the extra settings. +**Value of the window/door sensor in the closed state:** *Here, the value is defined that the trigger under **Object ID of the window/door contact** (e.g. window or door contact) can have. +(e.g. window or turn handle contact) at which the automatic roller shutter system is allowed to move indefinitely. +:point_right: Values such as true, false, 0, 1 or 2 can be selected. -**Drive to position after window has been closed:** This option has an effect only if the option "Driving on change" is not set to "off" It allows to move the shutter to the last called position after the window/door has been closed. A typical door configuration could be: Trigger: "open/close" ; Drive on change: "open" ; Drive to position after window has been closed: "enabled" +> point_right: If the roller shutter is not in the uppermost position and the sensor status specified here changes, the roller shutter moves to the uppermost position. +sensor status changes, the roller shutter moves to the **roller shutter height when the window or door is opened**. -### Xmas settings -If the shutters should only be partially closed at Christmas time because the candle arches or similar should remain visible, -you can use this option. -With this option, the roller shutters are not moved completely at the normal closing time, but only to an adjustable level. -This level can be set in the respective roller shutter settings under "Roller shutter level at Christmas time". ** Attention: ** This value is -only visible if the checkmark for "Roller shutter level at Christmas time is used" is set. If the check mark is not set, -the option is deactivated. -This option is automatically activated in a certain period of time (e.g. from 01.12. To 10.01). The period can be set under "Extra settings" -and there "Xmas settings". -If you want to close the shutters completely later in the evening, you can use the option "All shutters close late at night" or "First move to an intermediate position and close later" -use. ** Attention: ** Both options can also be used independently of the Xmas settings. +**Value of the window/door sensor in the tilted state:** *This sets the value that the trigger under **Object ID of the window/door contact** (e.g. window or door contact) is set to. +(e.g. window or turn handle contact) at which the automatic roller shutter system is allowed to move indefinitely. +:point_right: Values such as true, false, 0, 1 or 2 can be selected. +> point_right: If the roller shutter is not in the uppermost position and the sensor status specified here changes, the roller shutter moves to the uppermost position. +sensor status changes, the roller shutter moves to the **roller shutter height when the window or door is opened**. +> :exclamation: If no window contact with tilt function is present, this value should be set to "not present". -### sun protection settings -The sunscreen can be controlled by various mechanisms. In this case, an outside temperature, an internal temperature, the brightness and the sun or the like. be selected as a trigger for the shading and its end. +**Move roller shutter when window/door status changes:** *Pulldown to select the function that is to be carried out when the window/door sensor moves +should be carried out:* -![sunProtect.jpg](img/sunProtect.png) +**Off**: no movement +* **Open**: When opening the window/door, the shutter moves up and remains there, when closing the shutter does not move. +* **Close**: After closing the window/door, the roller shutter moves to the blackout position, when opening, the roller shutter does not move. +**Opening and closing:** The roller shutter moves up when the window/door is opened and moves down again when it is closed. -The fields in detail: -**Roller shutter height when driving down:** The value of how far the roller shutter should be closed during shading. -**Direction:**Alignment of the window on the wind rose (0 ° = north, 180 ° = south) +**Roller shutter height when opening the window or door:** *Wanted roller shutter position from 0-100, e.g. for windows 25% for ventilation, or 100% for doors to be able to pass through. +for doors to be able to pass through. -**+ / - Area of ​​compass:** Area in which the sun (around the center) would radiate disturbing into the window. Outside this area there is no shading. +**Roller shutter height when window or door is tilted:** *Wanted roller shutter position from 0-100, e.g. for windows 25% for ventilation. + +**Use automatic roller shutter even when window/door is open (lock-out protection)** * *If, at the time of automatic closing, the window/door sensor __does not__ correspond to the value entered there (window/door closed), the following will be carried out according to the selected setting:* *. + +* **Off**: Lock-out protection is active in both directions, the shutters do not move when the window is open. +* **Open**: Only raising is allowed. At the end of darkening / shading, the roller shutter moves up even though the window is open. The roller shutter is not closed automatically when the window is open. +* **Close**: Only closing is permitted. At the start of darkening / shading, the roller shutter moves down despite the window being open. The roller shutter is not opened when the window is open. +* **Opening and closing**: The roller shutter may move in both directions when the window is open. + + + +**Roller shutter height when moving down:** *Position value when the roller shutter is closed. + +**Roller shutter height when raised:** *Position value when roller shutter is open*. + +> :point_right: The roller shutter height must be entered according to the actuators used (0-100 or 0-255): +> 0 = closed and 100 = open or 0 = open and 100 = closed. + +**Object ID of the window/door contact:** +Use the (+) to select the sensor (state) that is to prevent a roller shutter movement (e.g. door contact). + + + +_[Back to top](#top)_ + + +--- -**Type of sunshade control:** Pulldown to select different parameter combinations for shading control. -The following option are available: -* Indoor & outdoor temperature / light sensor -* Cardinal direction (sun position) -* Indoor / outdoor temperature / light sensor & compass direction -* Outside temperature / light sensor & compass direction -* Outside temperature / light sensor -* Indoor temperaturennentemperatur +### Sun protection settings +![sunProtect](img/mainSunprotect.png) + +**Type of sun protection control:** +The sun protection can be controlled using various triggers for the shading and its end, +The following combinations can be selected via pulldown: + +* Out of +* Indoor & outdoor temperature/light sensor +* Compass direction (sun position) +* Indoor/outdoor temperature/light sensor & cardinal direction +* Outside temperature/light sensor & direction +* Outdoor temperature/light sensor +* Indoor temperature ->The sunprotection is only triggered, if all of the choosen parameters are true (AND operation). +> :point_right: The sun protection only triggers when ALL triggers of the selected combination are selected +are active (logical AND connection) and ends when ONE of the triggers becomes inactive. + +> :point_right: An object ID must also be stored for ALL selected triggers. + +> :point_right: The light sensor is always optional and may remain empty. If the light sensor is configured, +it is linked with the other parameters AND. + +**Roller shutter height when moving down:** *The value of how far the roller shutter should be closed when shading.* + +**Direction (sun position):** *Alignment of the window on the compass rose (0° = north; 180° = south)* + +**+/- Sun position range for active sun protection:** *Area in which the sun (around the center point) would interfere with the window. There is no shading outside this area.* ->If a control with more than one parameter is needed, you need to chose the according shading control and configure the needed parameter. The light sensor is optional and will be counted if is configured.. +**Setpoint outside temperature:** *The shading starts at this value (or higher).* ->The sunprotection is beding ended, if one of the parameter is lower than configured. +**Hysteresis outside temperature (percent):** *Here you can set a hysteresis in percent so that the roller shutter at +Fluctuations do not constantly go up and down.* +The hysteresis is the difference between the upper temperature value at which shading should begin and the lower temperature value at which shading ends again. -**Setpoint outside temperature:** threshold for starting the shading. Of course, this value depends on the sensor selected in the next field. +**Outdoor temperature object ID:** +The sensor selected here via the (+) does not necessarily have to measure the outside temperature. He can +provide any value that can be used to trigger the shading. +This can also be a heat sensor (temperature difference sensor). +If no outdoor sensor is selected as a trigger, leave this field blank. -**Hysteresis outside temperature (percent):** Here, a hysteresis can be set in percent so that the roller shutter does not constantly go up and down in case of fluctuations +**Setpoint of the sun protection light sensor:** *Threshold value for starting the shading.* +This value depends on the sensor selected in the **Object ID for the sun protection light sensor** field. -**Object ID for the outside temperature:** The sensor selected here does not necessarily have to measure the outside temperature. It can provide any value that can be used for shading. This can also be a heat sensor (temperature difference sensor). +**Hysteresis light sensor (percent):** +Here you can set a downward hysteresis in percent so that the +Roller shutters do not constantly move up and down when there are fluctuations caused by changing clouds. +The hysteresis is the difference between the set setpoint at which the +Shading should begin, and the lower brightness value at which shading should begin +ends again. -**Setpoint of the light sensor:**Analogous to the outside temperature sensor +> :point_right: Example: +Setpoint of the sun protection light sensor is set to 30,000, hysteresis to 40%: +The sun protection is active from 30,000 and remains active until the value falls below 18,000. -**Hysteresis light sensor (percent):** Here, a hysteresis can be set in percent so that the roller shutter does not constantly move up and down in the event of fluctuations +**Object ID of the sun protection light sensor:** *Analogue to the outside temperature sensor* +If not selected as trigger, leave blank -**Object ID of the light sensor:** Analogous to the outside temperature sensor; if not used leave empty +**Setpoint indoor temperature:** +Here you can enter a temperature of an internal temperature sensor assigned to the roller shutter +must be entered under which no shading should take place, for example in order to reduce the heat +to use radiation in winter to support heating. -**Internal temperature sensor set point:** Here, a temperature of an indoor temperature sensor associated with the shutter can be inputted under which no shading is to take place, e.g. to use the heat radiation in winter for heating support. +**Hysteresis internal temperature (percent):** *Here you can set a hysteresis in percent so that the roller shutter at +Internal temperature fluctuations do not constantly go up and down.* +The hysteresis is the difference between the upper temperature value at which shading should begin and the lower temperature value at which shading ends again. -**Hysteresis indoor temperature (percent):** Here a percentage hysteresis can be set so that the roller shutter does not constantly go up and down in the event of fluctuations +**Indoor temperature sensor object ID:** +Use the (+) to select the temperature sensor. +If no indoor sensor is selected as a trigger, leave this field blank. -**Object ID of the indoor sensor:** via the (+) select the temperature sensor (state) which should prevent a roller shutter travel. -**keep in sunprotect:** keeps the shutter in sunprotect mode until the shutter will be closed in the evening. This option can be helpful to prevent from moving up and down many times a day. If you use blinds, you may hold the hight with this option and just let open/close the blinds by controlling the angle. +_[Back to top](#top)_ -### tips: -If a shutter is adjusted manually and the position does not correspond to the automatically approached, the automatic switches off! -Exception: Sunprotect works also if the shutter is opened manually to 100% for the first time per day. In this case, the roller shutter moves into the sun protection height shortly after being opened manually, if required. -If the roller shutter is opened automatically and the conditions for sun protection are met, it moves directly to the height of the sun protection. --- -# Configuration - time settings -In this section, you can set some time or astro settings that can be selected in the individual roller shutter configurations. +### Extra settings roller shutter + +![mainExtra](img/mainExtra.png) + +### Roller shutter settings + +![mainExtraShutterSettings](img/mainExtraShutterSettings.png) + +**Close roller shutters late** +With this option the roller shutter is activated at a defined time (adjustable in the +[Special times][]) is also shut down. +> :exclamation: The lock-out protection is not taken into account here and the roller shutter is lowered despite the window being open! (Danger of being locked out!!) :exclamation: + +**Do not close roller shutters in summer** +Some roller shutters should not be closed in summer. The period will be summer +in the [Summer Settings][]. + +**Driving after closing window** +The roller shutter will be set to the last requested setting after the window/door is closed +Position driven. + +> :point_right: This only works if the lockout protection is not set to "Off"! -![timeSettings.jpg](img/timeSettings.jpg) -## living area -In the upper section, the desired parameters for the shutters in the living area are entered. +### Christmas Settings -**The pulldown** contains several basic variants +![mainExtraChristmas](img/mainExtraChristmas.png) -**Shut down during the week:** Usual time for blackout during the week +If the roller shutter should only be partially closed at Christmas time, because +If a candle arch or similar should remain visible, this option can be used. The +The roller shutter will then not be completely closed at the normal closing time, but will only be closed +driven to a level that can be set. +> :point_right: **The roller shutter level at Christmas time** is only visible and adjustable if +if the check mark for **The roller shutter level at Christmas time is used** is set. -**Shut down on the weekend:** Usual time for the blackout on weekends and public holidays +The period when this function should be activated is set under [Christmas Settings][] +set. +> :point_right: If the roller shutters are to be completely closed later in the evening, this option can be used +> **Close roller shutter late** or **Move to intermediate position and close completely later** +> can be used. +> :point_right: These two options can also be used independently of the Christmas settings. -**Start at the weekend:** Usual time for the end of the blackout on weekends and public holidays -**Min. Time to start the week:** Time must be at least exceeded with additional astro settings before the roller shutter starts in the morning +### Sun protection settings -**Max. Time for booting up in the week:** Time that must be exceeded with additional astro settings highest, before the roller shutter starts in the morning. If the roller shutter should never start up when the sun has not yet reached a certain level, this time must be set to the latest time of this sun position (on 21.12.). +![mainExtraSun](img/mainExtraSun.png) -**Time delay of the shutters:** Distance of the start of the roller shutter movement of the individual blinds of this group to avoid radio interference, or to give the impression that they were driven manually. +**Keep roller shutters in sun protection** +If this option is switched on, the roller shutter remains in the sun protection, even if +There is no longer any sun protection requirement and remains in the sun protection as long as +until the “close” signal comes in the evening. +This prevents the roller shutter from going up and down several times a day. +Very practical in blind operation when the height is kept down (option checked), +and just open and close the slats. +**Heat protection** +This option allows the roller shutter to be completely closed in hot weather. +After activating this option, the field for entering the temperature in °C appears. -## sleeping area +> :point_right: If a roller shutter is adjusted manually and the position does not correspond to that +automatically, the automatic system stops! -Everything that is written under living quarters is analogous here. -If the shutters in the two areas drive differently, you can enter this here. +> :point_right: If the roller shutter is manually moved to the configured height for opening, closing or sun protection, the automatic function remains. + + +### Extra settings +![mainExtraExtra](img/mainExtraExtra.png) + +**Roller shutter delay when opening window (s)** *Parameter to delay opening of the roller shutter after the window/door has been opened (in seconds)* + +**Roller shutter delay when closing window (s)** *Parameter to delay the closing of the roller shutter after the window/door has been closed (in seconds)* + +**Move to intermediate position and later close completely** *When activated, **roller shutter height in the intermediate position** becomes visible. The roller shutter then moves to the set intermediate position when closing and later closes completely* + +### Alarm setting +![mainExtraAlarm](img/mainExtraAlarm.png) + +Here the alarms predefined for the current roller shutter via [Alarm Settings][] are activated or deactivated. + + + +_[Back to top](#top)_ -### Tip: -Of course, this categorization does not necessarily have to be used for living and sleeping areas. Of course, these two presets can be completely freely implemented. --- -# Configuration - Extra Settings +# Data points +Shuttercontrol creates various data points under the following folders: + +* shuttercontrol.x.control +* shuttercontrol.x.info +* shuttercontrol.x.shutters + +> :point_right: x stands for the respective installed instance + +--- -In the Extra settings, various settings are applied that are used in the various configurations. -![extraSettings.jpg](img/extraSettings.jpg) +## shuttercontrol0control -## Astro settings -These settings are actually self-explanatory: latitude and longitude of the place of residence to calculate the position of the sun correctly. +![datapointscontrol](img/datapointscontrol.png) -**Time delay:** Here an offset can be entered by which the roller shutter movements for up or down of the later selected astro events should evolve. +Data points to control various functions such as: +*Holiday +*If ```true```, the roller shutters move at the set times on weekends and at +```false``` during weekday hours.* +> :point_right: Can use your own scripts that calculate or display vacation, days off, etc. +set to true to enable weekend settings. -**Time delay for driving the shutters:** So that not all shutters drive at the same time, a time in seconds for a delay can be set here. +* autoAll +*Button to set **all** shutters to auto mode* -**End sun protection with sun height:** In a building or near tall trees, the shading does not necessarily have to last until reaching the set azimuth. As soon as the sun falls below the altitude set here (and thus the neighboring buildings), the shading ends +* autoChildren +*If the roller shutters are controlled with **children's area (automatic)**, the automatic function is activated here +switched on with ```true``` and switched off with ```false```.* -## Extra settings +* auto living +*If the roller shutters are controlled with **Living area (automatic)**, the automatic mode is used here +switched on with ```true``` and switched off with ```false```.* -**Checking the current shutter status:** For some users (among other shelly users) the problem arises that the level changes again or several times until the endposition is reached. As a result, the recognition of the last action may be incorrect and, for example, the "manu_mode" may be set incorrectly. For this reason there is a checkbox here. If the check box is activated, shuttercontrol checks the final level again after n seconds. Set the waiting time to the running time of your shutter that needs the longest. +* auto sleep +*If the roller shutters are controlled with **sleeping area (automatic)**, the automatic mode is used here +switched on with ```true``` and switched off with ```false```.* -**Use of public holidays:** If the roller shutters are to be used on public holidays as well as on weekends, the checkbox is activated and an instance of the public holiday adapter is selected. -You can create two instances of the holiday adapter if necessary; a to display all possible holidays and a working time relevant holidays, which then access shuttercontrol. +* closeAll +*Button to close **all** roller shutters in **all areas*** -**Object ID for setting the vacation** this Object-ID sets internal state "Holiday". You could use a datapoint from iCal-Adapter +* closeChildren +*Button to close **all** roller shutters in the children's area* -**Object ID of the trigger for the sleeping area (auto):** With this trigger, the automatic mode of the sleeping area can be activated. +* closeLiving +*Button to close **all** roller shutters in the living area* -**Object ID of the trigger for the living area (auto):** With this trigger, the automatic mode of the living area can be activated. +* closeSleep +*Button to close **all** shutters in the sleeping area* -**All shutters close late at night** With this option, all roller shutters can be lowered again late in the evening. This covers the scenario if the window or door was still open at the normal time for the shutdown, or if the terrace door was opened again after the shutdown. You can deactivate this option separately in the respective shutter settings +* openAll +*Button to open **all** roller shutters in **all areas*** -**Time when all shutters close late at night** Time when all roller shutters should be shut down again in the evening (e.g. 10:30 p.m.) +* openChildren +*Button to open **all** roller shutters in the children's area* + +* openLiving +Button to open **all** roller shutters in the living area + +* openSleep +*Button to open **all** shutters in the sleeping area* + +* school free +*Button to manually activate the holiday season and have the roller shutters open at the set time on the weekend* + +* sunProtect +*Button to move the roller shutters into the sun protection position* + +* sunProtectChildren +*Button to move the roller shutters in the children's area to the sun protection position* + +* sunProtectLiving +*Button to move the roller shutters in the living area to the sun protection position* + +* sunProtectSleep +*Button to move the roller shutters in the sleeping area to the sun protection position* + + +_[Back to top](#top)_ -** Beginning of summer ** Start of the period when shutters are not shut down in summer. -** end of the summer ** End of the period in which roller shutters are not shut down in summer. -Which roller shutters are not shut down in summer can be specified in the respective roller shutter settings. --- -### Alarm-Settings -![extraSettingsExtra](img/Shuttercontrol Alarm Settings.png) -Shuttercontrol knows the following alarms. You can configure for each alarm an according logical datapoint (true/false) -status true = Alarm is active -Status false = Alarm is NOT activ -Furthermore, for each alarm you can define a level, where the rollos has to drive to, once the alarm is being activated. -To activate the defined alarm for a certain rollo, please go to the rollo specific settings in the menu extra - alarm settings. - -Available alarms: -- Wind 1 -- Wind 2 -- Rain -- Frost -- Fire / Burglar - -Alarm priorities: -Prio 1 -- Fire- / Burglaralarm: Highest priority has the Fire / Burglar alarm. If it once has been activated, the roller which has been configured - to listen will drive to the configured level. The roller are then blocked and will NOT move back even the Fire alarm signal is taken back - to state false. To get back to normal operation, the roller need to be re-initialized with the buttons "openAll" / "closeAll". - With this behaviour it will be ensured that in case of fire stay open in any case and emergency exits stay open or the access for fire fighters - is ensured. - -Prio 2 - 5 Rain, Wind2, Wind1, Frost: All of these alarms have the same priority when they get activatet. Means, the roller will move to the last activated alarm level. - However, if an Alarm is being deactivated, the following priorities are set fix, if another alarm is still pending. - Prio 1 = Fire / Burglar - Prio 2 = Rain - Prio 3 = Wind 2 - Prio 4 = Wind 1 - Prio 5 = Frost - -Frost alarm is only moving directly out of the down position. (to prevent freezing down the roller) -If the frost alarm is being activated while the roller is in up-position the roller will not move immeadetly but the roller will move to the frost position, once it's going to close. - -### Trigger-Settings - -![extraSettingsTrigger](img/mainExtra.png) - -**Delay roller shutter up when window is opened (s)** -Parameter to delay the roller open after the window has been opened (seconds) - -**Delay roller shutter down when window is closed (s)** -Parameter to delay the roll close after the window has been closed (seconds) - -**Delay until end of sunprotection** -With this settings (in Minutes) it can be defined for how long the Roller will stay in sunprotect mode -eventhough no sunprotection is required anymore by the light sensor (value below the defined hystresis). -If there is a new sunprotection required during this time, the timer will be reseted and restarted once -the light sensor value falls again under the defined light value hystresis. -This setting can be helpfull to prevent moving up and down while the weather is often changing (cloudy) - -**Alarm Settings** -With this setting the predefined alarm (Alarm setting in Main-Extra Menü) shall be acitvated for this -particular Rollo. + + +## shuttercontrol0info +Data points for displaying calculated values and checking configured ones +Times: + +![datapointsinfo](img/datapointsinfo.png) + + +_[Back to top](#top)_ + + +--- + + +## shuttercontrol0shutters +![datapointsshutters](img/datapointsshutters.png) + +* autoDown +*For each roller shutter, automatic closing can be deactivated here with ```false``` +or activated with ```true```.* + +* autoLevel +*Shows the current position for each roller shutter (roller shutter cannot be controlled via this).* + +* autoState +*Shows the current status (up, down, Manu_Mode, sunProtect) for each roller shutter (roller shutter cannot be controlled via this).* + +* autoSun +*The sun protection function can be deactivated for each roller shutter with ```false``` +or activated with ```true```.* + +* autoUp +*For each roller shutter, automatic opening can be deactivated here with ```false``` +or activated with ```true```.* + + +_[Back to top](#top)_ + diff --git a/io-package.json b/io-package.json index 22c0130a..c12cd991 100644 --- a/io-package.json +++ b/io-package.json @@ -1,8 +1,21 @@ { "common": { "name": "shuttercontrol", - "version": "1.6.2", + "version": "1.6.3", "news": { + "1.6.3": { + "en": "Saturday added as work week\nDependencies updated\nFix Auto-Living, Auto-Sleep & Auto-Children\nTimeout Fix\nUpdate German Docu\nWiki added", + "de": "Samstag hinzugefügt als Arbeitswoche\nAusgaben aktualisiert\nAuto-Living, Auto-Sleep & Auto-Children\nTimeout Fix\nDeutsche Docu aktualisieren\nWiki hinzugefügt", + "ru": "Суббота добавлена как рабочая неделя\nОбновленные зависимости\nFix Auto-Living, Auto-Sleep & Auto-Дети\nTimeout Fix\nОбновить немецкий Docu\nWiki добавлено", + "pt": "Sábado adicionado como semana de trabalho\nDependências atualizadas\nFix Auto-Living, Auto-Sleep & Auto-Children\nFix de tempo limite\nAtualizar Alemão Docu\nWiki adicionado", + "nl": "Zaterdag toegevoegd als werkweek\nAfhankelijkheid geüpdateerd\nQuality over Quantity (QoQ) Releases Vertaling:\nTime-out Fix\nUpdate Duitse Docu\nWiki toegevoegd", + "fr": "Samedi ajouté comme semaine de travail\nDépendances mises à jour\nFix Auto-Living, Auto-Sleep & Auto-Children\nTimeout Fix\nMettre à jour le Docu allemand\nWiki ajouté", + "it": "Sabato aggiunto come settimana di lavoro\nDipendenze aggiornate\nRiparare Auto-Living, Auto-Sleep & Auto-Children\nCorrezione di tempo\nAggiornamento tedesco Docu\nWiki aggiunto", + "es": "Sábado añadido como semana laboral\nActualización de las dependencias\nFijar auto-vivir, auto-sleep \" Auto-Children\nTimeout Fix\nActualización Alemán Docu\nWiki añadido", + "pl": "W sobotę dodano do pracy tydzień pracy\nZależności\nAuto-Living, Auto-Sleep & Auto-Children (ang.)\nTimeline Fix\nUpdate Germany Docu\nWiki dodaje się", + "uk": "Субота додано до робочого тижня\nЗалежність оновлено\nФіксація автозбереження, Автозбереження та авто-дитячі\nВиправлення часу\nОновлення німецького документа\nВікі додано", + "zh-cn": "星期六\nB. 更新的属地\nFix自动化-Liv,自动化-Sleep &自动化-Children\n时间安排\n最新消息\n瓦基加" + }, "1.6.2": { "en": "Dependencies updated\nnode 20 tests added\nFix ending Sunprotect with open door/window\nFix timing & some states for sunprotect", "de": "Ausgaben aktualisiert\nknoten 20 tests hinzugefügt\nFix End Sunprotect mit offener Tür/Fenster\nFix Timing und einige Zustände für Sonnenschutz", @@ -80,19 +93,6 @@ "pl": "mały Fisz", "uk": "маленькі Фікси", "zh-cn": "小型固定" - }, - "1.4.27": { - "en": "small Fixes", - "de": "kleine Feste", - "ru": "небольшие исправления", - "pt": "pequenas correções", - "nl": "kleine Fixes", - "fr": "petits Fixes", - "it": "piccoli corredi", - "es": "pequeñas fijaciones", - "pl": "mały Fisz", - "uk": "маленькі Фікси", - "zh-cn": "小型固定" } }, "title": "shuttercontrol", diff --git a/main.js b/main.js index 1ffbc8bb..7ca91206 100644 --- a/main.js +++ b/main.js @@ -1044,14 +1044,13 @@ function shutterDriveCalc() { } else if (((dayStr === 5 && adapter.config.satIsWeek === false) || dayStr === 6 || HolidayStr === true || (SchoolfreeStr === true && adapter.config.schoolfreeLivingArea === true) || publicHolidayTomorowStr === true || (schoolfreeTomorowStr === true && adapter.config.schoolfreeLivingArea === true)) && IsEqual(adapter.config.WE_shutterDownLiving, astroTimeLivingDown)) { downTimeLiving = astroTimeLivingDown; debugCnt = 5; - - } else if ((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) && IsLater(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { + } else if (((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) || dayStr === 0) && IsLater(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { downTimeLiving = adapter.config.W_shutterDownLiving; debugCnt = 6; - } else if ((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) && IsEarlier(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { + } else if (((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) || dayStr === 0) && IsEarlier(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { downTimeLiving = astroTimeLivingDown; debugCnt = 7; - } else if ((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) && IsEqual(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { + } else if (((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) || dayStr === 0) && IsEqual(astroTimeLivingDown, adapter.config.W_shutterDownLiving)) { downTimeLiving = astroTimeLivingDown; debugCnt = 8; } @@ -1083,7 +1082,6 @@ function shutterDriveCalc() { } else if (((dayStr === 5 && adapter.config.satIsWeek === false) || dayStr === 6 || HolidayStr === true || (SchoolfreeStr === true && adapter.config.schoolfreeChildrenArea === true) || (publicHolidayTomorowStr || (schoolfreeTomorowStr === true && adapter.config.schoolfreeChildrenArea === true)) === true) && adapter.config.WE_shutterDownChildren === astroTimeChildrenDown) { downTimeChildren = astroTimeChildrenDown; debugCnt = 5; - } else if (((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) || dayStr === 0) && astroTimeChildrenDown > adapter.config.W_shutterDownChildren) { downTimeChildren = adapter.config.W_shutterDownChildren; debugCnt = 6; @@ -1121,7 +1119,6 @@ function shutterDriveCalc() { } else if (((dayStr === 5 && adapter.config.satIsWeek === false) || dayStr === 6 || HolidayStr === true || (SchoolfreeStr === true && adapter.config.schoolfreeSleepArea === true) || publicHolidayTomorowStr === true || (schoolfreeTomorowStr === true && adapter.config.schoolfreeSleepArea === true)) && adapter.config.WE_shutterDownSleep === astroTimeSleepDown) { downTimeSleep = astroTimeSleepDown; debugCnt = 5; - } else if (((dayStr < 5 && adapter.config.satIsWeek === false) || (dayStr < 6 && adapter.config.satIsWeek === true) || dayStr === 0) && astroTimeSleepDown > adapter.config.W_shutterDownSleep) { downTimeSleep = adapter.config.W_shutterDownSleep; debugCnt = 6; diff --git a/package-lock.json b/package-lock.json index cde7b131..00b616aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "iobroker.shuttercontrol", - "version": "1.6.2", + "version": "1.6.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "iobroker.shuttercontrol", - "version": "1.6.2", + "version": "1.6.3", "license": "MIT", "dependencies": { - "@iobroker/adapter-core": "^3.0.3", + "@iobroker/adapter-core": "^3.0.4", "node-schedule": "^2.1.1", "suncalc": "^1.9.0" }, @@ -18,22 +18,22 @@ "@alcalzone/release-script-plugin-iobroker": "^3.6.0", "@alcalzone/release-script-plugin-license": "^3.5.9", "@iobroker/testing": "^4.1.0", - "@types/chai": "^4.3.6", - "@types/chai-as-promised": "^7.1.6", - "@types/gulp": "^4.0.14", - "@types/mocha": "^10.0.2", - "@types/node": "^20.8.0", - "@types/proxyquire": "^1.3.29", - "@types/sinon": "^10.0.16", + "@types/chai": "^4.3.9", + "@types/chai-as-promised": "^7.1.7", + "@types/gulp": "^4.0.16", + "@types/mocha": "^10.0.3", + "@types/node": "^20.8.10", + "@types/proxyquire": "^1.3.30", + "@types/sinon": "^10.0.20", "@types/sinon-chai": "^3.2.11", - "axios": "^1.5.1", + "axios": "^1.6.0", "chai": "^4.3.10", "chai-as-promised": "^7.1.1", - "eslint": "^8.50.0", + "eslint": "^8.52.0", "gulp": "^4.0.2", "mocha": "^10.2.0", "proxyquire": "^2.1.3", - "sinon": "^16.0.0", + "sinon": "^17.0.1", "sinon-chai": "^3.7.0", "tslint": "^6.1.3" }, @@ -615,21 +615,21 @@ "dev": true }, "node_modules/@eslint/js": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", - "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -674,15 +674,18 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@iobroker/adapter-core": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@iobroker/adapter-core/-/adapter-core-3.0.3.tgz", - "integrity": "sha512-SZmL69BtUXitnTbidNjlljQKB6CbkBLK9+Tqo/NMsOqHb1RmhPCNKhO4F5o8jc0dW0J6d4VArXryUkL7Ru0WpA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@iobroker/adapter-core/-/adapter-core-3.0.4.tgz", + "integrity": "sha512-QsSeIkOa+zEVdIQ0kc0GcfsnQC+pTWWkixotdG4naKuaLUwMWK7xP0UyUEUiaHfPG3KqyZxwIxQR9HMENvvIYQ==", + "engines": { + "npm": ">=7.0.0" + }, "peerDependencies": { "@iobroker/types": "^5.0.11" } @@ -857,15 +860,15 @@ "dev": true }, "node_modules/@types/chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-VOVRLM1mBxIRxydiViqPcKn6MIxZytrbMpd6RJLIWKxUNr3zux8no0Oc7kJx0WAPIitgZ0gkrDS+btlqQpubpw==", + "version": "4.3.9", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.9.tgz", + "integrity": "sha512-69TtiDzu0bcmKQv3yg1Zx409/Kd7r0b5F1PfpYJfSHzLGtB53547V4u+9iqKYsTu/O2ai6KTb0TInNpvuQ3qmg==", "dev": true }, "node_modules/@types/chai-as-promised": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.6.tgz", - "integrity": "sha512-cQLhk8fFarRVZAXUQV1xEnZgMoPxqKojBvRkqPCKPQCzEhpbbSKl1Uu75kDng7k5Ln6LQLUmNBjLlFthCgm1NA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.7.tgz", + "integrity": "sha512-APucaP5rlmTRYKtRA6FE5QPP87x76ejw5t5guRJ4y5OgMnwtsvigw7HHhKZlx2MGXLeZd6R/GNZR/IqDHcbtQw==", "dev": true, "dependencies": { "@types/chai": "*" @@ -898,11 +901,12 @@ } }, "node_modules/@types/gulp": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.14.tgz", - "integrity": "sha512-zjhBRyGTIPnJ/gByJpjtFyRPKej7zkNFct+QgDhAwpOEoJ2MQjajhU69vrcHIffKcnt3Dik2JHzgMj0C1q9WOg==", + "version": "4.0.16", + "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.16.tgz", + "integrity": "sha512-yY3XJjYejEzIQqLt6ZXaOZ/jynVxUe7Km33XA1/sU2zfZ2AeFDragIcT+i53a+j7eoWPgVeikhFvtC0gCteBdA==", "dev": true, "dependencies": { + "@types/node": "*", "@types/undertaker": ">=1.2.6", "@types/vinyl-fs": "*", "chokidar": "^3.3.1" @@ -1053,27 +1057,30 @@ "dev": true }, "node_modules/@types/mocha": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.2.tgz", - "integrity": "sha512-NaHL0+0lLNhX6d9rs+NSt97WH/gIlRHmszXbQ/8/MV/eVcFNdeJ/GYhrFuUc8K7WuPhRhTSdMkCp8VMzhUq85w==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.3.tgz", + "integrity": "sha512-RsOPImTriV/OE4A9qKjMtk2MnXiuLLbcO3nCXK+kvq4nr0iMfFgpjaX3MPLb6f7+EL1FGSelYvuJMV6REH+ZPQ==", "dev": true }, "node_modules/@types/node": { - "version": "20.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.0.tgz", - "integrity": "sha512-LzcWltT83s1bthcvjBmiBvGJiiUe84NWRHkw+ZV6Fr41z2FbIzvc815dk2nQ3RAKMuN2fkenM/z3Xv2QzEpYxQ==", - "dev": true + "version": "20.8.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz", + "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/proxyquire": { - "version": "1.3.29", - "resolved": "https://registry.npmjs.org/@types/proxyquire/-/proxyquire-1.3.29.tgz", - "integrity": "sha512-8/JYXN9NmE4tEGUU/JI7FcvloTu7CxYkb01h4kI+HRvABxwpleLXsvVmOF85LlgEb/xwe+H8MwM4s3ushNuffg==", + "version": "1.3.30", + "resolved": "https://registry.npmjs.org/@types/proxyquire/-/proxyquire-1.3.30.tgz", + "integrity": "sha512-erD15isFDzHMfeQC09DMjGeI0G6pJm7r5R7X/CxnEEe6tEp7N4r6xLYhTptdzne8zMz+2+5wJzrefCMvbmV/Fg==", "dev": true }, "node_modules/@types/sinon": { - "version": "10.0.16", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.16.tgz", - "integrity": "sha512-j2Du5SYpXZjJVJtXBokASpPRj+e2z+VUhCPHmM6WMfe3dpHu6iVKJMU6AiBcMp/XTAYnEj6Wc1trJUWwZ0QaAQ==", + "version": "10.0.20", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.20.tgz", + "integrity": "sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg==", "dev": true, "dependencies": { "@types/sinonjs__fake-timers": "*" @@ -1133,6 +1140,12 @@ "@types/vinyl": "*" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/acorn": { "version": "8.10.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", @@ -1522,9 +1535,9 @@ } }, "node_modules/axios": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz", - "integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz", + "integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==", "dev": true, "dependencies": { "follow-redirects": "^1.15.0", @@ -2446,18 +2459,19 @@ } }, "node_modules/eslint": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", - "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.50.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -4921,9 +4935,9 @@ "dev": true }, "node_modules/nise": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", - "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.5.tgz", + "integrity": "sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==", "dev": true, "dependencies": { "@sinonjs/commons": "^2.0.0", @@ -5947,16 +5961,16 @@ "dev": true }, "node_modules/sinon": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.0.0.tgz", - "integrity": "sha512-B8AaZZm9CT5pqe4l4uWJztfD/mOTa7dL8Qo0W4+s+t74xECOgSZDDQCBjNgIK3+n4kyxQrSTv2V5ul8K25qkiQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", + "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.3.0", + "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", - "nise": "^5.1.4", + "nise": "^5.1.5", "supports-color": "^7.2.0" }, "funding": { @@ -5984,9 +5998,9 @@ } }, "node_modules/sinon/node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.0" @@ -6792,6 +6806,12 @@ "node": ">= 0.10" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "node_modules/union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", @@ -7629,18 +7649,18 @@ } }, "@eslint/js": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", - "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", "dev": true }, "@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -7669,15 +7689,15 @@ "dev": true }, "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "@iobroker/adapter-core": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@iobroker/adapter-core/-/adapter-core-3.0.3.tgz", - "integrity": "sha512-SZmL69BtUXitnTbidNjlljQKB6CbkBLK9+Tqo/NMsOqHb1RmhPCNKhO4F5o8jc0dW0J6d4VArXryUkL7Ru0WpA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@iobroker/adapter-core/-/adapter-core-3.0.4.tgz", + "integrity": "sha512-QsSeIkOa+zEVdIQ0kc0GcfsnQC+pTWWkixotdG4naKuaLUwMWK7xP0UyUEUiaHfPG3KqyZxwIxQR9HMENvvIYQ==", "requires": {} }, "@iobroker/testing": { @@ -7824,15 +7844,15 @@ "dev": true }, "@types/chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-VOVRLM1mBxIRxydiViqPcKn6MIxZytrbMpd6RJLIWKxUNr3zux8no0Oc7kJx0WAPIitgZ0gkrDS+btlqQpubpw==", + "version": "4.3.9", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.9.tgz", + "integrity": "sha512-69TtiDzu0bcmKQv3yg1Zx409/Kd7r0b5F1PfpYJfSHzLGtB53547V4u+9iqKYsTu/O2ai6KTb0TInNpvuQ3qmg==", "dev": true }, "@types/chai-as-promised": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.6.tgz", - "integrity": "sha512-cQLhk8fFarRVZAXUQV1xEnZgMoPxqKojBvRkqPCKPQCzEhpbbSKl1Uu75kDng7k5Ln6LQLUmNBjLlFthCgm1NA==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.7.tgz", + "integrity": "sha512-APucaP5rlmTRYKtRA6FE5QPP87x76ejw5t5guRJ4y5OgMnwtsvigw7HHhKZlx2MGXLeZd6R/GNZR/IqDHcbtQw==", "dev": true, "requires": { "@types/chai": "*" @@ -7865,11 +7885,12 @@ } }, "@types/gulp": { - "version": "4.0.14", - "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.14.tgz", - "integrity": "sha512-zjhBRyGTIPnJ/gByJpjtFyRPKej7zkNFct+QgDhAwpOEoJ2MQjajhU69vrcHIffKcnt3Dik2JHzgMj0C1q9WOg==", + "version": "4.0.16", + "resolved": "https://registry.npmjs.org/@types/gulp/-/gulp-4.0.16.tgz", + "integrity": "sha512-yY3XJjYejEzIQqLt6ZXaOZ/jynVxUe7Km33XA1/sU2zfZ2AeFDragIcT+i53a+j7eoWPgVeikhFvtC0gCteBdA==", "dev": true, "requires": { + "@types/node": "*", "@types/undertaker": ">=1.2.6", "@types/vinyl-fs": "*", "chokidar": "^3.3.1" @@ -7983,27 +8004,30 @@ "dev": true }, "@types/mocha": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.2.tgz", - "integrity": "sha512-NaHL0+0lLNhX6d9rs+NSt97WH/gIlRHmszXbQ/8/MV/eVcFNdeJ/GYhrFuUc8K7WuPhRhTSdMkCp8VMzhUq85w==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.3.tgz", + "integrity": "sha512-RsOPImTriV/OE4A9qKjMtk2MnXiuLLbcO3nCXK+kvq4nr0iMfFgpjaX3MPLb6f7+EL1FGSelYvuJMV6REH+ZPQ==", "dev": true }, "@types/node": { - "version": "20.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.0.tgz", - "integrity": "sha512-LzcWltT83s1bthcvjBmiBvGJiiUe84NWRHkw+ZV6Fr41z2FbIzvc815dk2nQ3RAKMuN2fkenM/z3Xv2QzEpYxQ==", - "dev": true + "version": "20.8.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.10.tgz", + "integrity": "sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==", + "dev": true, + "requires": { + "undici-types": "~5.26.4" + } }, "@types/proxyquire": { - "version": "1.3.29", - "resolved": "https://registry.npmjs.org/@types/proxyquire/-/proxyquire-1.3.29.tgz", - "integrity": "sha512-8/JYXN9NmE4tEGUU/JI7FcvloTu7CxYkb01h4kI+HRvABxwpleLXsvVmOF85LlgEb/xwe+H8MwM4s3ushNuffg==", + "version": "1.3.30", + "resolved": "https://registry.npmjs.org/@types/proxyquire/-/proxyquire-1.3.30.tgz", + "integrity": "sha512-erD15isFDzHMfeQC09DMjGeI0G6pJm7r5R7X/CxnEEe6tEp7N4r6xLYhTptdzne8zMz+2+5wJzrefCMvbmV/Fg==", "dev": true }, "@types/sinon": { - "version": "10.0.16", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.16.tgz", - "integrity": "sha512-j2Du5SYpXZjJVJtXBokASpPRj+e2z+VUhCPHmM6WMfe3dpHu6iVKJMU6AiBcMp/XTAYnEj6Wc1trJUWwZ0QaAQ==", + "version": "10.0.20", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.20.tgz", + "integrity": "sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg==", "dev": true, "requires": { "@types/sinonjs__fake-timers": "*" @@ -8063,6 +8087,12 @@ "@types/vinyl": "*" } }, + "@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "acorn": { "version": "8.10.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", @@ -8355,9 +8385,9 @@ "dev": true }, "axios": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.1.tgz", - "integrity": "sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.0.tgz", + "integrity": "sha512-EZ1DYihju9pwVB+jg67ogm+Tmqc6JmhamRN6I4Zt8DfZu5lbcQGw3ozH9lFejSJgs/ibaef3A9PMXPLeefFGJg==", "dev": true, "requires": { "follow-redirects": "^1.15.0", @@ -9120,18 +9150,19 @@ "dev": true }, "eslint": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", - "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", "dev": true, "requires": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.50.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -11031,9 +11062,9 @@ "dev": true }, "nise": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz", - "integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/nise/-/nise-5.1.5.tgz", + "integrity": "sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==", "dev": true, "requires": { "@sinonjs/commons": "^2.0.0", @@ -11821,16 +11852,16 @@ "dev": true }, "sinon": { - "version": "16.0.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-16.0.0.tgz", - "integrity": "sha512-B8AaZZm9CT5pqe4l4uWJztfD/mOTa7dL8Qo0W4+s+t74xECOgSZDDQCBjNgIK3+n4kyxQrSTv2V5ul8K25qkiQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-17.0.1.tgz", + "integrity": "sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==", "dev": true, "requires": { "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.3.0", + "@sinonjs/fake-timers": "^11.2.2", "@sinonjs/samsam": "^8.0.0", "diff": "^5.1.0", - "nise": "^5.1.4", + "nise": "^5.1.5", "supports-color": "^7.2.0" }, "dependencies": { @@ -11844,9 +11875,9 @@ } }, "@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "version": "11.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-11.2.2.tgz", + "integrity": "sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==", "dev": true, "requires": { "@sinonjs/commons": "^3.0.0" @@ -12511,6 +12542,12 @@ "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", "dev": true }, + "undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", diff --git a/package.json b/package.json index 7ee43451..70c90613 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "iobroker.shuttercontrol", - "version": "1.6.2", + "version": "1.6.3", "description": "Automatic control for shutters", "author": { "name": "simatec", @@ -22,9 +22,9 @@ }, "engines": { "node": ">=16.0.0" - }, + }, "dependencies": { - "@iobroker/adapter-core": "^3.0.3", + "@iobroker/adapter-core": "^3.0.4", "node-schedule": "^2.1.1", "suncalc": "^1.9.0" }, @@ -33,22 +33,22 @@ "@alcalzone/release-script-plugin-iobroker": "^3.6.0", "@alcalzone/release-script-plugin-license": "^3.5.9", "@iobroker/testing": "^4.1.0", - "@types/chai": "^4.3.6", - "@types/chai-as-promised": "^7.1.6", - "@types/gulp": "^4.0.14", - "@types/mocha": "^10.0.2", - "@types/node": "^20.8.0", - "@types/proxyquire": "^1.3.29", - "@types/sinon": "^10.0.16", + "@types/chai": "^4.3.9", + "@types/chai-as-promised": "^7.1.7", + "@types/gulp": "^4.0.16", + "@types/mocha": "^10.0.3", + "@types/node": "^20.8.10", + "@types/proxyquire": "^1.3.30", + "@types/sinon": "^10.0.20", "@types/sinon-chai": "^3.2.11", - "axios": "^1.5.1", + "axios": "^1.6.0", "chai": "^4.3.10", "chai-as-promised": "^7.1.1", - "eslint": "^8.50.0", + "eslint": "^8.52.0", "gulp": "^4.0.2", "mocha": "^10.2.0", "proxyquire": "^2.1.3", - "sinon": "^16.0.0", + "sinon": "^17.0.1", "sinon-chai": "^3.7.0", "tslint": "^6.1.3" },