Task soll ausgeführt werden, wenn es einen beliebigen Kalendereintrag in einem bestimmten Kalender gibt

android-micha

android-micha

Erfahrenes Mitglied
40
Hallo, ich habe mal wieder ein Kalenderproblem, diesmal ganz ohne dass ein Plugin mitspielt. Ich möchte, dass ein Task ausgeführt wird, wenn es einen beliebigen Kalendereintrag in einem bestimmten Kalender gibt. Und damit nicht die ganze Zeit der laufende Task angezeigt wird, mache ich das nur von 0.00 bis 0.05.
Aber genau das funktioniert nicht, der Kalendereintrag wird nicht gefunden, obwohl er existiert. Es ist ein Eintrag über mehrere Tage.

Screenshot_2023-03-14-10-37-34-483-edit_net.dinglisch.android.taskerm.jpg

Gibt es hilfreiche Hinweise?

Micha
 
android-micha schrieb:
Und damit nicht die ganze Zeit der laufende Task angezeigt wird,
falls du die Benachrichtigung meinst "X Profile aktiv", kannst du in den Einstellungen "Use Reliable Alarms" auf Never stellen. Dann ist die Benachrichtigung weg. Zeitprofil könnten dadurch aber etwas verzögert ausgeführt werden. Sollte in deinem Fall aber weniger eine Rolle spielen wenn ich das korrekt rauslese.

warum es mit deinem Zeitprofil nicht klapp kann ich auch nicht sicher sagen. eventuell wird ein ganztägige Alarm nicht getriggert wenn du das Profil per Zeit aktivierst. Ist aber nur eine Vermutung.
 
Ich vermute eher, dass es daran liegt, dass der Termin über mehrere Tage geht und dann nur dem ersten Tag zugeordnet wird... Kann mal bitte jemand schreiben, dass das nicht so ist?

Micha
 
Bitte gern, kein Problem. Hab mir gern Zeit genommen dir zu Antworten.
 
Liebe(r) rtwl,
sorry, dass du meine Antwort als Ablehnung deiner Ideen angesehen hast. Das war von mir gar nicht so intendiert.

Aber an der grünen Markierung aktiver Profile/Bedingungen sehe ich ja, dass das Problem nicht an der Zeit liegt, die ich als Bedingung mit drin hatte.

Ich habe mittlerweile diese Zeit-Bedingung rausgenommen. Trotzdem werden Termine im besagten Kalender nicht erkannt. Tests mit einem anderen Kalender funktionieren aber, es liegt also auch nicht, wie von mir befürchtet, daran, dass mehrtägige Termine nur am ersten Tag verbucht würden.

Weil es nun aber mit einem anderen Kalender wie gewünscht klappt, ist es doch gleich mehrfach komisch. Warum geht es mit dem einen Kalender, mit dem anderen nicht?
Der Kalender, der eigentlich gewünscht ist, wird mir über Google freigegeben zum Lesen, aber nicht zum Schreiben, ich habe ihn also abonniert. Evtl. ist dort das Problem zu suchen...
Komischerweise hatte dieses Profil aber früher mal problemlos geklappt... 😵‍💫

Micha
 
Du könntest das Profil so einstellen, das es nur von 0:05-0:10 aktiv ist. Dazu brauchst du nur ein zweites Profil das den Status umstellt und vor der Zeit des eigentlichen Profils ausgeführt wird:

Profil 1:
23:55 Profil Status = Profil 2 An

Profil 2::
0:05 Kalendereintrag suchen
Kalendereintrag gefunden
Task ausführen
Letzter Punkt: Profil Status = Profil 2 Aus

Dann ist das Profil 2 für den Rest des Tages bis 23:55 wieder deaktiviert und wird nicht angezeigt
 
Zuletzt bearbeitet:
Danke für deine Antwort. Mein Problem ist aber nicht die Anzeige als Benachrichtigung, sondern dass ein vorhandener Termin nicht gefunden wird.

Ich habe zwei Profile dazu:
Profil 1: wenn Termin gefunden, mache Task1 Profil 2: wenn im selben Kalender kein Termin gefunden, mache Task2.

Und, obwohl es heute einen Termin gibt, ist immer Profil 2 aktiv.

Dummerweise eilt es etwas, weil die Ferien morgen zu Ende sind und ich es nur mit diesem Ferienkalender testen kann. Mit einem anderen Kalender klappt es, wie beschrieben, ja in gewünschter Weise.

Micha
 
Ich gehe solche Aufgaben normalerweise anders an.
Ich definiere ein Profil abhängig von Zeit, Tag, was auch immer.
Innerhalb des Tasks nehme ich die Aktion "Test App" und prüfe damit auf die Kalendereinträge.
Output von "Test App" ist eine Variable bzw. ein Array, die man via "If - Else" Statements für diverse Aktionen nutzen kann.
Ist IMHO einfacher und funktioniert sehr zuverlässig.
 
Hallo MeinNickname,
danke für diese Idee, auf die ich so nie gekommen wäre, weil ich "Test App" nicht kannte/kenne. Wo trage ich denn da den konkreten Kalender ein und wie teste ich, ob ein Termin für heute existiert?
Micha
 
@android-micha
Du suchst mit dem Default Eintrag "Calendar, Calendar"
Als Daten gibst Du "%TIMES" an und speicherst das Ergebnis in einer beliebigen Variablen z.B. %kalender.
Da diese Variable meist mehrere Werte enthält, wird sie zum Array
Danach kannst z.B. prüfen, ob "%kalender()" ~R "Dein gewünschter Kalender" ist. [Die Klammern hinter dem Namen der Variablen sind wichtig]
Dann geht es mit einfachen "If" Statements (Entscheidung ja/nein) weiter.
 
Zuletzt bearbeitet:
Danke für deine Erklärung. Aber auch damit bleibt es dabei, dass der heutige Ferientermin nicht gefunden wird, obwohl er ja da ist.

Micha
 
Dann hast Du aber irgendein anderes Problem.
Tasker erkennt bei mir mit diesen Tasks seit vielen Jahren alle Kalendereinträge.

Bist Du sicher, dass Du beim Auslesen der Variablen die Klammern gesetzt hast?
Sonst bekommst Du tatsächlich kein Ergebnis.
 
Zuletzt bearbeitet:
Ja, ich bekomme in der Liste alle Kalender, die Termine haben, aber diesen einen nicht. Schon komisch. Aber ich denke mittlerweile auch, dass es irgendwo anders klemmt, bei den Berechtigungen des Kalenders oder so. Ich fürchte, aus der Ferne könnt ihr mir dabei nicht helfen.

Danke aber nochmals an alle, die es hier versucht haben!
Micha
 

Ähnliche Themen

J
Antworten
6
Aufrufe
671
mbefore305
M
marspoki
Antworten
3
Aufrufe
413
Mathens
Mathens
P
Antworten
25
Aufrufe
1.161
Pentatulim
P
Zurück
Oben Unten