Kategorie AktualnościPorady

Workflow – Zdrowie

W dzisiejszym wpisie zajmiemy się automatyzacja aplikacji Zdrowie. Sam staram się w tej aplikacji zbierać stosunkowo dużo danych, związanych z moim zdrowiem. Dla przykładu, w każdy sobotni poranek mam ustawione przypomnienie o sprawdzeniu wagi oraz zanotowaniu jej do aplikacji. Dzięki czemu kontroluję swoją wage i nie muszę pamiętać o zważeniu się, gdyż po przebudzeniu mam już przypomnienie o tym na telefonie.
Dziś wykonamy dwa skrypty. Pierwszy z nich bedzie odpowiedzialny za wprowadzanie danych do aplikacji – wprowadzać bedziemy naszą wagę. Natomiast, drugi skrypt będzie zwracał ilość wypitej wody w dniu dzisiejszym. Niezależnie od pory roku nawodnienie organizmu jest bardzo ważne dla zdrowia, dlatego warto rownież i ten aspekt kontrolować. Z pomocą przychodzą nam aplikacje Zdrowie i Workflow.

Założenia skryptów

Głównym założeniem skryptów jest możliwość wykonania ich z poziomu widgetu, bez konieczności wchodzenia do aplikacji Workflow.

Dodawanie wagi


 
Jak widzimy na początku mamy dobrze nam znany Ask for Input, którego zadaniem będzie wprowadzenie wagi.

Parametry:
Question – ustawiłem jako Twoja obecna waga – tekst wyświetlający się nad wprowadzaną wartością.

Default – wartość domyślną pozostawiłem pustą, żeby każdorazowe jej usuwanie nie denerwowało użytkownika.
Input Type – to oczywiście typ danych jaki ma zostać podany przez użytkownika.
Kolejnym elementem naszego skryptu jest Log Health Sample, który odpowiada za zapisywanie danych w aplikacji Zdrowie.

Parametry:
Type – odpowiada za określenie kategorii do jakiej będą dodane dane. W naszym wypadku kategoria to Weight, czyli waga.

Value – czyli jak sama nazwa wskazuje jest to wartość jaka ma zostać dodana wraz z jednostką. Wartością w naszym skrypcie jest dana zwrócona przez komponent Ask for Input, natomiast jednostka to kilogramy.
Date – ostatni z parametrów, przyjmuje date dodania pomiaru, u nas będzie to data włączenia skryptu.
Warto wspomnieć, że parametry komponentu Log Health Sample, są zależne od pierwszego z omówionych przeze mnie parametrów, czyli Type.
Po wykonaniu operacji dodania nowej wagi, pozostaje nam jeszcze wyświetlić powiadomienie o wykonaniu czynności przez nasz skrypt.
Parametr Title ustawiłem jako Waga. Natomiast w ciele powiadomienia znajduje się tekst wraz z wprowadzoną wartością.

