FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Larusso am 10 Januar 2018, 21:29:28

Titel: [gelöst]Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 10 Januar 2018, 21:29:28
Hallo zusammen,

ich habe mir das Abfallmodul eingerichtet, mein google Calender wird auch eingelesen und die Mülltermine in den readings angezeigt. Nun wollte ich eine tts Ausgabe für den Vortag anlegen

list:
Internals:
   DEF        ([?18:00 - 21:00] and [Abfall:next_days] == 1 ) ( set MyTTS volume 100, set MyTTS tts Achtung denkt bitte daran Morgen wird [myABFALL:next_text] abgeholt)
   NAME       di_AbholungAnsage1
   NR         220
   NTFY_ORDER 50-di_AbholungAnsage1
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2018-01-10 21:12:45   cmd             0
     2018-01-10 21:12:45   mode            enabled
     2018-01-10 21:12:45   state           initialized
     2018-01-10 21:12:45   timer_01_c01    11.01.2018 18:00:00
     2018-01-10 21:12:45   timer_02_c01    11.01.2018 21:00:00
   Regex:
   condition:
     0          DOIF_time($hash,0,1,$wday,$hms) and ReadingValDoIf($hash,'Abfall','next_days') == 1
   days:
   devices:
     0           Abfall
     all         Abfall
   do:
     0:
       0           set MyTTS volume 100, set MyTTS tts Achtung denkt bitte daran Morgen wird [myABFALL:next_text] abgeholt
     1:
   helper:
     DOIF_Readings_events
     DOIF_eventas
     globalinit 1
     last_timer 2
     sleeptimer -1
   interval:
     0          -1
     1          0
   itimer:
   localtime:
     0          1515690000
     1          1515700800
   readings:
     0           Abfall:next_days
     all         Abfall:next_days
   realtime:
     0          18:00:00
     1          21:00:00
   time:
     0          18:00:00
     1          21:00:00
   timeCond:
     0          0
     1          0
   timer:
     0          0
     1          0
   triggertime:
     1515690000:
       localtime  1515690000
       hash:
     1515700800:
       localtime  1515700800
       hash:
   uiState:
   uiTable:
Attributes:
   alias      Abfallterminansage Vortag
   checkReadingEvent 1
   do         always
   event-on-update-reading 1
   room       Abfall


Die def sieht so aus:
([?18:00 - 21:00] and [Abfall:next_days] == 1 ) ( set MyTTS volume 100, set MyTTS tts Achtung denkt bitte daran Morgen wird [myABFALL:next_text] abgeholt)

iergendwie bekomme ich in dem Zeitfenster keine Ausgabe, das selbe Problem habe ich mit dem DOIF für die Tag der Müllabfuhr

Internals:
   DEF        ([6:45] and [Abfall:now_text] ne "" and [Abfall:now_text] ne "0") ( set MyTTS volume 90, set MyTTS tts guten Morgen Familie Völker schnell den Müll noch rausstellen Es wird gleich [myABFALL:now_text] abgeholt)
   NAME       di_AbholungAnsage2
   NR         226
   NTFY_ORDER 50-di_AbholungAnsage2
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2018-01-10 21:27:18   cmd             0
     2018-01-10 21:27:18   mode            enabled
     2018-01-10 21:27:18   state           initialized
     2018-01-10 21:27:18   timer_01_c01    11.01.2018 06:45:00
   Regex:
   condition:
     0          DOIF_time_once($hash,0,$wday) and ReadingValDoIf($hash,'Abfall','now_text') ne "" and ReadingValDoIf($hash,'Abfall','now_text') ne "0"
   days:
   devices:
     0           Abfall
     all         Abfall
   do:
     0:
       0           set MyTTS volume 90, set MyTTS tts guten Morgen Familie Völker schnell den Müll noch rausstellen Es wird gleich [myABFALL:now_text] abgeholt
     1:
   helper:
     DOIF_Readings_events
     DOIF_eventas
     globalinit 1
     last_timer 1
     sleeptimer -1
   itimer:
   localtime:
     0          1515649500
   readings:
     0           Abfall:now_text
     all         Abfall:now_text
   realtime:
     0          06:45:00
   time:
     0          6:45
   timeCond:
     0          0
   timer:
     0          0
   timers:
     0           0
   triggertime:
     1515649500:
       localtime  1515649500
       hash:
   uiState:
   uiTable:
Attributes:
   alias      Abfallterminansage am Ereignisstag
   do         always
   room       Abfall


auch eine Nachricht auf Telegramm wird nicht abgesetzt:

