Open in
Używaj ThunderPhone z n8n
Zainstaluj węzeł ThunderPhone dla n8n, połącz klucz API serwera i utwórz przepływ pracy uruchamiany za każdym razem, gdy połączenie się kończy.
n8n to narzędzie do automatyzacji przepływów pracy. Pakiet ThunderPhone dla n8n dodaje dwa węzły:
- Wyzwalacz ThunderPhone uruchamia przepływ pracy, gdy połączenie się kończy (Połączenie zakończone) lub gdy zakończy się uruchomienie oceny połączenia (Połączenie ocenione).
- ThunderPhone wykonuje połączenia wychodzące, dodaje kontakty do kampanii i je uruchamia, pobiera połączenia wraz z ich transkrypcją i nagraniem oraz wyświetla listę Twoich agentów i numerów telefonów.
Jest to zweryfikowany węzeł społeczności, dostępny na stronie ThunderPhone w n8n.
Zainstaluj węzeł
W edytorze n8n kliknij +, aby otworzyć panel węzłów, i wyszukaj ThunderPhone. Właściciel instancji może najpierw potrzebować skonfigurować zweryfikowane węzły, zanim inni użytkownicy będą mogli je dodać.
W samodzielnie hostowanym n8n możesz również zainstalować pakiet według nazwy: otwórz
Ustawienia > Węzły społeczności i zainstaluj n8n-nodes-thunderphone. Sprawdź ryzyko związane z węzłami społeczności i zasady swojej instancji,
zanim rozpoczniesz instalację.
Utwórz klucz API serwera
- Otwórz kartę Klucze
W ThunderPhone przejdź do Organizacja → Klucze i kliknij Utwórz klucz.
- Nadaj mu nazwę
Użyj nazwy wskazującej, gdzie znajduje się klucz, na przykład „n8n”.
- Skopiuj go teraz
Pełny sekret
sk_live_...jest wyświetlany tylko raz. Skopiuj go przed zamknięciem okna dialogowego.
Tylko administrator lub właściciel może utworzyć klucz, a ThunderPhone traktuje żądania wykonane przy jego użyciu jako pochodzące od tej osoby. Wyzwalacz i operacje na kampaniach wymagają, aby ta osoba zachowała rolę administratora lub właściciela. Utwórz klucz API serwera opisuje rotację i unieważnianie kluczy.
Dodaj poświadczenie w n8n
- W n8n utwórz poświadczenie typu ThunderPhone API.
- Wklej klucz w polu Klucz API.
- Zapisz je i uruchom test poświadczenia. Test odczytuje jedno połączenie z Twojej
organizacji za pomocą
GET /v1/calls?limit=1.
Utwórz pierwszy przepływ pracy
Ten przepływ pracy dodaje wiersz do Arkuszy Google za każdym razem, gdy połączenie się kończy.
- Dodaj wyzwalacz
Dodaj wyzwalacz ThunderPhone, wybierz poświadczenia API ThunderPhone i ustaw Zdarzenie na Połączenie zakończone.
- Pobierz połączenie
Dodaj węzeł ThunderPhone. Ustaw Zasób na Połączenie, Operację na Pobierz oraz ID połączenia na wyrażenie
{{ $json.data.call_id }}. Dane wyjściowe obejmują rekord połączenia oraztranscriptsirecording_url, czyli krótkotrwały link, który ma wartośćnull, gdy połączenie nie ma nagrania. - Dodaj wiersz
Dodaj węzeł Arkuszy Google, który dopisuje wiersz, i zmapuj wybrane kolumny z danych wyjściowych Pobierz połączenie (zobacz tabelę poniżej).
- Aktywuj przepływ pracy
Zapisz i aktywuj. Wyzwalacz rejestruje swój produkcyjny adres URL jako punkt końcowy webhooka w organizacji ThunderPhone. Dezaktywacja przepływu pracy usuwa ten punkt końcowy.
- Przetestuj
Otwórz agenta w kreatorze, kliknij Rozmawiaj i zakończ połączenie. Połączenia testowe z kreatora są dostarczane jako
web.complete, jedno z dwóch zdarzeń stojących za Połączenie zakończone, więc przepływ pracy zostanie uruchomiony i pojawi się wiersz.
Przydatne kolumny:
| Kolumna | Wyrażenie |
|---|---|
| ID połączenia | {{ $json.call_id }} |
| Kierunek | {{ $json.direction }} |
| Od | {{ $json.from_number }} |
| Do | {{ $json.to_number }} |
| Rozpoczęto | {{ $json.start_time }} |
| Czas trwania (s) | {{ $json.duration_seconds }} |
| Status | {{ $json.status }} |
| Powód zakończenia | {{ $json.end_reason }} |
| Link do połączenia | https://app.thunderphone.com/dashboard/call-history/{{ $json.call_id }} |
Link do połączenia otwiera połączenie w panelu ThunderPhone dla członków Twojej organizacji wraz z transkrypcją i nagraniem, więc arkusz nie musi przechowywać żadnego z nich.
Aby mimo to dodać transkrypcję, zmapuj
{{ $json.transcripts.filter(t => typeof t.content === 'string').map(t => t.role + ': ' + t.content).join('\n') }}.
Adres URL nagrania wygasa, dlatego przechowuj ID połączenia i ponownie uruchom Pobierz połączenie,
gdy potrzebujesz aktualnego linku. Transkrypcje, podsumowania i nagrania połączeń mogą zawierać
dane osobowe lub informacje o zdrowiu. Wysyłaj je wyłącznie do aplikacji, których Twoja organizacja
może używać do przetwarzania tych danych, na podstawie BAA, gdy dotyczą informacji o zdrowiu,
i zachowuj tylko potrzebne pola.
Wyzwalacz zwraca kompletne zdarzenie: type, event_id i data. Zobacz
telephony.complete / web.complete oraz
call.graded, aby poznać wszystkie pola. Dostarczanie odbywa się
co najmniej raz, a event_id pozostaje taki sam przy ponownych próbach dostarczenia
jednego zdarzenia, dlatego sprawdzaj go przed krokiem, który nie może się powtórzyć.
Bezpieczne wykonywanie połączeń wychodzących
Wykonaj połączenie wychodzące (Zasób Połączenie wychodzące, Operacja Wykonaj) przyjmuje:
| Pole | Znaczenie |
|---|---|
| Nazwa lub identyfikator agenta | Zapisany agent. Lista rozwijana zawiera Twoich agentów. |
| Nazwa lub identyfikator numeru telefonu | Numer, z którego wykonywane jest połączenie. Lista rozwijana zawiera tylko numery włączone dla połączeń wychodzących. |
| Numer docelowy | Numer docelowy w formacie E.164, np. +14155552671. |
| Zmienne | Obiekt JSON wartości dla symboli zastępczych w prompcie agenta. |
| Klucz idempotencji | Stały identyfikator z rekordu lub zdarzenia nadrzędnego. Wymagany. |
Przypisz Klucz idempotencji do identyfikatora z elementu, który spowodował uruchomienie, na przykład identyfikatora rekordu CRM lub event_id zdarzenia wyzwalającego. Węzeł wysyła
n8n:<node ID>:<your value>, więc:
- Automatyczna ponowna próba lub Ponów wykonanie wysyła ten sam klucz, a
ThunderPhone zwraca pierwotne połączenie z
idempotent_replay: truezamiast ponownie wybierać numer. - Dwa węzły ThunderPhone zasilane tym samym rekordem wysyłają różne klucze.
- Pusta wartość powoduje błąd przed wysłaniem jakiegokolwiek żądania.
Unikaj znaczników czasu, wartości losowych oraz identyfikatorów wykonań lub przepływów pracy n8n. Nowa wartość przy ponownej próbie wykonuje drugie rzeczywiste połączenie. Cały klucz może mieć maksymalnie 128 znaków. Ponowne użycie klucza z innym agentem, numerem lub zmiennymi powoduje konflikt.
Kampanie. Dodaj kontakty (Zasób Kampania) dodaje kontakty do
wersji roboczej kampanii. Przyjmuje identyfikator kampanii oraz tablicę JSON kontaktów. Każdy kontakt wymaga phone_number; pozostałe klucze
stają się zmiennymi połączenia. Węzeł kończy się błędem, gdy każdy kontakt zostanie odrzucony, i ustawia
partial_success: true, gdy odrzucone zostaną tylko niektóre. Uruchom wymaga zaznaczenia pola wyboru
potwierdzającego, że kampania wykonuje rzeczywiste połączenia i wykorzystuje środki ThunderPhone.
Zobacz Kampanie wychodzące.
Przed uruchomieniem połączeń przez przepływ pracy:
- Jeśli ThunderPhone prosi Twoją organizację o potwierdzenie, że jej połączenia wychodzące są zgodne z TCPA i innymi przepisami dotyczącymi połączeń, administrator musi najpierw zapisać to potwierdzenie w panelu.
- Numer, z którego wykonywane jest połączenie, musi być włączony dla połączeń wychodzących. Numery przeniesione od własnego operatora kwalifikują się po weryfikacji. Numery ThunderPhone są początkowo dostępne tylko dla połączeń przychodzących i mogą zostać zatwierdzone do użytku wychodzącego: administrator składa wniosek na stronie Numery telefonów. Zobacz Uzyskaj numer telefonu.
- Twoja organizacja odpowiada za uzyskanie zgody na połączenie z każdym numerem oraz za przestrzeganie obowiązujących przepisów dotyczących połączeń. Zobacz Przepisy dotyczące połączeń wychodzących.
Przykładowe przepływy pracy
- Kontakty CRM do kampanii. Dodaj kontakty CRM do wersji roboczej kampanii ThunderPhone, a następnie uruchom kampanię, gdy ktoś zatwierdzi listę.
- Zakończone połączenie do rekordu klienta. Po zdarzeniu Połączenie zakończone uruchom Pobierz połączenie i zapisz transkrypcję oraz link do nagrania w pasującym rekordzie klienta.
- Niskie oceny do weryfikacji. Po zdarzeniu Połączenie ocenione filtruj według
{{ $json.data.grade.score }}i kieruj połączenia z niską oceną do kolejki weryfikacji z identyfikatorem połączenia i szczegółami oceny. Połączenie może zostać ocenione więcej niż raz, a każde zakończone uruchomienie oceniania wyzwala zdarzenie, dlatego zachowuj tylko najnowszegraded_atdla każdego identyfikatora połączenia.
Transkrypcje, podsumowania i nagrania połączeń mogą zawierać dane osobowe lub informacje o zdrowiu. Wysyłaj je wyłącznie do aplikacji, których Twoja organizacja może używać do przetwarzania tych danych, na podstawie umowy BAA, gdy dotyczą one informacji o zdrowiu, i zachowuj tylko pola, których potrzebujesz.