Jest gotowy workflow n8n, który:
- Sprawdza komentarze w Worksection według harmonogramu za ostatnie 3 dni.
- Jeśli są nowe komentarze, generuje aktualizację dla klienta za pomocą OpenAI.
- Wysyła aktualizację do PM w Telegramie do zatwierdzenia.
- PM ma przyciski:
Potwierdź i wyślij do klienta, Przerób, Kopiuj, Odrzuć.
Trzeba dopracować istniejący workflow, a nie tworzyć nowy od zera. Workflow JSON zostanie dostarczony.
1. Dopracować przyciski Telegram
„Potwierdź i wyślij do klienta”
Po naciśnięciu:
- klientowi wysyłany jest tylko ostateczny tekst dla klienta;
- bez bloków służbowych, przycisków, nazwy projektu, informacji technicznych;
- wiadomość idzie do
client_chat_id, wskazanego w konfiguracji; - w czacie PM pojawia się potwierdzenie;
- powtórne naciśnięcie nie powinno duplikować wysyłki.
„Przerób”
Po naciśnięciu:
- bot prosi PM o napisanie poprawki w odpowiedzi;
- PM może wysłać poprawkę tekstem lub głosem;
- głos ma być rozpoznawany w tekst;
- OpenAI regeneruje aktualizację z uwzględnieniem poprawki;
- PM otrzymuje nową wersję z tymi samymi przyciskami;
- przeróbkę można robić kilka razy.
„Kopiuj”
Po naciśnięciu:
- bot wysyła PM oddzielną wiadomością tylko ostateczny tekst dla klienta;
- bez informacji służbowych i przycisków.
„Odrzuć”
Po naciśnięciu:
- szkic otrzymuje status odrzucony;
- klientowi nic nie jest wysyłane;
- w czacie PM wyświetlane jest potwierdzenie;
- stare przyciski nie powinny pozwalać na wysyłkę odrzuconego szkicu.
2. Dodać logikę przypomnień, jeśli nie ma aktualizacji w CRM Worksection
Jeśli w ciągu ostatnich 3 dni w Worksection nie było nowych merytorycznych komentarzy, workflow nie powinien po prostu się kończyć.
Pierwsze przypomnienie w Worksection
Bot ma dodać komentarz do odpowiedniego zadania w Worksection.
Przykład tekstu:
Serhij, witam.
Niestety, w ciągu ostatnich 3 dni nie było nowej aktualizacji w tej sprawie.
Proszę, napisz w tym zadaniu, co zostało zrobione w ciągu ostatnich 3 dni w ramach projektu, abym mógł wziąć te informacje do pracy, przeanalizować je i przygotować regularną 3-dniową aktualizację dla klienta.
Projekt: "..."
Zadanie Worksection: {{task_id}}
Ponowne przypomnienie w Telegramie
Jeśli po pierwszym przypomnieniu w Worksection nowych komentarzy wciąż nie ma, przy następnym uruchomieniu bot ma napisać do wewnętrznej grupy Telegram specjalisty.
Przykład tekstu:
"tag gościa", witam.
To jest elektroniczny asystent kierownika projektów Solarweb.
Przypominam, że w Worksection co 3 dni należy aktualizować informacje o projekcie: jakie działania zostały wykonane, co jest obecnie w pracy, jakie są wyniki, ryzyka lub następne kroki.
To jest potrzebne do przygotowania regularnych 3-dniowych aktualizacji dla klientów.
Projekt: "..."
Kierunek: Reklama celowana
Zadanie Worksection: {{worksection_task_url}}
Proszę, przejdź do Worksection i napisz, co zostało zrobione w ostatnich dniach.
Wiadomość Telegram ma iść nie do klienta i nie do PM, a do oddzielnego wewnętrznego czatu, wskazanego w konfiguracji.
3. Ochrona przed spamem
Trzeba zachować stan w staticData, aby bot nie duplikował przypomnień.
Logika:
- Jeśli nie ma aktualizacji i jeszcze nie było przypomnienia w tym okresie, napisać w Worksection.
- Jeśli przypomnienie w Worksection już było, ale komentarzy wciąż nie ma, napisać w Telegramie.
- Przypomnienia Telegram nie częściej niż 1 raz dziennie dla jednego projektu.
- Jeśli specjalista dodał nowy komentarz, stan przypomnień jest resetowany.
- Dalej workflow działa standardowo: generuje aktualizację i wysyła do PM do zatwierdzenia.
4. Co należy uwzględnić technicznie
Trzeba sprawdzić i dopracować:
callback_query od przycisków Telegram;- zapisywanie szkiców w
staticData.pmDrafts; - powiązanie
draft_id z konkretnym projektem; - wysyłkę tylko tekstu dla klienta;
- przetwarzanie tekstowych i głosowych poprawek;
- ponowne wyświetlanie przycisków po przeróbce;
- ochronę przed ponowną wysyłką;
- pracę z długimi wiadomościami Telegram;
- dodaną komentarz w Worksection przez API;
- przypomnienia Telegram dla specjalisty;
- logowanie zrozumiałych statusów;
- aby w logach nie były widoczne klucze API ani tokeny.
5. Konfiguracja
Trzeba dodać lub przewidzieć pola:
specialist_name: 'Serhij',
specialist_telegram_username: 'pies sergij',
specialist_reminder_chat_id: '-100...',
worksection_task_url: 'https://"000".worksection.com/...',
reminder_enabled: true,
worksection_reminder_enabled: true,
telegram_reminder_enabled: true
Jeśli jakiegoś pola nie ma, workflow nie powinien się zawieszać, a powinien zwracać zrozumiały status.
6. Testowanie
Trzeba realnie przetestować workflow i pokazać wynik na testowych lub rzeczywistych czatach Telegram.
Pokazać:
- PM otrzymuje aktualizację z przyciskami.
- „Potwierdź” wysyła do klienta tylko tekst dla klienta.
- „Przerób” działa z poprawką tekstową.
- „Przerób” działa z poprawką głosową.
- „Kopiuj” wysyła tylko tekst dla klienta.
- „Odrzuć” nie wysyła tekstu do klienta.
- Jeśli w Worksection nie ma komentarzy, bot pisze przypomnienie w Worksection.
- Jeśli komentarzy wciąż nie ma, bot pisze przypomnienie w Telegramie.
- Bot nie spamuje tymi samymi przypomnieniami.
- Po pojawieniu się nowego komentarza bot generuje aktualizację.
7. Co ma być na wyjściu
Wykonawca ma dostarczyć:
- Zaktualizowany workflow JSON.
- Krótki opis zmian.
- Instrukcję po zmiennych env lub poświadczeniach.
- Wyjaśnienie, które pola zmieniać pod inne projekty.
- Zrzuty ekranu lub wideo z testowania.
Kryterium akceptacji
Importuję workflow, podstawiam swoje poświadczenia/zmienne env i otrzymuję gotową logikę bez ręcznych poprawek:
- aktualizacja generowana z Worksection;
- PM zatwierdza, przerabia, kopiuje lub odrzuca tekst;
- klientowi idzie tylko zatwierdzony tekst dla klienta;
- jeśli w Worksection nie ma aktualizacji, bot przypomina specjaliście;
- duplikowanie wysyłek i spam przypomnieniami wykluczone.