Twórz Własne Automatyzacje
3 godz. 14 min · Make · Biznes i Automatyzacje
Adam GospodarczykKorzystając z różnych narzędzi, na przykład do obsługi mailingu, masz do dyspozycji na ogół kilka wbudowanych integracji - przykładowo połączenie z kalendarzem czy bramką płatności. Wyobraź sobie, że takie narzędzie możesz połączyć praktycznie z dowolnym innym, nawet jeśli nie ma go na liście. To właśnie potencjał Make, które umożliwi takie automatyzacje.
Jeśli znasz Zapier, Make to podobna koncepcja, ale daje dużo bardziej zaawansowane możliwości, jest dużo tańsza (lub darmowa) a dodatkowo, ma naszym zdaniem bardziej przyjazny i czytelny interfejs zwłaszcza przy tworzeniu rozgałęzionych scenariuszy. Tworzenie automatyzacji z Make to czysta przyjemność i zdrowa porcja dopaminy!
Co najważniejsze, Make umożliwia tworzenie automatyzacji bez użycia ani jednej linii kodu! To jak programowanie 2.0, gdzie rezultaty widzisz i testujesz w prostym, wizualnym edytorze. To najłatwiejszy sposób aby zacząć przygodę z programowaniem i nowoczesnym podejściem do technologii no-code i low-code.
Mimo, że Make jest natywnym środowiskiem no-code, osoby, które nieco lepiej rozumieją zasady działania protokołu HTTP i API i mają podstawy programowania w JS, otrzymują zupełnie nowe możliwości tworzenia oprogramowania, w sposób wizualny i prostszy niż kiedykolwiek. Jeśli osoby początkujące z Make stają się programistami, programiści stają się superbohaterami!
Wyjątkowe w Make jest podejście do tworzenia automatyzacji wizualnie, gdzie bardzo czytelne jest całe flow scenariusza i to, jak przepływają w nim dane. Zaawansowane możliwości jak stosowanie filtrów czy funkcji sprawia, że w tak prostym interfejsie w zasadzie nie ma zadań niemożliwych!
Z dowolnego narzędzia możesz wysłać dane w postaci Webhooka do Make, które zostaną natychmiastowo odebrane. Następnie możesz łatwo przekazać je w dowolne miejsce i do dowolnego narzędzia - na przykład Airtable, z którego często korzystamy aby gromadzić dane, HubSpot'a, Asany czy wysłać powiadomienie SMS, e-mail, Slack. Całość zajmie Ci kilka minut.
Ten kurs jest przeznaczony dla każdej osoby, która chce pracować wydajniej i zatrudnić roboty (automatyzacje), które wykonają za nią powtarzalne zadania. Dzięki temu, zwiększysz efektywność swojej pracy oraz zostaniesz bohaterem automatyzacji w swojej firmie. Osoby, które przerobiły kurs HTTP i API, a także programiści, mogą wycisnąć z tego kursu jeszcze więcej, na dobre zmieniając swoje podejście do automatyzacji. Polecamy wcześniejsze przerobienie przynajmniej kursu HTTP i API, aby lepiej zrozumieć omawiane zagadnienia.
Cześć! W tej lekcji pokażę Ci kolejną funkcję Integromatu,
która pozwoli Ci lepiej zarządzać swoimi scenariuszami i dodatkowo rozbudowywać je
o funkcje umożliwiające komunikację pomiędzy nimi.
Konkretnie mam tutaj na myśli funkcję Data store, która umożliwia nam dosłownie
zbudowanie bazy danych bezpośrednio w Integromacie.
Oznacza to, że możemy tutaj nazwać naszą bazę danych i w moim przypadku będzie to
podcast, a następnie mogę określić tutaj strukturę przechowywanych danych.
Od razu zaznaczę, że Data stores to raczej uproszczona struktura bazy danych, ponieważ
wewnątrz niej możemy przechowywać strukturę obiektu JSON, które możemy
generować analogicznie jak to robiliśmy w przypadku tworzenia obiektu JSON.
Zatem przekazuję tutaj przykładowy obiekt,
a następnie nadaję tutaj nazwę oraz zapisuję cały Data store.
Rzeczywiście mamy tutaj do niego dostęp i
nawet możemy podejrzeć przechowywane w nim dane, ale oczywiście w tej chwili danych
tutaj nie ma, jednak znajdują się kolumny, które właśnie utworzyliśmy.
Poza tym znajduje się tutaj kolumna klucz,
która będzie generowana dla nas automatycznie i jednocześnie też będzie
pozwalała nam na odnajdywanie i aktualizowanie oraz usuwanie rekordów.
Zatem proponuję, abyśmy teraz wrócili do
naszego scenariusza i spróbowali wykorzystać nasz Data store.
Mianowicie załóżmy, że znajdują się tutaj
identyfikatory plików wideo, audio oraz Airtable ID.
Teraz wysyłając dane na ten webhook możemy je przechwycić, ale zanim to będzie możliwe
musimy zaktualizować strukturę naszego obiektu.
Albo dla ułatwienia utworzę po prostu nowy webhook, kopiuje nowy adres i
przekazuje go do insomni, a następnie uruchamiam cały scenariusz.
Jak wiesz, dane pochodzące z obiektu JSON
zostaną tutaj poprawnie przekazane.
Jednak zaraz po wykonaniu tego scenariusza tracimy do nich dostęp.
To oczywiście jak dotąd jest dla nas w
pełni normalne, ponieważ tak działa Integromat.
Poza tym do tej pory dowiedzieliśmy się,
że możemy skorzystać z modułu Tools umożliwiającego nam stworzenie zmiennej,
do której możemy odwoływać się nawet w różnych ścieżkach routera.
Jednak nawet tak ustawiona zmienna nie
pozwoli nam na przekazywanie danych pomiędzy scenariuszami.
Jeżeli jednak skorzystamy z modułu Data store,
będziemy mieć możliwość skorzystania z naszego store czy też bazy danych, którą
przed chwilą utworzyliśmy i albo dodawać lub aktualizować rekordy lub też możemy je
policzyć, pobierać odpowiednie rekordy, usuwać czy np. sprawdzać czy dane
rekord istnieje, no i oczywiście przeszukiwać istniejące rekordy.
Zacznijmy od tego, aby dodać do naszego Data store nowe dane.
Jeżeli chodzi o klucz danych, najlepiej będzie, jeżeli zostawimy te pole puste, bo
dzięki temu zostanie wygenerowane dla nas automatycznie.
Tutaj jeszcze dodam tylko, że jeżeli
przyjdzie Ci do głowy ustawienie własnego klucza, no to w przypadku gdy podasz tutaj
klucz rekordu, który już istnieje, dane zostaną tutaj zamienione.
W międzyczasie mapuję poszczególne pola, a następnie zapisuje zmiany.
Jeżeli teraz zapiszemy scenariusz i
ponownie prześlemy na niego dane, no to mamy tutaj potwierdzenie, że dane zostały
zapisane i mamy tutaj klucz obiektu, który w ten sposób został wygenerowany.
A dodatkowo jeżeli przejdziemy do Data store to zobaczymy, że mamy tutaj jeden
dokument zawierający przesłane przez nas dane.
Co ciekawe, teraz nic nie stoi na
przeszkodzie, aby utworzyć zupełnie nowy scenariusz i np.
odszukać rekordy znajdujące się w naszej bazie.
Tutaj stosując mechanizm filtrów możemy
wskazać o jakie rekordy nam chodzi, czyli np.
takie, w których Video ID ustawione jest na video.
Następnie możemy te rekordy sortować lub też ewentualnie zdecydować co ma się stać
w momencie, gdy dane nie zostaną znalezione.
Czy nasz scenariusz ma być kontynuowany, czy też nie.
Tymczasem jeżeli wykonamy sobie ten moduł, to jak się pewnie domyślasz otrzymamy
tutaj informacje, które przekazaliśmy w poprzednim scenariuszu.
Oznacza to, że dokładnie w ten sposób możemy sprawić, że nasze scenariusze będą
się ze sobą komunikować poprzez przekazywanie pomiędzy sobą np.
identyfikatorów lub innego rodzaju danych, na których nam tylko zależy.
Tak naprawdę nic nie stoi na przeszkodzie,
aby przechowywać tam również pliki, które możemy zakodować do odpowiedniego formatu.
Ograniczeniem jest jednak tutaj ilość danych, ponieważ w pojedynczym Data store możemy
przechowywać tylko 40 megabajtów danych, także miej to proszę na uwadze.
Jednak jeżeli chodzi o wartości tekstowe,
to tak naprawdę trudno będzie nam osiągnąć ten limit.
No to teraz myślę, że dobrym pomysłem
będzie to, aby sprawdzić sobie jak możemy pracować z kolejnymi rekordami.
Przykładowo pobierzemy sobie rekord, który
przed chwilą utworzyliśmy właśnie posługując się jego kluczem.
Zatem skopiuję sobie klucz pochodzący z
odpowiedzi tego modułu, a następnie raz jeszcze pobierzemy sobie ten rekord.
Oczywiście nasz moduł zwrócił odpowiednie
dane i nie stanowi to dla nas żadnego zaskoczenia.
Podobnie też myślę, że w żaden sposób nie
zaskoczy Cię aktualizacja bądź usuwanie danych, ponieważ w tym przypadku również
posługujemy się kluczem i ewentualnie możemy zdecydować, co się stanie w
sytuacji, gdy rekord nie zostanie odnaleziony.
Zatem np. video zamienimy na Video_ID i po wykonaniu tego modułu zobaczymy,
że rzeczywiście dane zostały tutaj zaktualizowane.
Nie będziemy sobie już przechodzić teraz
przez kolejne akcje tego modułu ze względu na to, że
są wystarczająco opisowe do tego, aby sprawnie się nimi posługiwać.
Dodam tylko, że w sytuacji, gdy będziesz
pracować właśnie z Data store, to zadbaj proszę o to, że w momencie gdy wkładasz do niego
jakieś dane w jednym scenariuszu, to, że drugi scenariusz, który ma za zadanie je
odczytać, faktycznie będzie miał taką szansę.
Możesz tu się spotkać z tzw.
raise condition, czyli z terminem znanym chociażby z asynchronicznego
programowania, który dotyczy sytuacji, w której jakieś zapisane dane np.
w bazie danych zostają nadpisane właśnie
przez inny scenariusz, zanim właśnie docelowy scenariusz zdąży je odczytać.
Oznacza to, że posługując się taką bazą danych może doprowadzić do sytuacji, w
której nie będziesz mieć pojęcia, co dokładnie się stało z Twoim modułem.
Ze względu na to, że jego działanie może
się różnić w zależności od tego, co się stało z danymi w międzyczasie.
Z tego powodu dobrze jest z głową
wykorzystywać ten moduł oraz możliwość zapisywania w nim danych.
Jednocześnie też nie polecam Ci zastępować w ten sposób Airtable, chociażby ze względu
na to, że wchodzenie w interakcję z tymi danymi jest wizualnie dość ograniczone.
W przypadku Airtable możesz po prostu zalogować się
do bazy i edytować sobie poszczególne właściwości.
I tutaj co prawda również jest to możliwe w takiej podstawowej formie, ale musisz
jednocześnie przyznać, że w porównaniu do Airtable nie jest już to takie oczywiste.
Oczywiście w dalszym ciągu możesz stosować tutaj powiązania pomiędzy różnymi bazami
danych, które możesz tworzyć na swoim koncie.
Jednak jednocześnie zwracam Twoją uwagę, że nawet w przypadku planu płatnego masz
do dyspozycji wyłącznie trzy takie bazy, także to również miej na uwadze.
Zatem moja ogólna rekomendacja dotycząca Data store jest taka, aby przechowywać
tutaj proste struktury danych, które mogą okazać się przydatne do tego, aby
przekazywać je pomiędzy różnymi scenariuszami, a jednocześnie nie są to na
tyle użyteczne dane, które warto zapisać w Airtable.
Oczywiście też nic nie stoi na przeszkodzie, aby dokładnie w tym celu
wykorzystać samo Airtable i w ogóle nie korzystać z Data store.
Natomiast tutaj decyzja należy już wyłącznie do Ciebie.
W tym momencie jeżeli chodzi o Data store to byłoby już na tyle.
Ja dziękuję Ci za uwagę i zapraszam Cię do kolejnej lekcji.
Cześć!