ThunderPhone 2.0 je tady.Spustíte sami, od 2 ¢/min.Přečíst oznámení

Connect tools & data

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íč

  1. Otevřete kartu Klíče

    V ThunderPhone přejděte do Organizace → Klíče a klikněte na Vytvořit klíč.

  2. Pojmenujte ho

    Použijte název, který uvádí, kde se klíč používá, například „n8n“.

  3. 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

  1. V n8n vytvořte přihlašovací údaje typu ThunderPhone API.
  2. Vložte klíč do pole API klíč.
  3. 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čí.

  1. 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.

  2. 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 s transcripts a recording_url, krátkodobým odkazem, který má hodnotu null, když hovor nemá nahrávku.

  3. 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).

  4. 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.

  5. 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:

SloupecVý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 hovorhttps://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:

PoleVýznam
Název nebo ID agentaUlož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říjemceCílové číslo ve formátu E.164, např. +14155552671.
ProměnnéObjekt JSON s hodnotami pro zástupné symboly ve výzvě agenta.
Klíč idempotenceStabilní 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: true namí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_at pro 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.