############################################################################### # # Developed with VSCodium and richterger perl plugin # # (c) 2018-2022 Copyright: Marko Oldenburg (fhemdevelopment at cooltux dot net) # All rights reserved # # Special thanks goes to: # - Bernd (Cluni) this module is based on the logic of his script "Rollladensteuerung für HM/ROLLO inkl. Abschattung und Komfortfunktionen in Perl" (https://forum.fhem.de/index.php/topic,73964.0.html) # - Beta-User for many tests, many suggestions and good discussions # - pc1246 write english commandref # - FunkOdyssey commandref style # - sledge fix many typo in commandref # - many User that use with modul and report bugs # - Christoph (christoph.kaiser.in) Patch that expand RegEx for Window Events # - Julian (Loredo) expand Residents Events for new Residents functions # - Christoph (Christoph Morrison) for fix Commandref, many suggestions and good discussions # # # This script is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License,or # any later version. # # The GNU General Public License can be found at # http://www.gnu.org/copyleft/gpl.html. # A copy is found in the textfile GPL.txt and important notices to the license # from the author is found in LICENSE.txt distributed with these scripts. # # This script is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # # $Id$ # ############################################################################### ### Notizen # !!!!! - Innerhalb einer Shutterschleife kein CommandAttr verwenden. Bring Fehler!!! Kommen Raumnamen in die Shutterliste !!!!!! # package FHEM::AutoShuttersControl; use strict; use warnings; use utf8; use FHEM::Meta; use FHEM::Automation::ShuttersControl; use GPUtils qw(GP_Import); ## Import der FHEM Funktionen #-- Run before package compilation BEGIN { # Import from main context GP_Import(qw(readingFnAttributes)); } sub ::AutoShuttersControl_Initialize { goto &Initialize } sub Initialize { my $hash = shift; ## Da ich mit package arbeite müssen in die Initialize für die jeweiligen hash Fn Funktionen der Funktionsname # und davor mit :: getrennt der eigentliche package Name des Modules $hash->{SetFn} = \&FHEM::Automation::ShuttersControl::Set; $hash->{GetFn} = \&FHEM::Automation::ShuttersControl::Get; $hash->{DefFn} = \&FHEM::Automation::ShuttersControl::Define; $hash->{NotifyFn} = \&FHEM::Automation::ShuttersControl::Notify; $hash->{UndefFn} = \&FHEM::Automation::ShuttersControl::Undef; $hash->{DeleteFn} = \&FHEM::Automation::ShuttersControl::Delete; $hash->{ShutdownFn} = \&FHEM::Automation::ShuttersControl::Shutdown; $hash->{AttrList} = 'ASC_tempSensor ' . 'ASC_brightnessDriveUpDown ' . 'ASC_autoShuttersControlMorning:on,off ' . 'ASC_autoShuttersControlEvening:on,off ' . 'ASC_autoShuttersControlComfort:on,off ' . 'ASC_residentsDev ' . 'ASC_rainSensor ' . 'ASC_autoAstroModeMorning:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ' . 'ASC_autoAstroModeMorningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ' . 'ASC_autoAstroModeEvening:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ' . 'ASC_autoAstroModeEveningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ' . 'ASC_freezeTemp:-5,-4,-3,-2,-1,0,1,2,3,4,5 ' . 'ASC_shuttersDriveDelay ' . 'ASC_twilightDevice ' . 'ASC_windSensor ' . 'ASC_expert:1 ' . 'ASC_blockAscDrivesAfterManual:0,1 ' . 'ASC_debug:1 ' . 'ASC_advStartDate:DeadSunday,FirstAdvent ' . 'ASC_advEndDate:CandlemasDay,EpiphanyDay ' . $readingFnAttributes; $hash->{NotifyOrderPrefix} = '51-'; # Order Nummer für NotifyFn $hash->{FW_detailFn} = \&FHEM::Automation::ShuttersControl::ShuttersInformation; $hash->{parseParams} = 1; return FHEM::Meta::InitMod( __FILE__, $hash ); } 1; __END__ =pod =item device =item summary Module for controlling shutters depending on various conditions =item summary_DE Modul zur automatischen Rolladensteuerung auf Basis bestimmter Ereignisse =begin html

AutoShuttersControl

=end html =begin html_DE

AutoShuttersControl

=end html_DE =for :application/json;q=META.json 73_AutoShuttersControl.pm { "abstract": "Module for controlling shutters depending on various conditions", "x_lang": { "de": { "abstract": "Modul zur Automatischen Rolladensteuerung auf Basis bestimmter Ereignisse" } }, "keywords": [ "fhem-mod-device", "fhem-core", "Shutter", "Automation", "Rollladen", "Rollo", "Control" ], "release_status": "stable", "license": "GPL_2", "version": "v0.10.24", "author": [ "Marko Oldenburg " ], "x_fhem_maintainer": [ "CoolTux" ], "x_fhem_maintainer_github": [ "LeonGaultier" ], "prereqs": { "runtime": { "requires": { "FHEM": 5.00918799, "perl": 5.023, "Meta": 0, "JSON": 0, "Date::Parse": 0 }, "recommends": { }, "suggests": { } } } } =end :application/json;q=META.json =cut