Hallo zusammen,
ich habe eine Frage bzgl. meines Abfallkalenders. Dieser Updated sich seit ca. 7 Tagen nicht mehr und ich weiß nicht warum im STATE sollte normalerweise ACTIVE stehen es wird aber triggered angezeigt und ich weis nicht wieso. ( Bild siehe Anhang)
Leider erscheinen auch keinerlei Einträge im LOG.
(http://unbenannt.png)
Meine FHEM - Config lautet wie folgt:
#MuellKalender
define Abfall Calendar ical url https://calendar.google.com/calendar/ical/.....................................................................................
attr Abfall room Kalender
define Abfall_Update notify Abfall:(modeUpcoming|modeAlarmOrStart).* {Abfalltermine("$EVENT")}
attr Abfall_Update room Kalender
#MuellKalender
define Papiertonne dummy
attr Papiertonne group Abfall Countdown
attr Papiertonne room Kalender
define Restmuell dummy
attr Restmuell group Abfall Countdown
attr Restmuell room Kalender
define Gelbetonne dummy
attr Gelbetonne group Abfall Countdown
attr Gelbetonne room Kalender
define Biomuell dummy
attr Biomuell group Abfall Countdown
attr Biomuell room Kalender
define Psh_Papiertonne at *18:00:00 {if(Value("Papiertonne") eq "1") {fhem ("set myPushover msg 'Müllkalender' 'Morgen wird die Papiertonne abgeholt'")} }
define Psh_Restmuell at *18:00:00 {if(Value("Restmuell") eq "1") {fhem ("set myPushover msg 'Müllkalender' 'Morgen wird der Restmuell abgeholt'")} }
define Psh_Gelbetonne at *18:00:00 {if(Value("GelberSack") eq "1") {fhem ("set myPushover msg 'Müllkalender' 'Morgen wird der Gelbe Sack abgeholt'")} }
define Psh_Biomuell at *18:00:00 {if(Value("Biomuell") eq "1") {fhem ("set myPushover msg 'Müllkalender' 'Morgen wird der Biomuell abgeholt'")} }
define Muellalert dummy
attr Muellalert event-on-change-reading state
attr Muellalert room Kalender
define at_Muellalert at *06:00:00 {if(Value("Papiertonne") eq "1" || Value("Restmuell") eq "1" || Value("Gelbetonne") eq "1" || Value("Biomuell") eq "1") {fhem("set Muellalert on")} else { fhem("set Muellalert off")}}
Das Kalender-Modul wurde überarbeitet und sicher hast Du vor 7 Tagen ein Update gefahren...
siehe zum Kalender-Modul
http://fhem.de/commandref_DE.html#Calendar (http://fhem.de/commandref_DE.html#Calendar)
Es gibt jetzt auch eine neues Abfall-Modul, welches mit dem neuen Kalender harmoniert...
http://forum.fhem.de/index.php/topic,48237.0.html (http://forum.fhem.de/index.php/topic,48237.0.html)
Hi, also ich hab gestern fhem geupdatet und mein abfallkalender aktualisiert sich nicht mehr.
Geht das mit dem kalendermodul jetzt nicht mehr!?
Gesendet von iPhone mit Tapatalk
Hallo,
ich hatte auch das Problem, dass mein Abfall-Kalender nach dem FHEM-Update nicht mehr funktioniert hat.
Gestern habe ich mit der Unterstützung des Forums meine Probleme gelöst.
Eine Schritt-für-Schritt Doku habe ich hier erstellt, wie der Abfall-Kalender bei mir aktuell funktionsfähig realisiert ist:
http://raspberrypi.crmvy3qiisdstf8c.myfritz.net/wordpress/?p=496 (http://raspberrypi.crmvy3qiisdstf8c.myfritz.net/wordpress/?p=496)
Bei Fragen hierzu bitte einfach kurz melden.
Viele Grüße
Jens
P.S.: In der CommandRef
http://fhem.de/commandref.html#Calendar (http://fhem.de/commandref.html#Calendar)
wurde folgendes als deprecated beschrieben. Wahrscheinlich scheitert es hieran:
<reading> all calendar events listed in the reading <reading> (modeAlarm, modeAlarmed, modeStart, etc.) - this is deprecated and will be removed in a future version, use mode=<regex> instead.
sowie, was ich davor noch nicht gesehen habe (evtl. neu?)
hideOlderThan <timespec>
hideLaterThan <timespec>
Hallo zusammen mein Kalender hat sich jetzt einmal Upgedatet. Aber heute nicht mehr es erscheint folgende Meldung im LOG:
Subroutine myUtils_Initialize redefined at ./FHEM/99_myUtilsMuell.pm line 16.
"my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtilsMuell.pm line 81.
"my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtilsMuell.pm line 85.
"my" variable $dayDiff masks earlier declaration in same scope at ./FHEM/99_myUtilsMuell.pm line 89.
Subroutine Abfalltermine redefined at ./FHEM/99_myUtilsMuell.pm line 22.
2016.02.22 10:40:30 1: reload: Error:Modul 99_myUtilsMuell deactivated:
2016.02.22 10:40:30 1: reload: Error:Modul 99_myUtilsTemplate deactivated:
Meine 99_UtilsMuell.pm sieht wie folgt aus:
##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.
package main;
use strict;
use warnings;
use POSIX;
use Time::Local;
sub
myUtils_Initialize($$)
{
my ($hash) = @_;
}
sub
Abfalltermine ($)
{
my ($Ereignis) = @_;
my @Ereignisarray = split(/.*:\s/,$Ereignis);
my $Ereignisteil1 = $Ereignisarray[1];
my @uids=split(/;/,$Ereignisteil1);
my $t = time;
my $dtPapier = '';
my $dtWertstofftonne = '';
my $dtRest = '';
my $dtBiomuell = '';
foreach my $uid (@uids) {
my $Kalendertext = fhem("get Abfall summary $uid");
if ($Kalendertext =~ /Papiertonne/) {
my $dt = fhem("get Abfall start $uid");
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if ($dtPapier eq '' || ($eventDate < $dtPapier && $eventDate > $t))
{
$dtPapier = $eventDate;
Log(3, $dtPapier);
}
};
if ($Kalendertext =~ /Wertstoff/) {
my $dt = fhem("get Abfall start $uid");
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if ($dtWertstofftonne eq '' || ($eventDate < $dtWertstofftonne && $eventDate > $t))
{
$dtWertstofftonne = $eventDate;
}
};
if ($Kalendertext =~ /Restmüll/) {
my $dt = fhem("get Abfall start $uid");
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if ($dtRest eq '' || ($eventDate < $dtRest && $eventDate > $t))
{
$dtRest = $eventDate;
}
};
if ($Kalendertext =~ /Biomüll/) {
my $dt = fhem("get Abfall start $uid");
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if ($dtBiomuell eq '' || ($eventDate < $dtBiomuell && $eventDate > $t))
{
$dtBiomuell = $eventDate;
}
};
my $dayDiff = floor(($dtPapier - $t) / 60 / 60 / 24 + 1);
if ($dayDiff >= 0) {
fhem("set Papiertonne $dayDiff");
}
my $dayDiff = floor(($dtWertstofftonne - $t) / 60 / 60 / 24 + 1);
if ($dayDiff >= 0) {
fhem("set Wertstofftonne $dayDiff");
}
my $dayDiff = floor(($dtRest - $t) / 60 / 60 / 24 + 1);
if ($dayDiff >= 0) {
fhem("set Restmuell $dayDiff");
}
my $dayDiff = floor(($dtBiomuell - $t) / 60 / 60 / 24 + 1);
if ($dayDiff >= 0) {
fhem("set Biomuell $dayDiff");
}
}
}
Danke für eure Hilfe
Das schon gelesen -> http://forum.fhem.de/index.php?topic=14114.0 ?
Hi,
also ich find meinen Fehler einfach nicht.
Mein Kalender sieht so aus:
Internals:
DEF ical file /home/thomas/limbach-hauptstrasse.ics 36000
NAME AbfallA
NR 228
NTFY_ORDER 50-AbfallA
STATE triggered
TYPE Calendar
Helper:
Dblog:
Changed:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6 start
Lastupdate:
Mydblog:
TIME 1456324631.2144
VALUE 2016-02-24 15:37:10
Modealarmorstart:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6
Modechanged:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6
Modeend:
Mydblog:
TIME 1456324631.94966
VALUE f6c325fa3e124e58e861b575faead277;737aa85adec1f3140fb47dfecac34f0f;c6dbdbba338350a0cd06d7cd5ab35d04;6f012e49cdd5939ec941dccf571741ca;147c3a1c0453f61e543dd7ae8ee35a74;65fb077386e02b97d4f0e5c58d5bacc5;728ff15869395f3a332f653d2412f251;349ba66903103b54abe630bda82b7728;5fd600c3eaff02a39ca04cff9b4ce9cf;f582797dc008eb43ce28b2d6abcf5edc;eb6d48f4eeed65f8503a8a7933e06512
Modestart:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6
Modestarted:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6
Modeupcoming:
Mydblog:
TIME 1456324631.94966
VALUE 9af33f2b76d19c0973b5214b3a2de1bb;df6be729b05acb2449520fd869b6c2aa;274c5933a79fc3a19bcb61b9da27d05a;5163fdf9cfebb6c8b60892e11cb76e03;3b8d284fc7015b21a4dd4f831491ca3c;255ea065be39f2884d7f7bf188eafe2d;c06506ff2fbbd612b534c887380aa545;7155833479f7c4c3f9b5552236da558d;bf8095dc4d20e049fee94fd6f222d2ce;26eb942f8240b41009af85fdcb56daa9;6f457b16d2d45a8a5c4a40c1591c8142;ed19ca166f67097367fb0e709c129fb6;96cab15f4444209fcfa544640960aaf3;65f73efcbf65c4a0978b7bbb7a713a93;065a5ed2216b5a00b3d1f5a1826b262e;9439159d1249d40fd1ef8f4ad83d6d34;144b3b7153a0af1d76aaf8712a2f5bb0;42f1f1bbbbd32a6d476fc8611d835ed6;c47761fb38ee5f82f83fb7f5eb47cb57;41f810d050b8054083cc0a15d719cc10;50790711c80da14c0c5efd1a2ef43f6a;64b783c994fa2ec6a8f4cb042f9702b3;3509578f59a4f639d0c8bf44af6ef602;926bbf0694896f6482925df487c29356;f1d3e4378fcc05dedf0903f78c58992f;fae05746436c12420248e378fd9e3dc9;1f5821c3d9ed657dc312c6ee35902be8;160a6a9729f1279edb78548266866315;69ab05b5b02624a8b6119b69d95af5ff;3d940aa2c61832055ae5924a0751fcc0;c3a1ef0ee46ca27332168ca2f8bf54ee;f7809e25997d3fb21749610beed1f02b;f108b63a08ac799f338fad1deb5b58bf;6c17257084f4916559c4ab0cc7a8ee0b;149ec80be04c127df2397307b40db327;3217d71a23c41f00cc33726d57ed3f27;61530ee479ed8aa7358f118f261b4d83;3fa31acdf573e0ce51740a70d32608e8;2a17d3731262fbc7aee1d37395fb1204;9a2fabf8103a76d511fe34ed723ca1c0;ad57f1981fbc0ab8ad72008813d9c6eb;319676af7fc7c0fa74539a95ba5f6092;e65f3ab32d14da5d0ca7201638b33b81;5d9dde6fd7aead5b176e3ae2913040a3;e8972e51293d65e9dd3dab8893b88e68;76d4aa2294a1c9024708e729db92be00;8263484420f35709fe9a3e5a110c858b;9a5bfa027a0b8228e6099ca34454b7dd;01feade28d3c9763074773e89b90dc81;118501024d0227ba7707ee1441b29420;d252f7a1aab4cb87e205f0e19fecf625;6d78ff859b38b2fec640618b161e439b;2298f34522ab9098a6e5a4ee379217e1;e2b724454650d8bca40eb8455d40e3bc;0f19d4d0cacac5a3da090e36de58c6f1;5524f5c01ffc4e069398e7d7f56ec0e0;846e9518932e1fa3a94751055e31841d;259cb74a3d045a8e7b828e7e8e8f71ce;643cd426546781501d5bdf4bd052d42b;27aa34c843978665ef02c0fc52c90960;a81ddef6bf0f56aa800b50cd0e66749d;c7b6b21e8b998f70a2ddef8008c7a813;81d92a13bfee2a46563eabc208e28093
Nextupdate:
Mydblog:
TIME 1456324631.2144
VALUE 2016-02-25 01:37:10
Nextwakeup:
Mydblog:
TIME 1456324631.98558
VALUE 2016-02-25 00:00:00
Start:
Mydblog:
TIME 1456268402.74847
VALUE 113bf8eb63827ea37aeb2dfe730c86d6
State:
Mydblog:
TIME 1456324631.94966
VALUE triggered
Readings:
2016-02-10 17:19:41 all 01feade28d3c9763074773e89b90dc81;065a5ed2216b5a00b3d1f5a1826b262e;0f19d4d0cacac5a3da090e36de58c6f1;113bf8eb63827ea37aeb2dfe730c86d6;118501024d0227ba7707ee1441b29420;144b3b7153a0af1d76aaf8712a2f5bb0;149ec80be04c127df2397307b40db327;160a6a9729f1279edb78548266866315;1f5821c3d9ed657dc312c6ee35902be8;2298f34522ab9098a6e5a4ee379217e1;255ea065be39f2884d7f7bf188eafe2d;259cb74a3d045a8e7b828e7e8e8f71ce;26eb942f8240b41009af85fdcb56daa9;274c5933a79fc3a19bcb61b9da27d05a;27aa34c843978665ef02c0fc52c90960;2a17d3731262fbc7aee1d37395fb1204;319676af7fc7c0fa74539a95ba5f6092;3217d71a23c41f00cc33726d57ed3f27;3509578f59a4f639d0c8bf44af6ef602;3b8d284fc7015b21a4dd4f831491ca3c;3d940aa2c61832055ae5924a0751fcc0;3fa31acdf573e0ce51740a70d32608e8;41f810d050b8054083cc0a15d719cc10;42f1f1bbbbd32a6d476fc8611d835ed6;50790711c80da14c0c5efd1a2ef43f6a;5163fdf9cfebb6c8b60892e11cb76e03;5524f5c01ffc4e069398e7d7f56ec0e0;5d9dde6fd7aead5b176e3ae2913040a3;61530ee479ed8aa7358f118f261b4d83;643cd426546781501d5bdf4bd052d42b;64b783c994fa2ec6a8f4cb042f9702b3;65f73efcbf65c4a0978b7bbb7a713a93;65fb077386e02b97d4f0e5c58d5bacc5;69ab05b5b02624a8b6119b69d95af5ff;6c17257084f4916559c4ab0cc7a8ee0b;6d78ff859b38b2fec640618b161e439b;6f457b16d2d45a8a5c4a40c1591c8142;7155833479f7c4c3f9b5552236da558d;76d4aa2294a1c9024708e729db92be00;81d92a13bfee2a46563eabc208e28093;8263484420f35709fe9a3e5a110c858b;846e9518932e1fa3a94751055e31841d;926bbf0694896f6482925df487c29356;9439159d1249d40fd1ef8f4ad83d6d34;96cab15f4444209fcfa544640960aaf3;9a2fabf8103a76d511fe34ed723ca1c0;9a5bfa027a0b8228e6099ca34454b7dd;9af33f2b76d19c0973b5214b3a2de1bb;a81ddef6bf0f56aa800b50cd0e66749d;ad57f1981fbc0ab8ad72008813d9c6eb;bf8095dc4d20e049fee94fd6f222d2ce;c06506ff2fbbd612b534c887380aa545;c3a1ef0ee46ca27332168ca2f8bf54ee;c47761fb38ee5f82f83fb7f5eb47cb57;c7b6b21e8b998f70a2ddef8008c7a813;d252f7a1aab4cb87e205f0e19fecf625;df6be729b05acb2449520fd869b6c2aa;e2b724454650d8bca40eb8455d40e3bc;e65f3ab32d14da5d0ca7201638b33b81;e8972e51293d65e9dd3dab8893b88e68;ed19ca166f67097367fb0e709c129fb6;f108b63a08ac799f338fad1deb5b58bf;f1d3e4378fcc05dedf0903f78c58992f;f582797dc008eb43ce28b2d6abcf5edc;f7809e25997d3fb21749610beed1f02b;fae05746436c12420248e378fd9e3dc9
2016-02-10 17:19:42 lastCheck 2016-02-10 17:19:40
2016-02-24 15:37:11 lastUpdate 2016-02-24 15:37:10
2016-02-10 17:19:42 modeAlarm
2016-02-24 00:00:01 modeAlarmOrStart 113bf8eb63827ea37aeb2dfe730c86d6
2016-02-10 17:19:42 modeAlarmed
2016-02-24 05:37:11 modeChanged
2016-02-24 15:37:11 modeEnd f6c325fa3e124e58e861b575faead277;737aa85adec1f3140fb47dfecac34f0f;c6dbdbba338350a0cd06d7cd5ab35d04;6f012e49cdd5939ec941dccf571741ca;147c3a1c0453f61e543dd7ae8ee35a74;65fb077386e02b97d4f0e5c58d5bacc5;728ff15869395f3a332f653d2412f251;349ba66903103b54abe630bda82b7728;5fd600c3eaff02a39ca04cff9b4ce9cf;f582797dc008eb43ce28b2d6abcf5edc;eb6d48f4eeed65f8503a8a7933e06512
2016-02-18 02:36:27 modeEnded
2016-02-24 00:00:01 modeStart 113bf8eb63827ea37aeb2dfe730c86d6
2016-02-24 05:37:11 modeStarted
2016-02-24 15:37:11 modeUpcoming 9af33f2b76d19c0973b5214b3a2de1bb;df6be729b05acb2449520fd869b6c2aa;274c5933a79fc3a19bcb61b9da27d05a;5163fdf9cfebb6c8b60892e11cb76e03;3b8d284fc7015b21a4dd4f831491ca3c;255ea065be39f2884d7f7bf188eafe2d;c06506ff2fbbd612b534c887380aa545;7155833479f7c4c3f9b5552236da558d;bf8095dc4d20e049fee94fd6f222d2ce;26eb942f8240b41009af85fdcb56daa9;6f457b16d2d45a8a5c4a40c1591c8142;ed19ca166f67097367fb0e709c129fb6;96cab15f4444209fcfa544640960aaf3;65f73efcbf65c4a0978b7bbb7a713a93;065a5ed2216b5a00b3d1f5a1826b262e;9439159d1249d40fd1ef8f4ad83d6d34;144b3b7153a0af1d76aaf8712a2f5bb0;42f1f1bbbbd32a6d476fc8611d835ed6;c47761fb38ee5f82f83fb7f5eb47cb57;41f810d050b8054083cc0a15d719cc10;50790711c80da14c0c5efd1a2ef43f6a;64b783c994fa2ec6a8f4cb042f9702b3;3509578f59a4f639d0c8bf44af6ef602;926bbf0694896f6482925df487c29356;f1d3e4378fcc05dedf0903f78c58992f;fae05746436c12420248e378fd9e3dc9;1f5821c3d9ed657dc312c6ee35902be8;160a6a9729f1279edb78548266866315;69ab05b5b02624a8b6119b69d95af5ff;3d940aa2c61832055ae5924a0751fcc0;c3a1ef0ee46ca27332168ca2f8bf54ee;f7809e25997d3fb21749610beed1f02b;f108b63a08ac799f338fad1deb5b58bf;6c17257084f4916559c4ab0cc7a8ee0b;149ec80be04c127df2397307b40db327;3217d71a23c41f00cc33726d57ed3f27;61530ee479ed8aa7358f118f261b4d83;3fa31acdf573e0ce51740a70d32608e8;2a17d3731262fbc7aee1d37395fb1204;9a2fabf8103a76d511fe34ed723ca1c0;ad57f1981fbc0ab8ad72008813d9c6eb;319676af7fc7c0fa74539a95ba5f6092;e65f3ab32d14da5d0ca7201638b33b81;5d9dde6fd7aead5b176e3ae2913040a3;e8972e51293d65e9dd3dab8893b88e68;76d4aa2294a1c9024708e729db92be00;8263484420f35709fe9a3e5a110c858b;9a5bfa027a0b8228e6099ca34454b7dd;01feade28d3c9763074773e89b90dc81;118501024d0227ba7707ee1441b29420;d252f7a1aab4cb87e205f0e19fecf625;6d78ff859b38b2fec640618b161e439b;2298f34522ab9098a6e5a4ee379217e1;e2b724454650d8bca40eb8455d40e3bc;0f19d4d0cacac5a3da090e36de58c6f1;5524f5c01ffc4e069398e7d7f56ec0e0;846e9518932e1fa3a94751055e31841d;259cb74a3d045a8e7b828e7e8e8f71ce;643cd426546781501d5bdf4bd052d42b;27aa34c843978665ef02c0fc52c90960;a81ddef6bf0f56aa800b50cd0e66749d;c7b6b21e8b998f70a2ddef8008c7a813;81d92a13bfee2a46563eabc208e28093
2016-02-24 15:37:11 nextUpdate 2016-02-25 01:37:10
2016-02-24 15:37:11 nextWakeup 2016-02-25 00:00:00
2016-02-24 15:37:11 state triggered
2016-02-10 17:19:41 stateChanged
2016-02-10 17:19:41 stateDeleted
2016-02-10 17:19:41 stateNew
2016-02-10 17:19:41 stateUpdated
Attributes:
alias Abfallkalender
room Kalender
das notify so:
Internals:
DEF AbfallA.all:.* {MuelltermineA("$EVTPART1")}
NAME AbfallA_Update.not.Update
NR 233
NTFY_ORDER 50-AbfallA_Update.not.Update
REGEXP AbfallA.all:.*
STATE active
TYPE notify
Readings:
2016-02-21 17:25:54 state active
Attributes:
room Kalender
die sub in der 99myUtils sieht so aus:
sub
MuelltermineA ($)
{
my ($Ereignis) = @_;
my @uids=split(/;/,$Ereignis);
my (undef,undef,undef,$mday,$mon,$year) = localtime;
my $t = timelocal(0,0,0,$mday,$mon,$year);
my $dtBio = '';
my $dtYellow = '';
my $dtRest = '';
my $dtPapier = '';
foreach my $uid (@uids) {
my $Kalendertext = fhem("get AbfallA summary $uid",1);
if ($Kalendertext =~ /Bioabfall/) {
my $dt = fhem("get AbfallA start $uid",1);
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if (($dtBio eq '' || $eventDate < $dtBio) && $eventDate >= $t)
{
$dtBio = $eventDate;
}
};
if ($Kalendertext =~ /Gelber Sack/) {
my $dt = fhem("get AbfallA start $uid",1);
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if (($dtYellow eq '' || $eventDate < $dtYellow) && $eventDate >= $t)
{
$dtYellow = $eventDate;
}
};
if ($Kalendertext =~ /Restabfall/) {
my $dt = fhem("get AbfallA start $uid",1);
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if (($dtRest eq '' || $eventDate < $dtRest) && $eventDate >= $t)
{
$dtRest = $eventDate;
}
};
if ($Kalendertext =~ /Altpapier/) {
my $dt = fhem("get AbfallA start $uid",1);
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
my $eventDate = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
if (($dtPapier eq '' || $eventDate < $dtPapier) && $eventDate >= $t)
{
$dtPapier = $eventDate;
}
};
};
my $dayDiff = 0;
if ($dtBio eq '') {
fhem("set BiomuellIn Keine weiteren Termine");
}
else {
$dayDiff = floor(($dtBio - $t) / 60 / 60 / 24);
if ($dayDiff >= 0) {
fhem("set BiomuellIn $dayDiff");
}
}
if ($dtYellow eq '') {
fhem("set GelbeTonneIn Keine weiteren Termine");
}
else {
$dayDiff = floor(($dtYellow - $t) / 60 / 60 / 24);
if ($dayDiff >= 0) {
fhem("set GelbeTonneIn $dayDiff");
}
}
if ($dtRest eq '') {
fhem("set RestmuellIn Keine weiteren Termine");
}
else {
$dayDiff = floor(($dtRest - $t) / 60 / 60 / 24);
if ($dayDiff >= 0) {
fhem("set RestmuellIn $dayDiff");
}
}
if ($dtPapier eq '') {
fhem("set PapierIn Keine weiteren Termine");
}
else {
$dayDiff = floor(($dtPapier - $t) / 60 / 60 / 24);
if ($dayDiff >= 0) {
fhem("set PapierIn $dayDiff");
}
}
}
Was läuft da jetzt falsch?
Danke
ZitatWas läuft da jetzt falsch?
alles? deine myutils passt halt nicht zum neuen calendar modul.
1. fehler: dein notify: wenn der calendard trigger gibts nichts auszuwerten ($EVENTPART in deinem notify ist dann leer bzw max triggered). somit übergibst du an deine myutils nichts
2. die myutils:
my ($Ereignis) = @_;
my @uids=split(/;/,$Ereignis);
bringt nichts weil ereignis leer ist und so der ganze rest auch hinfällig ist.
wenn dann müsstest du in den my utils dir ersteinmal entweder
a) die uids holen mit get kalendername uid next (nicht vergessen das attribut hideOlsderThan im calendar zu setzen)
- die ganzen termine holen mit get kalendername full next (nicht vergessen das attribut hideOlsderThan im calendar zu setzen)
auf der datenbasis kannst du dann weiter machen und
bei a) split bei zeilenumbruch um die einzele uid zu bekommen und dann mit get summary uid den text holen
bei b) split bei zeilenumbruch umd die einzelen termine zu holen, diese dann bei mehr als ein leerzeichen in uid start end summary location zu splitten
such mal nach dem modul abfall ist sicher einfacher ;)
Also wenn ich les was du da schreibts, scheint es echt mit dem anderen Modul einfacher zu sein:-(
Schade das das Kalender Module so geändert wurde, hatte so um sehr gut funktioniert.....