Internals:
   DEF        [21:25] and [ABFALL:next_days] == 1) ( set Telegram msg 'Morgen wird [myABFALL:next_text] abgeholt')
   NAME       Abfall_Telegram_Nachricht
   NR         218
   NTFY_ORDER 50-Abfall_Telegram_Nachricht
   REGEXP     [21:25]
   STATE      active
   TYPE       notify
   READINGS:
     2018-01-10 21:22:35   state           active
Attributes:
   room       Abfall


Wo könnte der Fehler liegen?

:-[
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Damian am 10 Januar 2018, 21:44:59
Zitat von: Larusso am 10 Januar 2018, 21:29:28

Internals:
   DEF        [21:25] and [ABFALL:next_days] == 1) ( set Telegram msg 'Morgen wird [myABFALL:next_text] abgeholt')
   NAME       Abfall_Telegram_Nachricht
   NR         218
   NTFY_ORDER 50-Abfall_Telegram_Nachricht
   REGEXP     [21:25]
   STATE      active
   TYPE       notify
   READINGS:
     2018-01-10 21:22:35   state           active
Attributes:
   room       Abfall


Wo könnte der Fehler liegen?

:-[

notify ist kein DOIF ;)
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 05:06:13
Das letzte ist ja auch ein extra notify für eine Telegram Nachricht.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Ellert am 11 Januar 2018, 06:12:29
Probier mal {([Device:Reading])}
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 06:54:17
Entschuldigung für die blöde Frage, wo soll ich das probieren?
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: tiroso am 11 Januar 2018, 07:00:31
Erstmal: ich glaube am Anfang in deinem DEF Part fehlt eine offene Klammer.
Zweitens versuch mal Telegramm die Nachricht ohne quotes zu übergeben
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 07:03:06
Hallo tiriso, das Telegramm notify ist nicht so wichtig das war nur eine Info das dort auch keine Meldung aus geht. Ich möchte die doif Geschichte mit der tts Ausgabe für den abfallkalender ans laufen bekommen. Trotzdem danke für den Hinweis ich werde mir das ansehen.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Ellert am 11 Januar 2018, 07:04:06
Zitat von: Larusso am 11 Januar 2018, 06:54:17
Entschuldigung für die blöde Frage, wo soll ich das probieren?
Im set-Befehl.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 07:16:22
Ich stehe immer noch auf dem Schlauch, das ist ja kein Attribut was soll ich genau machen, bin blutiger Anfänger und hab das nach einem Tutorial angelegt.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: tiroso am 11 Januar 2018, 07:32:13
Mach auch mal ein List von "myAbfall"
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 07:35:26


Internals:
   DEF        AbfallGoogleCalender
   KALENDER   AbfallGoogleCalender
   NAME       myABFALL
   NOTIFYDEV  AbfallGoogleCalender
   NR         216
   NTFY_ORDER 50-myABFALL
   STATE      BioTonne in 7 Tag(en)
   TYPE       ABFALL
   READINGS:
     2018-01-11 07:16:32   BioTonne_date   18.01.2018
     2018-01-11 07:16:32   BioTonne_days   7
     2018-01-11 07:16:32   BioTonne_description
     2018-01-11 07:16:32   BioTonne_location
     2018-01-11 07:16:32   BioTonne_text   BioTonne
     2018-01-11 07:16:32   BioTonne_uid    4fas5e42c2f5p5qvapi3mhb3n3googlecom
     2018-01-11 07:16:32   BioTonne_weekday Donnerstag
     2018-01-11 07:16:32   PapierTonne_date 07.02.2018
     2018-01-11 07:16:32   PapierTonne_days 27
     2018-01-11 07:16:32   PapierTonne_description
     2018-01-11 07:16:32   PapierTonne_location
     2018-01-11 07:16:32   PapierTonne_text PapierTonne
     2018-01-11 07:16:32   PapierTonne_uid 6l165k4rv1tdipqjldir3m1fqfgooglecom
     2018-01-11 07:16:32   PapierTonne_weekday Mittwoch
     2018-01-11 07:16:32   gelberSack_date 11.01.2018
     2018-01-11 07:16:32   gelberSack_days 0
     2018-01-11 07:16:32   gelberSack_description
     2018-01-11 07:16:32   gelberSack_location
     2018-01-11 07:16:32   gelberSack_pickups 1
     2018-01-11 07:16:32   gelberSack_text gelberSack
     2018-01-11 07:16:32   gelberSack_uid  77b9ukqturc1c0bh73oo0nn9vdgooglecom
     2018-01-11 07:16:32   gelberSack_weekday Donnerstag
     2018-01-11 07:16:32   next            BioTonne_7
     2018-01-11 07:16:32   next_date       18.01.2018
     2018-01-11 07:16:32   next_days       7
     2018-01-11 07:16:32   next_description
     2018-01-11 07:16:32   next_location   
     2018-01-11 07:16:32   next_text       BioTonne
     2018-01-11 07:16:32   next_weekday    Donnerstag
     2018-01-11 07:16:32   now             gelberSack|schwarzeTonne
     2018-01-11 07:16:32   now_date        11.01.2018
     2018-01-11 07:16:32   now_description
     2018-01-11 07:16:32   now_location   
     2018-01-11 07:16:32   now_text        gelberSack und schwarze Tonne
     2018-01-11 07:16:32   now_weekday     Donnerstag
     2018-01-11 07:16:32   schwarzeTonne_date 11.01.2018
     2018-01-11 07:16:32   schwarzeTonne_days 0
     2018-01-11 07:16:32   schwarzeTonne_description
     2018-01-11 07:16:32   schwarzeTonne_location
     2018-01-11 07:16:32   schwarzeTonne_text schwarze Tonne
     2018-01-11 07:16:32   schwarzeTonne_uid 54bn9vt5o3gju2qgihc3je2qovgooglecom
     2018-01-11 07:16:32   schwarzeTonne_weekday Donnerstag
     2018-01-11 07:16:32   state           7
