Načítám článek…
AI voicebot na Facebook leady: jak si nechat kvalifikovat poptávky telefonem
AI voicebot na Facebook leady je hlasový asistent, který zavolá člověku hned poté, co odešle lead formulář z tvojí reklamy, zjistí od něj zadání a rozpočet a rovnou mu zapíše schůzku do kalendáře. Lead je tak kvalifikovaný dřív, než se k němu vůbec dostaneš.
Tady u nás v Česku a na Slovensku to zatím nikdo nedělá, protože to donedávna ani nešlo. Dneska to jde. Není to ještě dokonalé - a přesně o tom je tenhle článek, včetně věcí, které mi na tom pořád drhnou.
Jak celý tok vypadá krok za krokem?
- Člověk klikne na reklamu na Facebooku a otevře se mu lead formulář. Sbírám jméno, e-mail a hlavně telefonní číslo. Ve formuláři je i souhlas s tím, že mu zavolá voicebot.
- Odeslání formuláře spustí scénář v Make přes modul „New Lead", který hlídá nové leady z formuláře.
- Kontakt se uloží do Airtable a zároveň teče do CRM (my používáme GoHighLevel, ale funguje to v jakémkoliv).
- Modul Vapi - Create Outbound Phone Call spustí hovor. Voicebot volá.
- Bot si během hovoru vytáhne, co člověk poptává, jaký má rozpočet a jestli chce online hovor nebo telefon. Data pošle webhookem zpátky do Make.
- Make zkontroluje Google Kalendář a buď vytvoří událost, nebo nabídne alternativní termíny.
- Na konec odejde potvrzovací e-mail s detailem schůzky a odkazem na přeplánování.
Celé to běží bez toho, abych u toho seděl. Když se to povede, člověk, který před minutou klikl na reklamu, má domluvenou půlhodinovou konzultaci.
Jaké nástroje na to potřebuješ?
| Nástroj | K čemu v toku slouží |
|---|---|
| Meta Business Manager | Reklama a hlavně lead formulář - bez něj celý tok nezačne |
| Make | Mozek celé automatizace, spouští hovor a řeší kalendář |
| Vapi | Platforma, na které stojí samotný voicebot |
| Airtable | Mezisklad dat z formuláře, ať se pro ně dá jednoduše sáhnout |
| Google Kalendář | Kontrola volných slotů a založení schůzky |
| CRM (GoHighLevel) | Kontakt a nová příležitost, ať lead nespadne pod stůl |
| ElevenLabs nebo OpenAI hlas | Český hlas bota |
Jak nastavit volání z Make do Vapi?
Modul Create Outbound Phone Call potřebuje tři věci a všechny najdeš přímo ve Vapi:
- Assistant ID - identifikátor konkrétního voicebota. Najdeš ho ve Vapi pod názvem asistenta, zkopíruješ a vložíš do modulu.
- Phone Number ID - číslo, ze kterého bot volá. To je to, co se člověku ukáže na displeji. Bere se v sekci Phone Numbers, ne v Assistants.
- Customer phone number - číslo, na které bot volá. To přichází z lead formuláře.
A to je celé. Tahle část je jednoduchá. Jakmile ji máš, voicebot volá hned po odeslání formuláře. Ta těžší část přichází až potom - docílit, aby to celé fungovalo dobře.
Co si má voicebot z hovoru vytáhnout?
Data z hovoru se posílají webhookem. Webhook je v podstatě URL adresa, na kterou bot pošle to, co zjistil. Ve Vapi to nastavíš jako nástroj (dřív se tomu říkalo function, dneska Tools) - u mě se jmenuje get_user_info_FB.
V nástroji si nadefinuješ jednotlivé properties, tedy co má bot zachytit, v jakém formátu a co je povinné:
| Property | Co zjišťuje | Formát |
|---|---|---|
| budget | Rozpočet na řešení | string |
| solutions | Co konkrétně poptává | string |
| meeting type | Online videohovor, nebo telefon | string |
| booking time | Kdy chce schůzku | string |
Označení required je tady zásadní věc. Když nastavíš všechny čtyři jako povinné, bot jede po pořadě a nepustí se dál, dokud mu nepotvrdíš třeba rozpočet. To je přesně to, co z obyčejného ukecaného bota dělá kvalifikaci leadu.
V system promptu mám roli, co nabízíme a pět kroků, kterými má hovor projít: zjistit, jaký problém člověk řeší, jaký má rozpočet, nabídnout termín konzultace a upřesnit typ schůzky.
Jak řešit obsazený termín v kalendáři?
Scénář v Make se v tomhle místě dělí na dvě větve. Nejdřív si modul sáhne do Google Kalendáře a zjistí, jestli je požadovaný slot volný. Schůzku mám nastavenou na 30 minut.
- Slot je volný: Create an Event rovnou založí schůzku. Do názvu si dávám jméno, rozpočet, poptávané řešení a typ schůzky, ať na první dobrou vidím, s kým mám hovor a o čem bude.
- Slot je obsazený: scénář hledá alternativní časy blízko toho původního, nabídne dva až tři volné sloty a bot je člověku rovnou v hovoru nabídne.
Bez té druhé větve by se ti stalo, že si dva lidi zabookují stejný termín. A jedna nenápadná past: potřebuješ, aby model věděl, co je „teď". Změna času nám to jednou rozhodila, takže mám v promptu explicitně definované aktuální datum i přesný výstupní formát, aby se to dalo strčit do Google Kalendáře.
Proč nebrat e-mailovou adresu od voicebota?
Tohle je věc, na kterou přijdeš až v provozu. Když se voicebot zeptá člověka na e-mail, prostě to nedá. Neslyší, komolí to, dělá chyby. Odhadem to zvládne tak ve 30 procentech případů.
Proto e-mail beru z lead formuláře, ne z hovoru. Přesně kvůli tomu tam mám ten mezikrok s Airtable - je to nejjednodušší místo, kam si během scénáře sáhnout pro data, která už mám. Teoreticky je zbytečný, protože stejné údaje jsou i ve Facebooku a v CRM, ale s CRM jsem se v tomhle kroku nedomluvil a Airtable prostě fungoval.
Obecné pravidlo: přesné údaje ber z formuláře, měkké informace z hovoru. Voicebot je skvělý na zjišťování záměru a rozpočtu, ne na diktování znaků.
Jak vypadá potvrzovací e-mail?
Po založení schůzky odchází potvrzovací e-mail přes Gmail. Obsahuje detail schůzky (datum, čas, délku 30 minut) a tlačítko, které člověka vezme na můj kalendář, aby si mohl termín přeplánovat, kdyby se něco pokazilo.
Nechtěl jsem posílat kopu holého textu, tak jsem šel do Clauda s promptem ve stylu „napiš mi potvrzovací e-mail, který potvrdí rezervovanou schůzku, naformátuj to hezky do HTML a CSS". Vyhodil kód, ten jsem vložil do posledního modulu v Make a doladil barvy. Žádná velká věda.
Jeden modul navíc tam mám kvůli formátu času. Surové datum ze scénáře nikdo nepřečte, takže ho model převede zpátky do lidské řeči a teprve to jde do mailu.
Kolik takové řešení stojí?
V ukázkovém hovoru bot na dotaz po ceně odpovídá, že voicebot na míru vychází od 80 000 Kč podle složitosti a počtu asistentů, které se nasazují. To je cena za nasazené řešení, ne za nástroje.
Na provozních nákladech se dá ušetřit u hlasu. Když zvolíš některý z hlasů od OpenAI, neplatíš je zvlášť jako u ElevenLabs - a některé z nich umí česky dobře. Je to výrazně levnější varianta, klidně to prozkoumej dřív, než se upneš na jedno řešení.
Kde to zatím drhne?
Tuhle část si nechci nechat pro sebe, protože bez ní by to byl jenom hezký demo klip.
- Bot občas nezavolá funkci. Stávalo se mi, že řekl člověku „vaše schůzka je potvrzená", ale nástroj nezavolal - takže scénář v Make vůbec neproběhl a v kalendáři nic nebylo. Řešení, které mi zabralo: mít v system promptu napsané na několika místech, že tu funkci musí zavolat vždycky.
- Testování je otravné. Facebook ti nedovolí otestovat stejný formulář víckrát za sebou. Testovací lead musíš pokaždé smazat v developer konzoli a formulář obnovit, jinak si to pamatuje, že už byl použitý.
- Vyladit to je těžší než postavit to. Samotné propojení modulů je otázka chvilky. Doladit prompt, formáty času a hraniční situace mi trvalo fakt dlouho a pořád to není stoprocentní.
Průběh každého hovoru si kontroluju ve Vapi v sekci Calls. U každého hovoru je kompletní přepis, nahrávka a Analysis, kde vidím, jestli byl hovor vyhodnocený jako úspěšný a co člověk během řeči zmínil. Bez téhle zpětné vazby to ladit nejde.
Pro koho to dává smysl a pro koho ne?
Dává to smysl, když ti z reklamy chodí víc leadů, než stíháš obvolat, a hodně z nich je mimo rozpočet. Voicebot ti je předtřídí a do kalendáře pustí jenom ty, které mají zadání a peníze.
Nedává to smysl, když máš pár leadů měsíčně a zavoláš je do hodiny sám. Pak si stavíš složitý systém na problém, který nemáš. A nesahej na to, dokud nemáš pořádek v datech - bot ti bordel v CRM jenom rychleji přečte.
Jsem zvědavý, jak to dopadne u ostatních. Kdo to bude testovat, dejte mi vědět, na čem jste narazili - rozebereme to zase příště.
Podívej se na celé video
Obsah tohoto blogu vzniká s pomocí AI z Martinových LinkedIn postů a videí na YouTube.