Neues Modul für Abfallkalender ABFALL

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

Vorheriges Thema - Nächstes Thema

Bootscreen

#15
Hallo,

ich musste heute leider feststellen das es doch noch Probleme mit dem Modul gibt.
Erstmal meine Definition:
Internals:
   DEF        Muellabfuhr 86400
   INTERVAL   86400
   KALENDER   Muellabfuhr
   NAME       Muellabfuhr.Abfall
   NR         215
   STATE      Muellabfuhr_7
   TYPE       ABFALL
   Readings:
     2016-02-02 11:10:51   Muellabfuhr_datum 09.02.2016
     2016-02-02 11:10:51   Muellabfuhr_tage 7
     2016-02-02 11:10:51   Muellabfuhr_text Müllabfuhr
     2016-02-02 11:10:51   MuellabfuhrmitPapier_datum 15.02.2016
     2016-02-02 11:10:51   MuellabfuhrmitPapier_tage 13
     2016-02-02 11:10:51   MuellabfuhrmitPapier_text Müllabfuhr mit Papier
     2016-02-02 11:10:51   state           Muellabfuhr_7
Attributes:
   group      Müllabfuhr
   room       System
   webCmd     update


Undzwar gibt es den Muellabfuhr Termin am 09.02.2016 gar nicht. Der nächste Muellabfuhr Termin wäre erst am 29.02.2016. Hab auch schon das Modul aus deinem letztem Post im Einsatz. Wenn es dir hilft kann ich dir meine iCal URL per PM zukommen lassen.

//Nachtrag:
Und wie bekomme ich den Text des nächsten Termines in ein Label des FTUI? Steh da irgendwie auf dem Schlauch.
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

uniqueck

Ich schaue mir das mal an. Wäre nett wenn du mir die URL zur Verfügung stellen kannst. Da ich bei mir noch kein Problem festgestellt habe. Der nächste Termin hmm. Alles im state Reading unterzubringen ist halt irgendwie auch nicht so das ware wie ich finde. Es sei denn da hat jemand ne coole Idee. Was ich anbieten kann sind Readings in der Form next_text, next_datum und next_tage. Aber was wäre wenn zwei Sachen abgeholt werden?

Gesendet von meinem GT-N7100 mit Tapatalk

uniqueck

#17
Text als solches kannst du wie folgt in FTUI darstellen.


<div data-type="label" data-device="Muellabfuhr.Abfall" data-get="next_text"></div>



Natürlich erst wenn die Readings implementiert sind. Ansonsten kannst du aber heute schon jedes andere *_text Reading dafür nehmen.

Gesendet von meinem GT-N7100 mit Tapatalk

Bootscreen

Hab dir ne PM mit der URL geschickt.

Das mit Next wäre perfekt. Und bei mehreren Terminen am selben Tag könnte man die Texte ja mit einem Trenner aneinander hängen den man vllt auch händisch über ein Attribute anpassen könnte? Also so z.B.: next_text: Restmüll|Glas|Papier
und über "attr trenner ', ' " könnte man dann "Restmüll, Glas, Papier" draus machen, so wie man es gerade braucht.
Und next_datum, next_tage ist es ja egal, das ist ja dann nur eines.

//Edit:
Aber das heißt derzeit geht es noch nicht das Label dynamisch auf das nächst kommende anzupassen, oder?
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

uniqueck

Also bzgl. des Termins, der angeblich nicht ist.
Bei mir sagt auch das Kalender Modul, dass du ein Date am 09.02. mit der Muellabfuhr hast  ;)

Mach mal in FHEM:
get Muellabfuhr full modeUpcoming

Und postet hier was da zurückkommt.
Mit den Readings fange ich heute mal an und schaue wie weit ich komme.
Demnächst muss ich das ja so oder so nochmal überarbeiten, aufgrund des anstehenden Updates des 57_Calendar Moduls.

Gruß Constantin

Bootscreen

Ok, scheinbar ist es kein Problem von deinem Modul sondern vom Kalender Modul.
xxx known upcoming                     09.02.2016 00:00:00-10.02.2016 00:00:00 Müllabfuhr
xxx known upcoming                     15.02.2016 00:00:00-16.02.2016 00:00:00 Müllabfuhr mit Papier
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

chris1284

das ist ein bekanntes problem mit ganztages-serientemrinen im calendar. stell dein müll nicht gantägig ein sondern von zb 1:00 bis 23:00 uhr dann gibt es diese geistertermine nicht mehr.
oder du wartest bis die neue version von calendar am 07.02. kommt (dann gehen aber weder calview noch dieses modul mehr  ;D)


