Zanim właściciel małej firmy dowie się, że nic nie leży, musi przeklikać CRM, helpdesk, kalendarz i faktury. Codziennie ten sam obchód. Siódmy tekst z serii ośmiu workflowów n8n opisuje szablon, który zamienia ten obchód w jeden poranny mail.
Co w tym boli
Właściciel małej firmy rzadko traci naraz kilkanaście spraw. Traci jedną. Tę, która leży od tygodnia, otoczoną przez sąsiadów z wczoraj, przez co całość wygląda znajomo. CRM pokazuje tyle samo otwartych pozycji co poprzedni czwartek. Alarm nie bije.
Problem jest architektoniczny: systemy raportują liczbę spraw w kolejce. Wiek najstarszej sprawy nie rusza licznika, więc sygnału nie ma. A ta jedna pozycja dalej głoduje.
Żeby to sprawdzić ręcznie, trzeba przejść przez CRM, helpdesk, kalendarz i system faktur. Każde z tych narzędzi ma inny widok starych spraw i inną definicję tego, co "stare" w ogóle znaczy. Można wejść i wyjść z poczuciem, że wszystko gra, bo nikt nie powiedział, żeby szukać akurat tej jednej pozycji sprzed tygodnia.
Jak działa workflow
O 08:30 n8n odpala harmonogram. Pociąga dane z czterech źródeł kolejno: sprzedaż, wsparcie, kalendarz, finanse. Każde z nich dostaje pięć sekund na odpowiedź. Wynik każdego źródła normalizuje się do trzech pól: liczba otwartych spraw, najstarsza otwarta sprawa, jej wiek w godzinach.
Z tych czterech paczek budowany jest jeden obraz. Workflow wie teraz, ile spraw jest otwartych w danym obszarze, co leży najdłużej i czy wiek tej pozycji przekroczył próg SLA ustawiony dla tego obszaru. Progi konfiguruje się per obszar, dwiema stałymi w górnej sekcji kodu normalizatora.
Potem wchodzi model językowy. Dostaje zebrane dane i pisze krótkie podsumowanie prozą. Walidator sprawdza wynik przed wysłaniem: jeśli podsumowanie zawiera choćby jedną cyfrę, jest odrzucane i zastępowane stałym komunikatem zastępczym. Wszystkie liczby i decyzja o alercie są policzone w kodzie, zanim AI cokolwiek widzi. Model nie dotyka żadnych danych liczbowych.
Digest idzie mailem codziennie, niezależnie od tego, co znalazły źródła. Alert idzie osobno, wyłącznie wtedy, gdy konkretna sprawa przekroczyła próg wiekowy i nie była jeszcze tego dnia zgłaszana. Klucz tłumienia to trójka: źródło, identyfikator sprawy, data. Klucz jest zapisywany dopiero po skutecznym wysłaniu alertu. Nieudana wysyłka nie pochłania alertu i nie wycisza powtórki.
Ta rozdzielność kanałów jest decyzją projektową. Spokojny poranek nie generuje alertu. Alert, kiedy przychodzi, jest warty przeczytania. W systemach, które krzyczą przy każdym uruchomieniu, nikt alertów nie czyta.
Co się dzieje, gdy dane nie spłyną
Jeśli jedno ze źródeł nie odpowie w pięć sekund, zwróci dane bez informacji o wieku spraw, albo po prostu się posypie, workflow nie uzupełnia luki zerami. Takie źródło jest oznaczane jako niedostępne lub zdegradowane i wypisywane w raporcie wprost. Cały digest dostaje flagę DEGRADED.
Mail przychodzi, ale mówi: tego kawałka nie mam, raport jest niepełny.
Dashboardy, które milczą przy awarii, dają fałszywe poczucie spokoju. To jest gorsze niż brak raportu.
Co jest w repozytorium za darmo
Workflow jest w katalogu 05-ops-digest-alert w otwartym repozytorium:
https://github.com/kuliberdalabs/n8n-sme-workflows/tree/main/workflows/05-ops-digest-alert
Główne repozytorium z pozostałymi szablonami: https://github.com/kuliberdalabs/n8n-sme-workflows. Katalog ma 14 pozycji, 8 z nich to gotowe szablony n8n do importu.
Dostajesz plik workflow.json, opis czterech zmiennych n8n (OPS_SALES_URL, OPS_SUPPORT_URL, OPS_CALENDAR_URL, OPS_FINANCE_URL) oraz kontrakt, który każde źródło musi spełniać: lista otwartych spraw z identyfikatorem i datą utworzenia lub gotowym wiekiem.
Kilka ograniczeń, które warto znać przed importem:
- Brak gotowych konektorów do konkretnych narzędzi. Każde źródło to generyczny endpoint HTTP. Zmapowanie realnego CRM, helpdesku, kalendarza czy systemu faktur na ten kontrakt to osobna praca integracyjna.
- Magazyn tłumienia alertów nie jest trwały. Klucze żyją w statycznych danych workflowu n8n. Restart instancji lub dwa równoległe uruchomienia mogą zdublować alert. Przed produkcyjnym użyciem warto przenieść ten magazyn do zewnętrznego backendu.
- Pobieranie danych jest sekwencyjne. Przy czterech źródłach z pięciosekundowym limitem na każde, worst case to dwadzieścia sekund zanim raport się zbuduje.
Kiedy szablon nie wystarczy
Import pliku JSON i ustawienie czterech zmiennych to start. Praca integracyjna zaczyna się zaraz po nim: adapter dla każdego narzędzia trzeba napisać samodzielnie, a progi SLA trzeba skalibrować pod historię własnych procesów.
Jakie progi mają sens dla konkretnej firmy, nie wynika z szablonu. Wynika z tego, co wcześniej kosztowało utratę klienta lub opóźnienie płatności. Tego nie ma w pliku JSON.
Jeśli chcesz wdrożyć ten mechanizm bez własnej pracy integracyjnej, opisałem gotową usługę na karcie /automatyzacje/poranny-radar. Bezpłatna diagnoza procesów jest pod adresem /kontakt. Koszty tego typu wdrożeń: /blog/ile-kosztuje-automatyzacja-procesow.