Neues Modul für Abfallkalender ABFALL

Begonnen von uniqueck, 27 Januar 2016, 01:02:41

Vorheriges Thema - Nächstes Thema

nils_

Zitat von: moerte am 28 März 2018, 09:35:46
@nils .. jede 60min wird ein Update des Kalenders gemacht.
Es springt dann erst am Folgetag auf die nächst kommende Woche. Das Reading now bleibt obwohl der Termin ja 9:00uhr beendet ist.
nur zum verständnis:
das "now" reading bleibt bis Mitternacht auf dem aktuellen Tag? am nächsten Tag passt alles??


ich gucke mir die readings eigentlich selbst nie an, sondern lasse mich nur benachrichtigen  ::)

evtl. kann Constantin was dazu sagen, ob dieses Verhalten vom Abfallmodull ausgeht oder aber ob das eher mit dem Calendermodul zusammenhängt.
viele Wege in FHEM es gibt!

moerte

Zitat von: nils_ am 28 März 2018, 09:47:33
nur zum verständnis:
das "now" reading bleibt bis Mitternacht auf dem aktuellen Tag? am nächsten Tag passt alles??

Genau - dass now Reading im Abfallmodul bleibt bis Mitternacht.
am nächsten Tag läuft alles wieder ganz normal weiter und zeigt den nächsten Termin an.
Hab auch schon versucht verschieden die Termine anzulegen.. auch nicht von-bis (0:00-09:00) sonder auch feste Uhrzeit auf 06:00 Uhr - das ändert auch nichts, das now Reading verschwindet immer erst am nächsten Tag

Otto123

Hallo moerte,

ich verstehe Dein Problem nicht, es geht um Abfall. Der wird an einem definierten Tag abgeholt. Die Uhrzeit ist nicht vorhersehbar. Eventuell mehrere Tonnen an einem Tag, aber doch nicht mehrere Termine an einem Tag!?

Also now bedeutet im Abfallsinne einfach heute und nicht jetzt.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

nils_

kurz den code "überflogen"
gar nicht so einfach bei diesem generierten anteil  :o

so wie ich es sehe, wertet das abfall-modul _nur_ den tag und nicht die uhrzeit eines kalendereintrages aus.
d.h. es ist so wie Otto schon gesagt hat:
Zitat von: Otto123 am 28 März 2018, 10:26:50
Also now bedeutet im Abfallsinne einfach heute und nicht jetzt.
viele Wege in FHEM es gibt!

moerte

Zitat von: Otto123 am 28 März 2018, 10:26:50
Hallo moerte,

ich verstehe Dein Problem nicht
...

Also now bedeutet im Abfallsinne einfach heute und nicht jetzt.

Gruß Otto

Aber laut FHEMWiki sollte die nie Readings verschwinden!? Am abholtag.
Zitat:"...Dadurch wird erreicht, dass die Anzeige nach 9 Uhr weiterspringt, weil dann die now-Readings verschwinden."

Gut dann hab ich das Falsch verstanden und werde damit leben. Bedanke mich trotzdem für eure Hilfsbereitschaft

nils_

Zitat von: moerte am 28 März 2018, 10:59:50
Zitat:"...Dadurch wird erreicht, dass die Anzeige nach 9 Uhr weiterspringt, weil dann die now-Readings verschwinden."

Gut dann hab ich das Falsch verstanden und werde damit leben. Bedanke mich trotzdem für eure Hilfsbereitschaft
kann man ja nicht falsch verstehen, steht ja genauso so.

möglicherweise war das mal angedacht oder in einer älteren version auch so umgesetzt.
der code wurde mittlerweile massiv umgebaut (ist schon ein weilchen her)
zur uhrzeit habe ich - auf die schnelle - nix im code gefunden.

genaueres kann da nur Constantin zu sagen!
viele Wege in FHEM es gibt!

Otto123

#1161
Naja, dass ist eher wieder ein Fall für selektives Wunschlesen.
Was Du meinst läuft unter dem Thema
https://wiki.fhem.de/wiki/ABFALL#Einbindung_ins_Tablet_UI.2C_erweitert

Etwas mehr Zitat
ZitatDiese Funktion wird in den userReadings des Abfall-Moduls verwendet. Das Abfallmodul erzeugt eine Gruppe von Readings mit dem Namen now_*, wenn die Leerung am selben Tag ansteht, bzw. genau dann, wenn der Termin im zu Grunde liegenden Kalender gerade aktiv ist. In diesem Beispiel liegt dem Kalender-Modul ein Google-Kalender zu Grunde, bei dem die Termine immer von 0 Uhr bis 9 Uhr morgens eingetragen sind. Dadurch wird erreicht, dass die Anzeige nach 9 Uhr weiterspringt, weil dann die now-Readings verschwinden.

