Ich weiß, hier gabs soweit noch keine Reaktion - aber ich hab dennoch mal etwas rumgespielt
Ich hab zwei Kurzbefehle - wobei der zweite lediglich als Persistenz-PlugIn für den ersten dient.
Man kann sich den Kurzbefehl "MedChecker" einfach duplizieren, wenn man sowas für mehrere Medikamente braucht. Man sollte halt im Kurzbefehl drin die beiden Dinge hinterlegen:
- Name des Medikamentes
- Anzahl der Minuten, welche MINDESTENS vergehen sollten zwischen der Einnahme
Man wird beim Import des Kurzbefehls zwar danach gefragt - aber soweit ich weiß beim duplizieren nicht mehr.
Aber ich habs im "Code" kommentiert, damit man weißt, wo man was anpassen sollte.
Ab dann funktioniert es wie folgt:
Wird der Kurzbefehl ausgeführt, wird die Datenbank nach dem Medikament befragt. Liegt dort noch kein Eintrag vor, ertönt die Meldung, dass ein neues Medikament angelegt wurde und damit ist der Kurzbefehl zu Ende.
Wird ein Eintrag gefunden, wird berechnet, wie viel Zeit zwischen dem letzten CheckIn und jetzt vergangen ist. Liegt diese Zeit unterhalb der vorher definierten Minuten (1 Tag wären also 1440 Minuten), dann ertönt ein STOP und man bekomm angezeigt, ab wann man frühstens die Tablette nehmen darf.
Passt der Zeitraum, ertönt ein PASST - und man wird gefragt, ob man das jetzt als Eingenommen protokollieren möchte. Bricht man ab, passiert nichts mehr (also reiner Check), bestätigt man allerdings mit OK, dann wird der aktuelle Zeitstempel in die Datenbank geschrieben für den nächsten Check.
Und jetzt fügt man einfach unter "Automationen" eine neue Automation hinzu, wählt als Trigger einen NFC Tag den man dann scannen muss und hinterlegt den Kurzbefehl MedChecker dahinter. Das wars

Du musst beim ersten Mal ausführen erlauben, dass ein Kurzbefehl den anderen Kurzbefehl starten darf. Diese Abfrage kommt aber nur 1x.
Ich hab das Ding in der Kaffeepause/Mittagspause gebaut und hab selbst kaum Erfahrung mit dem Zeug - ich gehe mal davon aus, dass er noch Feinschliff brauchen wird. Wahrscheinlich gäbs auch irgendwelche Schleifen, die man hätte ziehen können

Schau ich mir ein anderes mal an für die Verschönerung.
Im ersten Check mit dem NFC Tag hier hat er aber genau das gemacht, was man erwarten würde. Nur die ganzen Import-Frage-Features da konnt ich nicht testen ... (im Übrigen würd ich etwas weniger als 24h wählen, sonst muss man das jedes Mal minutengenau abwarten ^^ so alles ab 22 Stunden wäre okay oder ähnlich).
Klick die beiden Links einfach auf deinem iPhone an, dann kannst die Kurzbefehle direkt importieren.
MedChecker
Database
Und die Datenbank funktioniert wie folgt, wen es etwas detaillierter interessiert:
Man erstellt ein Wörterbuch mit dem Inhalt - also alles, was hier enthalten ist an Key/Value-Pairs, wird als JSON dann weggeschrieben.
Und dieses Wörterbuch übergibt man als Payload einem weiteren Wörterbuch - neben Methode (get/add) und dem Namen der gesicherten Variable.
Hier wurde bspw. der Schlüssel als "timestamp" benannt und dessen Wert ist einfach ein formatiertes Datumsfeld. Der Variablenname ist der vorher definierte Medikamentenname, der in einer lokalen Variable namens MedName gehalten wird.
Und in der Erinnerungen-App sieht das dann so aus:
Ist der Database-Shortcut mal importiert, kann er überall wiederverwendet werden auf diese Art. Somit hat man einen lokalen Speicher für persistente Speicherung. Man kann das auch mit einem Notiz-Dokument machen, aber hier isses "eleganter"