Bootscreen

@Chris1284: danke =)
Hab mir mal die Beta angeschaut und damit ist das Problem behoben.

Das Abfallmodul ging zwar noch aber die Ausgabe war murks da er nun etliche künftige Termine bekommt. Hab erstmal eine Lösung gefunden, mag aber bessere Lösungen geben. Bin durch die CallFN Zeile nicht ganz durchgestiegen wie ich die anpasse, also hab ich einfach den Return gesplittet und nur den ersten Teil genommen.
Falls intressant hier mein Code:
folgendes nach Zeile 169 einfügen:
if (index($terminstart, "\n") != -1)
{
my @terminstart2 = split(/\n/,$terminstart);
$terminstart = $terminstart2[0];
}
if (index($termintext, "\n") != -1)
{
my @termintext2 = split(/\n/,$termintext);
$termintext = $termintext2[0];
}
Gruß
Oliver

FHEM 5.7 Hardware:
Raspberry PI B+ | HomeMatic USB 2 | 433Mhz Sender (pilight) | nanoCUL (433Mhz)

moonsorrox

ich habe auch mal eine Frage zu den Readings, bei mir wird ein Reading dargestellt das für Restmüll mit Datum und den Tagen. Aber ich habe noch ein 2. Eintrag im Kalender, muss der einen entsprechenden Namen haben oder ist es dem Modul egal wie der heißt..?
Heißt bei mir "Gelber Sack, Leichtverpackungen"

List
Internals:
   CFGFN      ./FHEM/System.cfg
   DEF        ical url https://calendar.google.com/calendar/ical/gk50jgcal3c4fmb7ngqttddkoo%40group.calendar.google.com/private-5aba57ab8b3b9c57c9aa60267c8c3f3a/basic.ics
   NAME       MuellKalender
   NR         2734
   STATE      Active
   TYPE       Calendar
   Readings:
     2016-02-03 12:44:59   all             1adem75oa4i3n2ouothc396560googlecom;cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   calname         Abfall
     2016-02-03 12:44:59   lastCheck       2016-02-03 12:44:59
     2016-02-03 12:44:59   lastUpdate      2016-02-03 12:44:59
     2016-02-03 12:44:59   modeAlarm
     2016-02-03 12:44:59   modeAlarmOrStart cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   modeAlarmed
     2016-02-03 12:44:59   modeChanged
     2016-02-03 12:44:59   modeEnd
     2016-02-03 12:44:59   modeEnded
     2016-02-03 12:44:59   modeStart       cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   modeStarted
     2016-02-03 12:44:59   modeUpcoming    1adem75oa4i3n2ouothc396560googlecom
     2016-02-03 12:44:59   stateChanged
     2016-02-03 12:44:59   stateDeleted
     2016-02-03 12:44:59   stateNew
     2016-02-03 12:44:59   stateUpdated
   Fhem:
     interval   3600
     lastCheck  2016-02-03 12:44:59
     lastChkTs  1454499899.57677
     lastUpdate 2016-02-03 12:44:59
     lstUpdtTs  1454499899.30266
     nextCheck  2016-02-03 13:44:59
     nextChkTs  1454503499.30266
     nextUpdate 2016-02-03 13:44:59
     nxtUpdtTs  1454503499.30266
     type       url
     url        https://calendar.google.com/calendar/ical/gk50jgcal3c4fmb7ngqttddkoo%40group.calendar.google.com/private-5aba57ab8b3b9c57c9aa60267c8c3f3a/basic.ics
Attributes:
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

uniqueck

#24

Kann es sein das der Termin schon läuft? Also quasi modeStarted? Weil ich übernehme nur modeUpcoming Termine in die Readings. Wenn bei den modeStarted auch Interesse besteht würde ich das noch ändern.
Zitat von: moonsorrox am 03 Februar 2016, 13:10:03
ich habe auch mal eine Frage zu den Readings, bei mir wird ein Reading dargestellt das für Restmüll mit Datum und den Tagen. Aber ich habe noch ein 2. Eintrag im Kalender, muss der einen entsprechenden Namen haben oder ist es dem Modul egal wie der heißt..?
Heißt bei mir "Gelber Sack, Leichtverpackungen"