Attributes:
   calendarname_praefix 0
   date_style date
   delimiter_reading |
   delimiter_text_reading und
   fp_Erdgeschoss 197,215,0,myABFALL,
   group      Abfall
   room       Abfall
   stateFormat next_text in next_days Tag(en)
   userReadings ftui_datum {ReadingsVal("myABFALL","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myABFALL","next_datum","")) : "heute"
   weekday_mapping Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: tiroso am 11 Januar 2018, 07:47:01
Dein Device heißt "myABFALL". Im DOIF fragst du aber die ganze Zeit nach "ABFALL" oder "Abfall"(Bedingung)
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: nils_ am 11 Januar 2018, 11:13:35
Zitat von: Larusso am 11 Januar 2018, 05:06:13
Das letzte ist ja auch ein extra notify für eine Telegram Nachricht.

die syntax von notify ist trotzdem eine andere und wird so nie funktionieren...
ob wichtig oder nicht
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Ellert am 11 Januar 2018, 11:26:11
Zitat von: Larusso am 11 Januar 2018, 07:16:22
Ich stehe immer noch auf dem Schlauch, das ist ja kein Attribut was soll ich genau machen, bin blutiger Anfänger und hab das nach einem Tutorial angelegt.

Dann würde ich Dir empfehlen, Dir die Syntax des DOIF in der deutschsprachigen Befehlereferenz anzusehen, weiterhin die Informationen zum set-Befehl, notify, Text2Speech, Calendar, Telegram.

Zu DOIF solltest Du die wenigsten die hier beschriebenen Abschnitte kennen: https://wiki.fhem.de/wiki/DOIF/Einsteigerleitfaden,_Grundfunktionen_und_Erl%C3%A4uterungen#DOIF-Light_f.C3.BCr_Einsteiger

Wenn Du eine Anleitung benutzt, die nicht funktioniert, würde ich den Ersteller befragen.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 11:56:41
Ok, vielen Dank für die vielen Infos, das notify habe ich gelöscht und ein doif mit der selben Definition für die Telegram msg erstellt, dies teste ich nachher. Desweiteren habe ich Abfall durch myABFALL in den doif Definitionen ersetzt das sollte dazu führen das das doif jetzt auch die readings aus dem device myABFALL liest, ich hoffe das funktioniert und werde nach dem Test nochmal dazu schreiben, vielen Dank nochmal an alle.
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: piet_pit am 11 Januar 2018, 13:53:04
Hallo,

kannst du deinen überabeiteten Code einmal posten, wäre für mich auch von Interesse, arbeite an einem ähnlichen Thema und komme nicht so richtig voran 8)

VG
Pit
Titel: Antw:Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 15:04:51
juhu.............jetzt funktioniert das DOIF mit myABFALL, die Tücke steckt halt im Detail, war nur der falsche Devicename, klar das er dann keine readings bekommt..........

@piet_pit: ich stelle dir hier mal meine config rein für das Abfallmodul und die DOIF´s mit TTS Ausgabe:

