^
kalendarz

Workflow – Automatyzacja Kalendarza

Mariusz Bugajski

6 lipca 2017

W kolejnym artykule naszego cyklu poznamy nowe elementy jakie udostępnia nam Workflow. Automatyzacja kalendarza będzie naszym kolejnym celem. Dodawanie wydarzeń do systemowej aplikacji wymaga przeklikania kilku opcji, aby zostało ono dodane według naszych potrzeb. Nowy skrypt pozwoli nam to uprościć.
W dzisiejszym artykule, będziemy bazować na wiedzy, którą poznaliśmy, tworząc pierwszy nasz wspólny „automator„.

Automatyzacja Kalendarza – Założenia

W systemowej aplikacji Kalendarz, wydarzenia dodawane przez użytkownika możemy podzielić na dwa rodzaje. Podobnie jak miało to miejsce w aplikacji Przypomnienia, na wydarzenia całodzienne oraz wydarzenia o określonej porze dnia.
Dodatkowym kryterium jakie ma spełnić nasz workflow jest możliwość wyboru kalendarza w trakcie wykonywania skryptu.

Automatyzacja Kalendarza – Skrypt

workflow skrypt
Zatem pierwszym elementem naszego skryptu jest Choose from Menu, gdzie mamy dodane, wynikające z naszych założeń, dwie pozycje: Całodzienne oraz Czasowe. Teraz omówimy całodobowe, a później czasowe.

Całodzienne

Na początku jesteśmy pytani, jakiego dnia ma zostać utworzone wydarzenie. Wykorzystujemy do tego opisywany w poprzednim artykule element Ask for Input. Input Type, czyli typ wprowadzanej danej ustawiamy na Date, dodatkowo wybieramy Date dla pola Granularity, co oznacza, że będziemy wybierać tylko dzień roku.
Przyszedł czas na nowy komponent Add New Event, jakiego jeszcze nie omawialiśmy w naszym cyklu. Dlatego teraz omówię, jakie cechy możemy mu nadać.
Title – czyli nazwa dodawanego wydarzenia,
Location – to lokalizacja w jakiej dane wydarzenia ma się odbyć,
Calendar – kalendarz do jakiego ma zostać dodana nowa pozycja (w systemowej aplikacji mamy możliwość tworzenia kalendarzy np. praca, prywatne),
Date – czas, kiedy ma się odbyć wydarzenie,
Start Date i End Date – początek i koniec danego wydarzenia, w momencie, kiedy tworzone jest wydarzenie całodobowe, należy podać Start Date,
All Day – oznacza, że wydarzenie będzie dodane jako całodniowe,
Alert – jaki czas wcześniej mamy dostać przypomnienie o wydarzeniu,
Notes – dodatkowe pole zawierające notatki dotyczące tego wydarzenia.
Wracając teraz do naszego skryptu, jak widzimy do wpisania mamy dwa pola Title i Notes, z czego tylko jedno jest wymagane – Title. Dodatkowo w polu Calendar wybieramy Ask When Run. W ten sposób mamy spełnione wszystkie warunki jakie sobie założyliśmy na początku.

Czasowe

Teraz w przeciwieństwie do wcześniej rozważanej części skryptu, podajemy poprzez Ask for Input datę początku i końca wydarzenia. Jak widzimy na zdjęciu powyżej Add New Event w tym wypadku nie wiele się różni od wcześniejszego, została dodana data zakończenia, jako dana podana przez Ask for Input oraz wyłączony został switch All Day.
Na koniec skryptu zawsze oczekuję powiadomienia, potwierdzającego prawidłowe wykonanie operacji. Zatem pojawia się po End Menu, komponent Show Notification, gdzie w Title podajemy dwa magiczne odwołania do New Event z wybranym polem Title. Wyświetli nam to wprowadzony tytuł nowego wydarzenia. Standardowo również dodaje do powiadomienia opis wykonanej czynności Dodano nowe wydarzenie.
Na koniec dodajemy opcję Exit Workflow, która zamknie nam wykonywany skrypt.

notification

notification

Automatyzacja Kalendarza – działania skryptu

Podsumowanie

Dziś utworzyliśmy skrypt ułatwiający nam, dodawanie wydarzeń do systemowego kalendarza. Poznaliśmy nowy komponent jakim jest Add New Event oraz wywołaliśmy powiadomienie o wykonaniu czynności używając magicznych zmiennych. Dzięki temu ograniczyliśmy się tylko do jednego elementu Show Notification, upraszczając skrypt. W pierwszym wpisie zrobiliśmy to za pomocą dwóch bloków.
Polecamy również:
Recenzję 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.
Komentarze (8)
L

8 komentarzy

  1. Zbychl

    Co zrobić aby show notification wyświetlał zarówno ” title” czasowe jak całodzienne

    • sirmarbug

      Musisz dodac magic variable (ikonka rozdzki) i wybrac element Add New Event dwa razy, czyli dla czasowych jak i calodziennych wydarzen.

  2. Marcin

    Fajne wideo, w czym robiłeś ??

    • sirmarbug

      W programie iMovie, dostepny tylko na urzadzenia Apple.

      • Marcin

        Intro też czy w czymś innym bo wygląda rewelacyjnie !!!

        • sirmarbug

          Intro redakcji, kazdy filmik jaki wychodzi od mojmac.pl ma takie intro 😉

  3. Marix43

    Witam. Mam problem w zastosowaniu skryptu, przy zdarzeniu czasowym nie zapisuje godziny rozpoczęcia, zawsze godzina rozpoczęcia i zakończenia są takie same – jest to godzina zakończenia. Gdzie tkwi błąd?

  4. Tobas

    Matrx43 mam ten sam problem. Nie wiem jak stworzyć zadania czasowe od dnia… do dnia….
    Ktoś pomoże?