Open in
Používání ThunderPhone s n8n
Nainstalujte uzel ThunderPhone pro n8n, připojte klíč API serveru a vytvořte pracovní postup, který se spustí při každém ukončení hovoru.
n8n je nástroj pro automatizaci pracovních postupů. Balíček ThunderPhone pro n8n přidává dva uzly:
- ThunderPhone Trigger spustí pracovní postup po ukončení hovoru (Hovor dokončen) nebo po dokončení vyhodnocení hovoru (Hovor vyhodnocen).
- ThunderPhone uskutečňuje odchozí hovory, přidává kontakty do kampaní a spouští je, získává hovory s jejich přepisem a nahrávkou a vypisuje vaše agenty a telefonní čísla.
Jde o ověřený komunitní uzel uvedený na stránce ThunderPhone na n8n.
Nainstalujte uzel
V editoru n8n klikněte na +, otevřete panel uzlů a vyhledejte ThunderPhone. Vlastník instance možná bude muset ověřené uzly nastavit dříve, než je budou moci přidat ostatní uživatelé.
V n8n hostovaném na vlastním serveru můžete uzel nainstalovat také podle názvu balíčku: otevřete
Nastavení > Komunitní uzly a nainstalujte n8n-nodes-thunderphone. Před instalací
zkontrolujte rizika komunitních uzlů a zásady vaší instance.
Vytvořte serverový API klíč
- Otevřete kartu Klíče
V ThunderPhone přejděte do Organizace → Klíče a klikněte na Vytvořit klíč.
- Pojmenujte ho
Použijte název, který uvádí, kde se klíč používá, například „n8n“.
- Zkopírujte ho nyní
Úplné tajemství
sk_live_...se zobrazí pouze jednou. Zkopírujte ho před zavřením dialogového okna.
Klíč může vytvořit pouze správce nebo vlastník a ThunderPhone považuje požadavky provedené s jeho použitím za požadavky dané osoby. Spouštěč a operace s kampaněmi vyžadují, aby si tato osoba zachovala roli správce nebo vlastníka. Více o vytvoření serverového API klíče popisuje rotaci a zneplatnění.
Přidejte přihlašovací údaje v n8n
- V n8n vytvořte přihlašovací údaje typu ThunderPhone API.
- Vložte klíč do pole API klíč.
- Uložte je a spusťte test přihlašovacích údajů. Test načte jeden hovor z vaší
organizace pomocí
GET /v1/calls?limit=1.
Vytvoření prvního pracovního postupu
Tento pracovní postup přidá řádek do Tabulek Google pokaždé, když hovor skončí.
- Přidejte spouštěč
Přidejte Spouštěč ThunderPhone, vyberte své přihlašovací údaje k rozhraní ThunderPhone API a nastavte Událost na Hovor dokončen.
- Získejte hovor
Přidejte uzel ThunderPhone. Nastavte Prostředek na Hovor, Operaci na Získat a ID hovoru na výraz
{{ $json.data.call_id }}. Výstupem je záznam hovoru spolu stranscriptsarecording_url, krátkodobým odkazem, který má hodnotunull, když hovor nemá nahrávku. - Přidejte řádek
Přidejte uzel Tabulky Google, který přidává řádek, a namapujte požadované sloupce z výstupu Získat hovor (viz tabulka níže).
- Aktivujte pracovní postup
Uložte a aktivujte jej. Spouštěč zaregistruje svou produkční adresu URL jako koncový bod webhooku ve vaší organizaci ThunderPhone. Deaktivací pracovního postupu tento koncový bod odstraníte.
- Otestujte jej
Otevřete agenta v nástroji pro tvorbu, klikněte na Mluvit a hovor ukončete. Testovací hovory z nástroje pro tvorbu jsou doručovány jako
web.complete, jedna ze dvou událostí spadajících pod Hovor dokončen, takže se pracovní postup spustí a zobrazí se řádek.
Užitečné sloupce:
| Sloupec | Výraz |
|---|---|
| ID hovoru | {{ $json.call_id }} |
| Směr | {{ $json.direction }} |
| Od | {{ $json.from_number }} |
| Komu | {{ $json.to_number }} |
| Zahájeno | {{ $json.start_time }} |
| Délka (s) | {{ $json.duration_seconds }} |
| Stav | {{ $json.status }} |
| Důvod ukončení | {{ $json.end_reason }} |
| Odkaz na hovor | https://app.thunderphone.com/dashboard/call-history/{{ $json.call_id }} |
Odkaz na hovor otevře hovor v řídicím panelu ThunderPhone členům vaší organizace, včetně jeho přepisu a nahrávky, takže tabulka nemusí ukládat ani jedno z nich.
Chcete-li přidat také přepis, namapujte
{{ $json.transcripts.filter(t => typeof t.content === 'string').map(t => t.role + ': ' + t.content).join('\n') }}.
Adresa URL nahrávky vyprší, proto uložte ID hovoru a spusťte Získat hovor znovu, když
potřebujete nový odkaz. Přepisy hovorů, souhrny a nahrávky mohou obsahovat
osobní nebo zdravotní údaje. Odesílejte je pouze do aplikací, které vaše organizace
smí pro tato data používat, na základě smlouvy BAA, pokud se jedná o zdravotní
údaje, a uchovávejte pouze pole, která potřebujete.
Spouštěč vrací úplnou událost: type, event_id a data. Všechny
atributy najdete v dokumentaci k telephony.complete / web.complete a
call.graded. Doručení probíhá alespoň jednou
a event_id zůstává stejné při opakovaných pokusech o doručení jedné události, proto jej zkontrolujte před
krokem, který se nesmí opakovat.
Bezpečně uskutečňujte odchozí hovory
Uskutečnit odchozí hovor (Zdroj Odchozí hovor, Operace Uskutečnit) vyžaduje:
| Pole | Význam |
|---|---|
| Název nebo ID agenta | Uložený agent. Rozevírací seznam obsahuje vaše agenty. |
| Název nebo ID telefonního čísla | Číslo volajícího. Rozevírací seznam obsahuje pouze čísla povolená pro odchozí hovory. |
| Číslo příjemce | Cílové číslo ve formátu E.164, např. +14155552671. |
| Proměnné | Objekt JSON s hodnotami pro zástupné symboly ve výzvě agenta. |
| Klíč idempotence | Stabilní ID z nadřazeného záznamu nebo události. Povinné. |
Namapujte Klíč idempotence na ID z toho, co spuštění způsobilo, například
ID záznamu CRM nebo event_id spouštěče. Uzel odesílá
n8n:<node ID>:<your value>, takže:
- Automatický opakovaný pokus nebo Opakovat spuštění odešle stejný klíč a
ThunderPhone vrátí původní hovor s
idempotent_replay: truenamísto opětovného vytáčení. - Dva uzly ThunderPhone napájené stejným záznamem odešlou různé klíče.
- Prázdná hodnota selže před odesláním jakéhokoli požadavku.
Vyhněte se časovým razítkům, náhodným hodnotám a ID spuštění nebo workflow n8n. Nová hodnota při opakovaném pokusu uskuteční druhý skutečný hovor. Celý klíč může mít maximálně 128 znaků. Opětovné použití klíče s jiným agentem, číslem nebo proměnnými selže s konfliktem.
Kampaně. Přidat kontakty (Zdroj Kampaň) přidá kontakty do
konceptu kampaně. Vyžaduje ID kampaně a pole kontaktů JSON. Každý kontakt potřebuje phone_number; ostatní klíče
se stanou proměnnými hovoru. Uzel selže, pokud jsou odmítnuty všechny kontakty, a nastaví
partial_success: true, pokud jsou odmítnuty jen některé. Spustit vyžaduje zaškrtávací políčko
potvrzující, že kampaň uskutečňuje skutečné hovory a spotřebovává kredity ThunderPhone.
Viz Odchozí kampaně.
Předtím, než workflow začne uskutečňovat hovory:
- Pokud ThunderPhone požádá vaši organizaci o potvrzení, že její odchozí hovory dodržují TCPA a další zákony pro volání, musí správce toto potvrzení nejprve zaznamenat na řídicím panelu.
- Číslo volajícího musí být povoleno pro odchozí hovory. Čísla, která si přenesete od vlastního operátora, jsou způsobilá po ověření. Čísla ThunderPhone začínají pouze pro příchozí hovory a mohou být schválena pro odchozí použití: správce o to požádá na stránce Telefonní čísla. Viz Získání telefonního čísla.
- Vaše organizace odpovídá za získání souhlasu k volání na každé číslo a za dodržování příslušných zákonů pro volání. Viz Zákony pro odchozí volání.
Příklady workflow
- Kontakty CRM do kampaně. Přidejte kontakty CRM do konceptu kampaně ThunderPhone a poté kampaň spusťte, jakmile někdo schválí seznam.
- Dokončený hovor do záznamu zákazníka. Při dokončení hovoru spusťte Získat hovor a uložte přepis a odkaz na nahrávku do odpovídajícího záznamu zákazníka.
- Nízké hodnocení ke kontrole. Při vyhodnocení hovoru filtrujte podle
{{ $json.data.grade.score }}a směrujte hovory s nízkým skóre do fronty ke kontrole s ID hovoru a podrobnostmi hodnocení. Hovor může být vyhodnocen vícekrát a každé dokončené vyhodnocení spustí spouštěč, proto uchovávejte pouze nejnovějšígraded_atpro každé ID hovoru.
Přepisy hovorů, shrnutí a nahrávky mohou obsahovat osobní nebo zdravotní údaje. Odesílejte je pouze do aplikací, které vaše organizace smí pro tato data používat, při zapojení zdravotních údajů na základě BAA, a uchovávejte pouze pole, která potřebujete.