define myABFALL ABFALL AbfallGoogleCalender
attr myABFALL calendarname_praefix 0
attr myABFALL date_style date
attr myABFALL delimiter_reading |
attr myABFALL delimiter_text_reading und
attr myABFALL fp_Erdgeschoss 197,215,0,myABFALL,
attr myABFALL group Abfall
attr myABFALL room Abfall
attr myABFALL stateFormat next_text in next_days Tag(en)
attr myABFALL userReadings ftui_datum {ReadingsVal("myABFALL","now_text","") eq "" ? datumHeuteMorgen(ReadingsVal("myABFALL","next_datum","")) : "heute"
attr myABFALL weekday_mapping Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag

#Sprachausgabe Mülltonne am Vortag
define di_AbholungAnsage1 DOIF ([?18:00 - 20:00] and [myABFALL:next_days] == 1 ) ( set MyTTS volume 100, set MyTTS tts Achtung denkt bitte daran Morgen wird [myABFALL:next_text] abgeholt)
attr di_AbholungAnsage1 alias Abfallterminansage Vortag
attr di_AbholungAnsage1 checkReadingEvent 1
attr di_AbholungAnsage1 do always
attr di_AbholungAnsage1 room Abfall

#Sprachausgabe Mülltonne am Ereignisstag
define di_AbholungAnsage2 DOIF ([?06:45 - 07:30] and [myABFALL:now_text] ne "" and [myABFALL:now_text] ne "0") ( set MyTTS volume 90, set MyTTS tts guten Morgen Familie Völker schnell den Müll noch rausstellen Es wird gleich [myABFALL:now_text] abgeholt)
attr di_AbholungAnsage2 alias Abfallterminansage am Ereignisstag
attr di_AbholungAnsage2 do always
attr di_AbholungAnsage2 room Abfall

#Telegramm Nachricht für Mülltonne am Vortag
define Abfall_Telegramm DOIF ([?19:00 - 19:05] and [myABFALL:next_days] == 1) ( set Telegram msg Morgen wird [myABFALL:next_text] abgeholt )
attr Abfall_Telegramm room Abfall


Die Daten des Kalenders (meine Gemeinde hat leider keinen Müllplan als ical) habe ich in meinen Google Kalender eingetragen und frage den dann in FHEM immer per URL ab, somit ist dieser auch immer aktuell und ich muss keine ical datei in fhem ablegen. Sollten an einem Tag mehrere Mülltonnen abgeholt werden dann setzt die Sprachausgabe ein "und" zwischen die Tonnen.
Titel: Antw:[gelöst]Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: piet_pit am 11 Januar 2018, 15:08:36
Hallo,

prima und danke... :)

VG
Pit
Titel: Antw:[gelöst]Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: Larusso am 11 Januar 2018, 15:57:37
Hallo piet_pit,

kannst du bitte eine Rückmeldung geben wenn das bei dir auch so funktionieren sollte, danke.
Titel: Antw:[gelöst]Abfallkalender DOIF keine Ausgabe in tts
Beitrag von: FloriO am 13 November 2018, 17:31:21
Hallo zusammen,

ich hänge jetzt seit einer ganzen Zeit an dieser Geschichte und es hat auch komplett nach den Vorgaben hier im Thread nicht geklappt. Ich habe dann

Zitat von: Larusso am 11 Januar 2018, 15:04:51
juhu.............jetzt funktioniert das DOIF mit myABFALL, die Tücke steckt halt im Detail, war nur der falsche Devicename, klar das er dann keine readings bekommt..........

@piet_pit: ich stelle dir hier mal meine config rein für das Abfallmodul und die DOIF´s mit TTS Ausgabe:

#Sprachausgabe Mülltonne am Ereignisstag
define di_AbholungAnsage2 DOIF ([?06:45 - 07:30] and [myABFALL:now_text] ne "" and [myABFALL:now_text] ne "0") ( set MyTTS volume 90, set MyTTS tts guten Morgen Familie Völker schnell den Müll noch rausstellen Es wird gleich [myABFALL:now_text] abgeholt)


wie folgt angepasst:
#Sprachausgabe Mülltonne am Ereignisstag
define di_AbholungAnsage2 DOIF ([?06:45 - 07:30] and [myABFALL:now_text] ne "" and [myABFALL:now_text] ne "0") ( set MyTTS volume 90, set MyTTS tts guten Morgen Familie Völker schnell den Müll noch rausstellen Es wird gleich ([myABFALL:next_text]) abgeholt)


Damit geht auch bei uns der Müll rechtzeitig raus. ;)