List
Internals:
   CFGFN      ./FHEM/System.cfg
   DEF        ical url https://calendar.google.com/calendar/ical/gk50jgcal3c4fmb7ngqttddkoo%40group.calendar.google.com/private-5aba57ab8b3b9c57c9aa60267c8c3f3a/basic.ics
   NAME       MuellKalender
   NR         2734
   STATE      Active
   TYPE       Calendar
   Readings:
     2016-02-03 12:44:59   all             1adem75oa4i3n2ouothc396560googlecom;cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   calname         Abfall
     2016-02-03 12:44:59   lastCheck       2016-02-03 12:44:59
     2016-02-03 12:44:59   lastUpdate      2016-02-03 12:44:59
     2016-02-03 12:44:59   modeAlarm
     2016-02-03 12:44:59   modeAlarmOrStart cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   modeAlarmed
     2016-02-03 12:44:59   modeChanged
     2016-02-03 12:44:59   modeEnd
     2016-02-03 12:44:59   modeEnded
     2016-02-03 12:44:59   modeStart       cl7bgei6or2r4tt28ue1jcrhscgooglecom
     2016-02-03 12:44:59   modeStarted
     2016-02-03 12:44:59   modeUpcoming    1adem75oa4i3n2ouothc396560googlecom
     2016-02-03 12:44:59   stateChanged
     2016-02-03 12:44:59   stateDeleted
     2016-02-03 12:44:59   stateNew
     2016-02-03 12:44:59   stateUpdated
   Fhem:
     interval   3600
     lastCheck  2016-02-03 12:44:59
     lastChkTs  1454499899.57677
     lastUpdate 2016-02-03 12:44:59
     lstUpdtTs  1454499899.30266
     nextCheck  2016-02-03 13:44:59
     nextChkTs  1454503499.30266
     nextUpdate 2016-02-03 13:44:59
     nxtUpdtTs  1454503499.30266
     type       url
     url        https://calendar.google.com/calendar/ical/gk50jgcal3c4fmb7ngqttddkoo%40group.calendar.google.com/private-5aba57ab8b3b9c57c9aa60267c8c3f3a/basic.ics
Attributes:



Gesendet von meinem GT-N7100 mit Tapatalk

uniqueck

Zitat von: Bootscreen am 03 Februar 2016, 09:54:49
@Chris1284: danke =)
Hab mir mal die Beta angeschaut und damit ist das Problem behoben.

Das Abfallmodul ging zwar noch aber die Ausgabe war murks da er nun etliche künftige Termine bekommt. Hab erstmal eine Lösung gefunden, mag aber bessere Lösungen geben. Bin durch die CallFN Zeile nicht ganz durchgestiegen wie ich die anpasse, also hab ich einfach den Return gesplittet und nur den ersten Teil genommen.
Falls intressant hier mein Code:
folgendes nach Zeile 169 einfügen:
if (index($terminstart, "\n") != -1)
{
my @terminstart2 = split(/\n/,$terminstart);
$terminstart = $terminstart2[0];
}
if (index($termintext, "\n") != -1)
{
my @termintext2 = split(/\n/,$termintext);
$termintext = $termintext2[0];
}

Da schaue ich mir heute abend mal an. Ich hoffe ich bin nicht zu platt wenn ich nachher zu Hause bin.

Gesendet von meinem GT-N7100 mit Tapatalk


moonsorrox

Also heute war ja der Termin, aber der nächste ist ja nächste Woche und der sollte doch angezeigt werden oder wird der noch nicht angezeigt..?
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Warlock_2016

#27
Hallo Zusammen

super Idee mit dem Modul.

Wie installiert man das Modul?

Heisst es einfach die Datei runterladen ? aber wohin speichern?

Wenn ich Version eingebe, dann kann ich sehen, dass es das Modul schon gibt?

Gruss, Markus

kvo1

Install. Siehe Post 1 und 8 , aber du musst zuvor einen Kalender mit dem Kalendar Modul einrichten.
RPi1: mit CUL: HM-CC-RT-DN,HM-ES-PMSw1-Pl,HM-LC-BL1-FM,HM-LC-Bl1PBU-FM,HM-LC-SW1-PL2,HM-SCI-3-FM,HM-SEC-SC-2,KFM-Sensor
RPi2: Viessmann(optolink) mit 99_VCONTROL.pm,
Cubietruck: Wheezy / Apache / Owncloud
Cubietruck: Armbian(Jessie) / fhem 5.7 / LMS 7.9
RPi3: (Test) mit 7" Touch  &  HM-MOD-RPI-PCB

Warlock_2016

#29
Danke, das Modul Kalender habe ich bereits installiert.

Muss ich den Anhang einfach runterladen?

Wohin wir dieser kopiert?

Mein Kalendar scheisst bereits Abfall. Was ist mit <calendername> gemeint.

define myAbfall ABFALL <calendername> <intervall>

Wäre es dann: define myAbfall ABFALL ABFALL 3600 ?


Sorry bin Einsteiger  8)

Markus