Odczytywanie ilości wypitej wody


 
Skrypt ten składa się z trzech elementów, pierwszym z nich jest Find Health Samples. Przyjmuje kilka parametrów, które jak zawsze po kolei omówię. Pierwszym parametrem jest kategoria z jakiej chcemy odczytać dane, w naszym skrypcie jest to Water. Kolejny parametr odpowiada za date początkowa lub zakres, tak jak w naszym przypadku jest to zakres całego dnia. Następnie możemy dodać kolejne filtry danych takie jak czas zakończenia czy źródło wprowadzonych danych, dodając nowy filter. Unity odpowiada za zwracana jednostkę interesującej nas wartości, u nas w skrypcie są to litry. Mamy możliwość grupowania danych za pomocą Group By, gdzie my grupujemy po całym dniu.
Następnie mamy przełącznik odpowiedzialny za wypełnianie brakujących danych. Jak widzimy ten parametr jest u nas wyłączony. Parametry Sort by i Order odpowiadają za sortowanie pobranych danych. W Sort by wybieramy po jakiej wartości mają być sortowane dane, a w Order, czy mają być sortowane rosnąco czy malejąco. Ostatni parametr to określenie limitu pobieranych danych np. wczytanie ostatnich pięciu dodanych szklanek wody. Komponent Find Health Samples przypomina tworzenie zapytań sqlowych, jeśli miałeś możliwość pracy z bazami danych to na pewno, widząc ten element skryptu, miałeś takie samo skojarzenie.
Round number to kolejny element budowanego przez nas skryptu. Wykorzystamy go do zaokrąglania pobranych danych. Parametr Round odpowiedzialny jest za kierunek zaokrąglania. Mamy możliwość zaokrąglania lewej strony po przecinku lub prawej. U nas będzie to prawa strona po przecinku. Następnie określamy zachowanie funkcji zaokrąglającej. Tutaj mamy do wyboru trzy typu: zawsze zaokrąglaj w górę, zawsze zaokrąglaj w dół lub normalne zaokrąglanie, czyli od 0.5 zaokrąglaj w górę, a gdy jest poniżej tej wartości w dół. Ostatnim parametrem jest ilość miejsc po przecinku. W naszym skrypcie będą to dwa miejsca po przecinku. Po pobraniu danych, zaokrągleniu wyniku pozostaje nam wyświetlić powiadomienie z przetworzonych danych. W tytule powiadomienia wstawiamy przetworzoną wartość zwróconą przez Round number i mamy gotowy skrypt, który będzie nas informował o ilości wypitej wody danego dnia.

Skrypt w widgecie

Po utworzeniu obu skryptów pozostaje nam wejść w ustawienia danego skryptu i wybrać typ na Today Widget.

 

Działanie skryptów


 

Podsumowanie

W dzisiejszym wpisie skupiliśmy się na automatyzacji systemowej aplikacji Zdrowie. Dodatkowo skonfigurowaliśmy nasze skrypty, tak aby móc uruchamiać je z widgetu. Podobnych skryptów możemy wykonać bardzo dużo, zmieniając jedynie interesującą nas kategorię. Skrypty do aplikacji Zdrowie, bardzo upraszczają życie osobie, która systematycznie wprowadza do niej dane.
 
Polecamy również:
Recenzja aplikacji Workflow
Pozostałe artykuły z serii: Jak tworzyć skrypty w Workflow

Mariusz Bugajski

Na co dzień programista, redaktor i bloger. Człowiek, którego pasją jest programowanie oraz cały świat IT z naciskiem na firmę Apple.

Ostatnie wpisy

Router Synology RT6600ax. Potężny zarządca sieci

Markę Synology kojarzycie zapewne z urządzeniami NAS. Te świetne dyski sieciowe dają możliwość przechowywania bezpiecznie…

2 lata temu

Sonos ogłasza partnerstwo z Apple i pokazuje dwa głośniki

Na rynek wchodzą dwa nowe głośniki marki Sonos: Era 100 i Era 300. Model Era…

2 lata temu

Sejf Smart Safe współpracuje z HomeKit

Akcesoriów, które możemy dodać do naszego inteligentnego domu jest coraz więcej. Do tego zacnego grona…

2 lata temu

FileMaker Cloud w Polsce

Wiecie, że jedna z najlepszych baz danych - FileMaker (obecnie zmieniana jest nazwa na Claris),…

2 lata temu

Ivory zamiast Tweetbot’a. Mastodon lepszy od Twittera?

Elon Musk wszedł na Twittera i zrobił rewolucje. Ostateczną ocenę jego poczynań w tym serwisie…

2 lata temu

Najważniejsza funkcja nowego HomePod’a

Ten produkt miał już nie istnieć. Kiedy pojawiły się informację, że Apple nie przedłuży życia „dużego”…

2 lata temu

Serwis wykorzystuje pliki cookies. Korzystając ze strony wyrażasz zgodę na wykorzystywanie plików cookies.