Folgende userReadings werden zum Abfallmodul hinzugefügt, welches in diesem Beispiel "abf.abfall" genannt ist:
Du musst Dein userreadings ändern, wie sek_is_back schon sagte!

Und das zeigt mal wieder das Problem mit dem Verständnis ums Wiki: Das Modul hat sich geändert, im Wiki wird ein Weg für eine "Erweiterung/Modifikation" dokumentiert, die passt nicht mehr zum Modul, den Wiki Artikel korrigiert keiner.

moerte jetzt ist der Ball bei Dir, Du hast es gefunden, Du darfst es im Wiki korrigieren :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

moerte

Habe jetzt das userReading auf next_date geändert.
Da morgen die nächste Leerung ansteht Berichte ich natürlich ob das Problem damit verschwunden ist. Vielen Dank

uniqueck

Hallöchen zusammen. Ich bin aktuell noch im Umzugsstress daher weiß ich nicht wann ich dazu komme, mal dem Problemen nachzugehen, sofern sie sich als solche herausstellen. Des weiteren muss ich dazu erstmal meinen Notebook finden in den zig Kisten,aber ist ja bald Ostern.

Gruß Constantin

P.s. Wiki kann ich übernehmen, wenn es da nur um die falschen readings geht bei dem Anwendungsbeispiel TabletUI.

Gesendet von meinem ONEPLUS A3003 mit Tapatalk


nils_

viel spaß beim eier...... äääähm.... notebook suchen :D
viele Wege in FHEM es gibt!

moerte

Habe ja gestern das userReading geändert wie geschrieben von sek_is_back

datumHeuteMorgen(ReadingsVal("Abfall","next_date",""))


Also die Tonne dreht sich immer noch und das now Reading verschwindet dadurch auch nicht am abholtag.
Ist jetzt nicht so wild- kann damit leben.

Wünsche euch schöne Ostern

sek_is_back

#1166
Zitat von: moerte am 29 März 2018, 12:37:40
Habe ja gestern das userReading geändert wie geschrieben von sek_is_back

datumHeuteMorgen(ReadingsVal("Abfall","next_date",""))


Also die Tonne dreht sich immer noch und das now Reading verschwindet dadurch auch nicht am abholtag.
Ist jetzt nicht so wild- kann damit leben.

Wünsche euch schöne Ostern

ich weiß ja nicht wie es bei Dir heißt, evt musst Du Abfall gegen den Namen Deines Defs tauschen, dann sollte es klappen
datumHeuteMorgen(ReadingsVal("Abfall","next_date",""))

Also komplett copy&paste wird nicht funktionieren

ftui_datum {ReadingsVal("DEIN NAME","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("DEIN NAME","next_date","")) : "heute";},ftui_next {ReadingsVal("DEIN NAME","now_text","") eq "" ? ReadingsVal("DEIN NAME","next","") : ReadingsVal("DEIN NAME","now","")."_0";;}

moerte

#1167
Hey sek_is_back,

ja ich habe es schon angepasst gehabt.. mein Divice heist myABFALL und habe die userReading so:


ftui_datum {ReadingsVal("myABFALL","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myABFALL","next_date","")) : "heute";},ftui_next {ReadingsVal("myABFALL","now_text","") eq "" ? ReadingsVal("myABFALL","next","") : ReadingsVal("myABFALL","now","")."_0";;}


oder muss da wirlich der Name des DEF rein? jetzt bin ich am grübeln... siehe mal bitte mein Screenshot


sek_is_back

#1168
sieht für mich richtig aus, bei mir wechselt er auf die neue Tonne exakt um 09:00 Uhr. Hast Du die 99_myUtils.pm angelegt?
Bei mir sind die Termine von 00:00 - 09:00 Uhr eingetragen und nur in der Zeit sehe ich die aktuelle Tonne.
Wenn in den readings bei ftui_datum ein wert steht, sollte es funktionieren

moerte

Hey...
meine 99_myUtils.pm sieht so 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;

sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

sub datumHeuteMorgen($){
my $compareDate = shift;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$year += 1900; $mon += 1;
my $heute = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time+86400);
$year += 1900; $mon += 1;
my $morgen = sprintf('%02d.%02d.%04d', $mday, $mon, $year);
return "heute" if $compareDate eq $heute;
return "morgen" if $compareDate eq $morgen;
return $compareDate;
}

1;


ich habe exakt auch wie du den Termin der Tonnen von 00:00-09:00 angelegt.
Mhhhh - aber wie schon gesagt, es bricht mir jetzt nicht das Herz wenn die Tonne den ganzen tag dann in bewegung ist :D
bei ftui_datum steht bei mir auch die nächste Leerung da