|
From: <sw...@us...> - 2011-07-03 19:17:33
|
Revision: 382
http://openautomation.svn.sourceforge.net/openautomation/?rev=382&view=rev
Author: swiss1
Date: 2011-07-03 19:17:27 +0000 (Sun, 03 Jul 2011)
Log Message:
-----------
Ein BUG im Plugin sorgte daf?\195?\188r, dass jeder Schaltbefehl 3 mal pro Minute ausgef?\195?\188hrt wurde. Das ist nun behoben. Es wird nurnoch gesendet wenn der Wert im Aktor nicht mit dem Wert des Schaltpunkes ?\195?\188berein stimmt. Version 0.5 BETA
Modified Paths:
--------------
wiregate/plugin/generic/schaltuhr.pl
Modified: wiregate/plugin/generic/schaltuhr.pl
===================================================================
--- wiregate/plugin/generic/schaltuhr.pl 2011-07-03 19:14:00 UTC (rev 381)
+++ wiregate/plugin/generic/schaltuhr.pl 2011-07-03 19:17:27 UTC (rev 382)
@@ -1,5 +1,5 @@
# Plugin zum Zeit abh\xE4ngigem schaten von GA's (Schaltuhr)
-# Version 0.4 BETA 03.07.2011
+# Version 0.5 BETA 03.07.2011
# Copyright: swiss (http://knx-user-forum.de/members/swiss.html)
# License: GPL (v2)
# Aufbau m\xF6glichst so, dass man unterhalb der Einstellungen nichts ver\xE4ndern muss!
@@ -12,9 +12,9 @@
#Pro Schaltpunkt einfach den unten stehenden Eintrag kopieren und anpassen.
-push @Schaltzeiten, { name => "bew\xE4sserung_ein", montag => 1, dienstag => 1, mittwoch => 1, donnerstag => 1, freitag => 1, samstag => 0, sonntag => 1, Stunden => 20, Minuten => 30, Wert => 1, DPT => 1, ga => '2/0/0', KW => '', Monat => '' };
+push @Schaltzeiten, { name => "bew\xE4sserung_ein", montag => 1, dienstag => 1, mittwoch => 1, donnerstag => 1, freitag => 1, samstag => 0, sonntag => 1, Stunden => 21, Minuten => 02, Wert => 1, DPT => 1, ga => '2/0/0', KW => '', Monat => '' };
-push @Schaltzeiten, { name => "bew\xE4sserung_aus", montag => 1, dienstag => 1, mittwoch => 1, donnerstag => 1, freitag => 1, samstag => 0, sonntag => 1, Stunden => 20, Minuten => 31, Wert => 0, DPT => 1, ga => '2/0/0', KW => '', Monat => '' };
+push @Schaltzeiten, { name => "bew\xE4sserung_aus", montag => 1, dienstag => 1, mittwoch => 1, donnerstag => 1, freitag => 1, samstag => 0, sonntag => 1, Stunden => 21, Minuten => 03, Wert => 0, DPT => 1, ga => '2/0/0', KW => '', Monat => '' };
######################
##ENDE Einstellungen##
@@ -44,27 +44,27 @@
$mon += 1;
my $kw = getWeekNumber($year, $mon, $mday);
-$plugin_info{$plugname.'_debug'} = $kw;
foreach my $element (@Schaltzeiten) {
-
- if ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{KW} ne '') {
- if ($element->{KW} == $kw) {
+ if (knx_read($element->{ga},0,$element->{DPT}) ne $element->{Wert}) {
+ if ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{KW} ne '') {
+ if ($element->{KW} == $kw) {
+ knx_write($element->{ga},$element->{Wert},$element->{DPT});
+ next;
+ } else {
+ next;
+ }
+ } elsif ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{Monat} ne '') {
+ if ($element->{Monat} == $mon) {
+ knx_write($element->{ga},$element->{Wert},$element->{DPT});
+ next;
+ } else {
+ next;
+ }
+ } elsif ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{KW} eq '' && $element->{Monat} eq '') {
knx_write($element->{ga},$element->{Wert},$element->{DPT});
next;
- } else {
- next;
}
- } elsif ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{Monat} ne '') {
- if ($element->{Monat} == $mon) {
- knx_write($element->{ga},$element->{Wert},$element->{DPT});
- next;
- } else {
- next;
- }
- } elsif ($element->{$Wochentag[$wday]} == 1 && $element->{Stunden} == $hour && $element->{Minuten} == $min && $element->{KW} eq '' && $element->{Monat} eq '') {
- knx_write($element->{ga},$element->{Wert},$element->{DPT});
- next;
}
next;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|