Hallo,
ich habe über ein AMAD Device einen Wecker, der mir früh beim Wecken schon verschiedene Infos mitteilt z.bsp die Aussentemperatur und die Anzahl der heutuge Termine. Ich hätte gerne das er mir auch ansagt was das für Termine sind.
ich bilde mir ein schonmal was davon gelesen zu haben, aber ich habe den ganzen tag danach gesucht und nichts gefunden. Hat das hier schon einer mal gemacht oder davon gelesen wie das gehen könnte?
Danke und viele Grüße
Swen
Du solltest erstmal verraten was für ein Device Dir Termine liefert. Am besten ein list davon machen dann kann man Mal schauen.
Hi,
mit Text2Speech lasse ich mir den Inhalt der Abfalltermine ansagen:
set MyTTS volume 30, set MyTTS tts Morgen wird [Abfall:next_text] abgeholt
Gruß Otto
Beim Wecken bin ich nich nicht aufnahmefähig. Mir liest die Squeezebox die Termine vor, wenn der erste Kaffee gekocht wird...
also ich habe eine kalenderelement
Internals:
CFGFN
DEF ical url https://calendar.google.com
NAME CalLipp
NOTIFYDEV global
NR 7974
NTFY_ORDER 50-Lippmann
STATE triggered
TYPE Calendar
Readings:
2017-03-13 11:37:22 lastUpdate 2017-03-13 11:36:29
2017-03-13 10:31:27 modeAlarm
2017-03-13 19:15:00 modeAlarmOrStart
2017-03-13 10:31:27 modeAlarmed
2017-03-13 19:00:00 modeChanged evbkjijlv3toc11e60bsl9b0m8googlecom
2017-03-13 19:15:00
2017-03-13 11:37:22 nextUpdate 2017-03-14 12:36:29
2017-03-13 19:15:00 nextWakeup 2017-03-14 08:15:00
2017-03-13 19:15:00 state triggered
Attributes:
group Kalender
hideLaterThan 3d
hideOlderThan 1d
room Tests
und ein Calview
Internals:
CFGFN
DEF CalLipp 1
INTERVAL 43200
KALENDER CalLipp
NAME CalLippView
NR 8110
NTFY_ORDER 50-myCalView
STATE t: 8 td: 0 tm: 3
TYPE CALVIEW
Readings:
2017-03-13 19:15:00 c-term 8
2017-03-13 19:15:00 c-today 0
2017-03-13 19:15:00 c-tomorrow 3
2017-03-13 19:15:00 state t: 8 td: 0 tm: 3
2017-03-13 19:15:00 t_001_bdate 14.03.2017
2017-03-13 19:15:00 t_001_btime 08:30:00
2017-03-13 19:15:00 t_001_daysleft 1
2017-03-13 19:15:00 t_001_daysleftLong morgen
2017-03-13 19:15:00 t_001_edate 14.03.2017
2017-03-13 19:15:00 t_001_etime 10:00:00
2017-03-13 19:15:00 t_001_mode next
2017-03-13 19:15:00 t_001_source CalLipp
2017-03-13 19:15:00 t_001_summary Reguläre Teambesprechung Sozialdienst
2017-03-13 19:15:00 t_002_bdate 14.03.2017
2017-03-13 19:15:00 t_002_btime 13:00:00
2017-03-13 19:15:00 t_002_daysleft 1
2017-03-13 19:15:00 t_002_daysleftLong morgen
2017-03-13 19:15:00 t_002_edate 14.03.2017
2017-03-13 19:15:00 t_002_etime 13:15:00
2017-03-13 19:15:00 t_002_location Telefon
2017-03-13 19:15:00 t_002_mode next
2017-03-13 19:15:00 t_002_source CalLipp
2017-03-13 19:15:00 t_002_summary Vorbesprechung SuS Termin
2017-03-13 19:15:00 t_003_bdate 14.03.2017
2017-03-13 19:15:00 t_003_btime 13:30:00
2017-03-13 19:15:00 t_003_daysleft 1
2017-03-13 19:15:00 t_003_daysleftLong morgen
2017-03-13 19:15:00 t_003_description Hallo
2017-03-13 19:15:00 t_003_edate 14.03.2017
2017-03-13 19:15:00 t_003_etime 15:00:00
2017-03-13 19:15:00 t_003_location 06221/ / OCS
2017-03-13 19:15:00 t_003_mode next
2017-03-13 19:15:00 t_003_source CalLipp
2017-03-13 19:15:00 t_003_summary SuS Teambesprechung 2017
2017-03-13 19:15:00 t_004_bdate 15.03.2017
2017-03-13 19:15:00 t_004_btime 00:00:00
2017-03-13 19:15:00 t_004_daysleft 2
2017-03-13 19:15:00 t_004_daysleftLong in 2 Tagen
2017-03-13 19:15:00 t_004_edate 16.03.2017
2017-03-13 19:15:00 t_004_etime 00:00:00
2017-03-13 19:15:00 t_004_mode next
2017-03-13 19:15:00 t_004_source CalLipp
2017-03-13 19:15:00 t_004_summary Geld
2017-03-13 19:15:00 t_005_bdate 15.03.2017
2017-03-13 19:15:00 t_005_btime 21:00:00
2017-03-13 19:15:00 t_005_daysleft 2
2017-03-13 19:15:00 t_005_daysleftLong in 2 Tagen
2017-03-13 19:15:00 t_005_edate 15.03.2017
2017-03-13 19:15:00 t_005_etime 21:15:00
2017-03-13 19:15:00 t_005_mode next
2017-03-13 19:15:00 t_005_source CalLipp
2017-03-13 19:15:00 t_005_summary KWFSR044 Umzug
2017-03-13 19:15:00 t_006_bdate 16.03.2017
2017-03-13 19:15:00 t_006_btime 06:00:00
2017-03-13 19:15:00 t_006_daysleft 3
2017-03-13 19:15:00 t_006_daysleftLong in 3 Tagen
2017-03-13 19:15:00 t_006_description Leerung Gelbe Tonne
2017-03-13 19:15:00 t_006_edate 16.03.2017
2017-03-13 19:15:00 t_006_etime 07:00:00
2017-03-13 19:15:00 t_006_location Gera
2017-03-13 19:15:00 t_006_mode next
2017-03-13 19:15:00 t_006_source CalLipp
2017-03-13 19:15:00 t_006_summary Leerung Gelbe Tonne
2017-03-13 19:15:00 t_007_bdate 16.03.2017
2017-03-13 19:15:00 t_007_btime 09:00:00
2017-03-13 19:15:00 t_007_daysleft 3
2017-03-13 19:15:00 t_007_daysleftLong in 3 Tagen
2017-03-13 19:15:00 t_007_description
2017-03-13 19:15:00 t_007_edate 16.03.2017
2017-03-13 19:15:00 t_007_etime 09:30:00
2017-03-13 19:15:00 t_007_location Raum 001
2017-03-13 19:15:00 t_007_mode next
2017-03-13 19:15:00 t_007_source CalLipp
2017-03-13 19:15:00 t_007_summary Teambesprechung
2017-03-13 19:15:00 t_008_bdate 16.03.2017
2017-03-13 19:15:00 t_008_btime 09:00:00
2017-03-13 19:15:00 t_008_daysleft 3
2017-03-13 19:15:00 t_008_daysleftLong in 3 Tagen
2017-03-13 19:15:00 t_008_description Lieb
2017-03-13 19:15:00 t_008_edate 16.03.2017
2017-03-13 19:15:00 t_008_etime 10:00:00
2017-03-13 19:15:00 t_008_location Besprechungsraum IT
2017-03-13 19:15:00 t_008_mode next
2017-03-13 19:15:00 t_008_source CalLipp
2017-03-13 19:15:00 t_008_summary Teambesprechung
2017-03-13 19:15:00 tomorrow_001_bdate morgen
2017-03-13 19:15:00 tomorrow_001_btime 08:30:00
2017-03-13 19:15:00 tomorrow_001_daysleft 1
2017-03-13 19:15:00 tomorrow_001_daysleftLong morgen
2017-03-13 19:15:00 tomorrow_001_edate 14.03.2017
2017-03-13 19:15:00 tomorrow_001_etime 10:00:00
2017-03-13 19:15:00 tomorrow_001_mode next
2017-03-13 19:15:00 tomorrow_001_source CalLipp
2017-03-13 19:15:00 tomorrow_001_summary Reguläre Teambesprechung Sozialdienst
2017-03-13 19:15:00 tomorrow_002_bdate morgen
2017-03-13 19:15:00 tomorrow_002_btime 13:00:00
2017-03-13 19:15:00 tomorrow_002_daysleft 1
2017-03-13 19:15:00 tomorrow_002_daysleftLong morgen
2017-03-13 19:15:00 tomorrow_002_edate 14.03.2017
2017-03-13 19:15:00 tomorrow_002_etime 13:15:00
2017-03-13 19:15:00 tomorrow_002_location Telefon
2017-03-13 19:15:00 tomorrow_002_mode next
2017-03-13 19:15:00 tomorrow_002_source CalLipp
2017-03-13 19:15:00 tomorrow_002_summary Vorbesprechung SuS Termin
2017-03-13 19:15:00 tomorrow_003_bdate morgen
2017-03-13 19:15:00 tomorrow_003_btime 13:30:00
2017-03-13 19:15:00 tomorrow_003_daysleft 1
2017-03-13 19:15:00 tomorrow_003_daysleftLong morgen
2017-03-13 19:15:00 tomorrow_003_description Hallo
2017-03-13 19:15:00 tomorrow_003_edate 14.03.2017
2017-03-13 19:15:00 tomorrow_003_etime 15:00:00
2017-03-13 19:15:00 tomorrow_003_location 06221 / OCS
2017-03-13 19:15:00 tomorrow_003_mode next
2017-03-13 19:15:00 tomorrow_003_source CalLipp
2017-03-13 19:15:00 tomorrow_003_summary SuS Teambesprechung 2017
Attributes:
group Kalender
maxreadings 10
modes next
room Tests
Also im calview listr von oben ist jetzt kein today wert mehr vorhande, aber vom prinzip soll er vorlesen today_001_btime, today_001_summary und dann weiter mit 002 und 003 je nachdem wieviel termine halt da sind.
Zitat von: KernSani am 13 März 2017, 19:30:50
Beim Wecken bin ich nich nicht aufnahmefähig. Mir liest die Squeezebox die Termine vor, wenn der erste Kaffee gekocht wird...
Und wie machst du es da?
Meine sub als Anregung:
sub myUtils_readCal() {
my $i;
my $modtext = "Deine heutigen Termine sind ";
for($i= 1;$i<= ReadingsVal("AbfallKalView","c-today", 0);$i++){
if ($i == ReadingsVal("AbfallKalView","c-today", 0)) { $modtext .= " und "}
$modtext .= ReadingsVal("AbfallKalView","t_".sprintf('%03d',$i)."_summary","").",";
Log3 "Cal",1,ReadingsVal("AbfallKalView","t_".sprintf('%03d',$i)."_summary","");
}
if ($i == 1) {$modtext = "Du hast heute keine Termine"}
return $modtext;
}
Viel Erfolg!
Zitat von: KernSani am 13 März 2017, 20:21:37
Meine sub als Anregung:
sub myUtils_readCal() {
my $i;
my $modtext = "Deine heutigen Termine sind ";
for($i= 1;$i<= ReadingsVal("AbfallKalView","c-today", 0);$i++){
if ($i == ReadingsVal("AbfallKalView","c-today", 0)) { $modtext .= " und "}
$modtext .= ReadingsVal("AbfallKalView","t_".sprintf('%03d',$i)."_summary","").",";
Log3 "Cal",1,ReadingsVal("AbfallKalView","t_".sprintf('%03d',$i)."_summary","");
}
if ($i == 1) {$modtext = "Du hast heute keine Termine"}
return $modtext;
}
Viel Erfolg!
Das ist ja ein super Beispiel, kannst du mir noch helfen wie ich die sub in einem AMAD Aufruf für ttsmsg einbinde?
Also Readings binde ich ja so ein "set LenovoTablet ttsMsg Es stehen heute [CalLippView:c-today] Termine an.", aber wie mache ich das mit einer sub.
Grüße
Swen
Ich bastle mir den set-Befehl zusammen und übergebe ihn an fhem()
{fhem("set EG_Kueche_sb talk ".myUtils_readCal())}
Zitat von: KernSani am 13 März 2017, 21:12:46
Ich bastle mir den set-Befehl zusammen und übergebe ihn an fhem()
{fhem("set EG_Kueche_sb talk ".myUtils_readCal())}
Danke, mit deiner Sub, die ich noch um Uhrzeit Ansage erweitert habe und den Aufruf aus dem Wecker DOIF, bekomme ich jetzt alle Termine für den aktuellen Tag früh angesagt.
Das freut manager ch :-) Dann kannst du ja noch den Thread als "gelöst" kennzeichnen Subject des ersten posts ändern)