Postav asistenta pro rezervaci termínů přes WhatsApp, který odpoví na dotaz k opravě kola, nabídne aktuální volné časy a vytvoří potvrzený termín v Calendly. Zákazník se zeptá na službu, vybere si čas a v téže konverzaci na WhatsAppu uvede své údaje.
Příkladem je Harbor Cycle Workshop, fiktivní firma, která nabízí bezplatné 15minutové Repair assessment (posouzení opravy). V našem kontrolovaném testu na WhatsAppu si zákazník vybral 10:00 dne 27. října 2026 v pásmu Europe/London. Doručené potvrzení odpovídalo termínu v Calendly od 10:00 do 10:15.


Skutečné snímky obrazovky z mobilního WhatsAppu. Potvrzení odpovídalo nezávisle ověřenému termínu v Calendly. E-maily a údaje osobních odkazů jsou skryté; názvy kontaktů jsou sjednocené na název dílny.
Co bude rezervační asistent pro WhatsApp dělat?
Zákazník ve WhatsAppu projde třemi kroky:
| Krok zákazníka | Co udělá Agent |
|---|---|
| Zeptá se na opravu defektu | Vysvětlí výchozí cenu práce 12 £, příplatek za díly a bezplatné posouzení |
| Požádá o termín posouzení | Načte dostupnost z Calendly a nabídne časy v časovém pásmu dílny |
| Vybere si nabídnutý čas a uvede jméno a e-mail | Vytvoří požadovaný termín v Calendly a vrátí jeho potvrzení a odkazy pro správu |
Postavíš to v šesti krocích: přidáš znalosti dílny, připravíš událost v Calendly, připojíš její nástroje, nastavíš instrukce pro rezervaci, otestuješ celou konverzaci a zopakuješ ji na WhatsAppu. MCP (Model Context Protocol) je propojení, které Agentovi umožňuje používat nástroje Calendly pro dostupnost a rezervace.
Co budeš potřebovat
- Vytvoř si účet Quickchat AI a pokud k tomu budeš vyzván, ověř svůj e-mail. Firemní nasazení potřebuje komerční plán a AI kredity; odpovědi v AI Preview a Simulation Testing také spotřebovávají kredity. Podívej se na ceník Quickchat AI.
- Používej Calendly v plánu Standard nebo vyšším. Jeho reference Booking API vyžaduje pro vytváření termínů placený plán, i když je samotné připojení přes MCP zdarma.
- Měj přístup k zamýšlenému firemnímu účtu Meta a číslu WhatsApp Business Platform. Postupuj podle podporovaného ověřovacího procesu a zkontroluj sazby Meta za zprávy.
- Připrav si kontrolovaný zákaznický telefon a testovací e-mailovou schránku. Testovací termíny označuj a ruš. Před nasazením nahraď fiktivní firemní údaje.
Stáhni si sadu Harbor Cycle Workshop s přesným Main Promptem, pěti zdrojovými články, nastavením Calendly, textem předání a testovacími vstupy. Jsou to upravitelné soubory nastavení, ne import jedním kliknutím. Main Prompt a znalostní zdroje najdeš také na konci tohoto návodu.
Nejdřív vše postav a otestuj v AI Preview, potom konverzaci zopakuj na WhatsAppu. Pokud chceš část nastavení delegovat, použij volitelný postup s ChatGPT nebo Claude se stejnou sadou.
Krok 1: Dej Agentovi znalosti dílny
Pět krátkých článků dává Agentovi fakta o službách a zároveň odděluje ceny, otevírací dobu a rezervovatelné časy.
Znalosti dílny používej pro stálá fakta a Calendly pro aktuální časy.
- Při nastavení účtu zvol variantu s popisem. Zadej „Servisní asistent pro Harbor Cycle Workshop, který odpovídá na dotazy k opravám kol a rezervuje 15minutové Repair assessment“ a potom vyber Create my AI Agent.
- Pokračuj přes Next. Vyber plán nebo zvol Skip for now a dokonči konfiguraci. Otevři Identity a nastav název na Harbor Cycle Workshop.
- Otevři Knowledge Base > Add Article. Do Create custom article zadej název prvního zdroje a potom vyber Create article.
- V Edit Article vlož celý zdroj do pole Content, vyber Save a počkej na stav Ready. Zopakuj to pro zbývající čtyři zdroje. Každé uložení článek zpracuje.
Vlož celý zdroj do pole Content, ulož ho a zkontroluj zpracování. Lokální editor zobrazuje začátek článku o službách.
| Zdroj ke zkopírování | Co stanovuje |
|---|---|
| 1. Služby | Bezplatné 15minutové posouzení je prohlídka, ne rezervovaná oprava |
| 2. Orientační ceny | Výchozí ceny práce a příplatky za díly |
| 3. Otevírací doba a termíny | Otevírací doba, rozvrh termínů a aktuální dostupnost jsou tři různé věci |
| 4. Adresa a kontakt | Místo osobní návštěvy a cesta k týmu dílny |
| 5. Lidská pomoc a limity rezervací | Potvrzení, nejisté výsledky, odkazy pro správu a záložní řešení |
Kompletní bloky najdeš v příloze se znalostními zdroji ke zkopírování a ve složce knowledge/ v sadě.
Až budeš upravovat vlastní schválenou dokumentaci, nech skladové zásoby, konečné cenové nabídky a termíny dokončení na týmu dílny.
Zkontroluj první výsledek: až bude všech pět zdrojů ve stavu Ready, zeptej se v AI Preview: „Mám na kole defekt. Kolik to může stát a co zahrnuje posouzení?“ Hledej výchozí cenu práce 12 £, díly účtované zvlášť a posouzení, které nerezervuje opravu.

Krok 2: Připrav termín v Calendly
Vytvoř jednu událost Repair assessment s pevnou délkou, místem a rozvrhem. Agent bude identifikátor této události používat pro dostupnost i rezervace.
| Nastavení v Calendly | Hodnota v ukázce |
|---|---|
| Název a typ události | Repair assessment; jeden hostitel a jeden zákazník |
| Délka | 15 minut |
| Místo | 14 Workshop Lane, Bristol, Spojené království, výslovně fiktivní |
| Časové pásmo dostupnosti | Europe/London |
| Úterý až pátek | 10:00 až 16:00 |
| Sobota | 10:00 až 13:00 |
| Pondělí a neděle | Nedostupné |
| Platba a další povinné otázky | Žádné |
- V Calendly otevři Scheduling a uprav zamýšlenou událost, nebo vyber + Create pro novou událost typu one-on-one. Vyplň Event name, Duration, Location a Availability a potom vyber Save changes. Ovládací prvky vysvětluje návod Calendly k nastavení události.
- Připoj kalendář, ve kterém má Calendly kontrolovat kolize. Nastav vlastní časové pásmo a hodiny dostupnosti události a potom přidej skutečné výjimky pro svátky a limity rezervací. Neměň sdílený rozvrh, který používají jiné události.
- V More options > Notifications and automations uprav základní e-mailové oznámení nebo pozvánku do kalendáře. Zapni Include cancel and reschedule links in email invitations and reminders a ulož. Tyto osobní odkazy pro správu dávají zákazníkům další cestu, jak svůj termín spravovat.
- Otevři veřejnou stránku události a zkontroluj její název, 15minutovou délku, adresu a dostupné dny. V Scheduling použij Copy link pro tuto konkrétní událost a odkaz si uchovej jako záložní URL pro krok 4.
Zkontroluj název, délku a místo posouzení na jeho veřejné rezervační stránce. Toto je skutečná ukázková událost.
Dílna otevírá v 09:00, ale posouzení začínají v 10:00. O tom, které termíny může Agent nabídnout, rozhodují rozvrh události v Calendly a připojený kalendář.
Krok 3: Připoj Calendly a omez jeho nástroje
Připojení Calendly přes MCP dává Agentovi pojmenované operace. Zapni čtecí operace potřebné k nalezení události a jejích časů a rezervaci přidej teprve tehdy, až budou hotové instrukce i kontroly.
Princip: WhatsApp přenáší konverzaci; Quickchat AI odpovídá na dotazy k servisu a pomocí Calendly hledá časy a vytváří termín.
Připoj se a nastav seznam nástrojů
- Otevři Actions & MCPs > Add Action > MCP, v katalogu vyber Calendly a dokonči autorizaci s kontrolovaným účtem.
Účet autorizuješ volbou Connect with Calendly. Skutečná obrazovka lokálního nastavení.
- Vytvořenou Action otevři přes Edit Action. Nastav MCP action name na Harbor Cycle Workshop appointments.
- V části Tools nastav Default tool activation na Vypnuto, potom použij tabulku níže a vyber Save. Pokud použiješ Use recommended, zkontroluj výsledné přepínače: jeho nástroj pro rušení není součástí tohoto postupu.
| Nástroj | Během nastavení | Během testu rezervace |
|---|---|---|
users-get_current_user | Zapnuto | Zapnuto |
event_types-list_event_types | Zapnuto | Zapnuto |
event_types-list_event_type_available_times | Zapnuto | Zapnuto |
meetings-create_invitee | Vypnuto | Zapnuto, po kroku 4 a testech služeb |
meetings-cancel_event a všechny ostatní nástroje Calendly | Vypnuto | Vypnuto |
| Default tool activation | Vypnuto | Vypnuto |
Rezervaci zapni pro krok 5; během počátečního nastavení ji nech vypnutou. Rušení a Default tool activation zůstávají vypnuté. Příklad lokálního nastavení.
Přepínače nástrojů určují dostupné operace. Main Prompt určuje událost dílny, požadované údaje zákazníka a okamžik, kdy rezervovat.
Zkopíruj identifikátor události bez hádání
Než nahradíš dvě hodnoty správce v promptu, začni novou konverzaci v AI Preview jen se třemi zapnutými nástroji pro čtení. Tento požadavek pro nastavení si vyžádá podrobnosti o události, aniž by kontroloval časy nebo vytvářel termín:
Zkopíruj požadavek na vyhledání události jen pro čtení
Find the active Repair assessment event lasting 15 minutes in my connected Calendly account. Look up the account owner first and copy the returned owner URI unchanged when listing their events. Follow pagination if needed. Return the exact name, duration, uri and scheduling_url in one plain-text code block. Copy both URLs in full. If there is not exactly one match, stop and explain. Do not create, change or cancel anything.
Najeď myší na odpověď a vyber Copy. Porovnej název, délku a veřejný odkaz s událostí z kroku 2. Kompletní uri a scheduling_url si uchovej pro dvě nastavení promptu níže. Pokud je vyhledání nejednoznačné nebo selže, vyřeš to dřív, než zapneš rezervaci.
uri použij pro volání nástrojů a scheduling_url pro záložní stránku. Obě hodnoty zkopíruj z odpovědi celé, včetně https://.
Ulož údaje o rezervaci pro pozdější zprávy
Rozbal meetings-create_invitee, i když je jeho přepínač vypnutý, a zobrazí se Save to memory. Potvrď tyto řádky a vyber Save:
| Výraz JSONPath | Klíč v paměti |
|---|---|
$.resource.event | calendly_event_uri |
$.resource.cancel_url | calendly_cancel_url |
$.resource.reschedule_url | calendly_reschedule_url |
Každý výraz JSONPath vybírá pole odpovědi; jeho klíč v paměti zpřístupní tuto hodnotu pozdějším zprávám. Příklad lokálního nastavení.
Po rezervaci by dotaz „Můžu změnit čas?“ měl vrátit uložený odkaz pro změnu tohoto termínu. Krok 5 tuto konkrétní hodnotu kontroluje bez další rezervace a bez vyhledávání podle e-mailu.
Pro časy termínů dílny používej Europe/London. Quickchat AI převádí místní datum a čas v kódu a vrací označené možnosti. Agent rezervuje podle možnosti, kterou si zákazník vybral.
Jak se vyplňují pole události a termínu
Když je zapnutá dostupnost i rezervace, nástroje Calendly přijímají místní datum a čas a explicitní časové pásmo. Quickchat AI se postará o převod na UTC a vybraný volný čas před odesláním do Calendly ještě jednou ověří. Názvy nástrojů zůstávají stejné.
| Hodnota | Odkud pochází | Kam směřuje |
|---|---|---|
| Schválený identifikátor události | Ověřené vyhledání události | event_type pro dostupnost a post_invitee_request.event_type pro rezervaci |
| Požadovaný rozsah dnů | Od půlnoci požadovaného dne do půlnoci následujícího kalendářního dne | local_start_time, local_end_time a timezone pro dostupnost |
| Nabídnutý místní čas | Vrácený display_time každé možnosti | Volba zákazníka a potvrzení rezervace |
| Vybraný termín | local_start_time dané možnosti včetně posunu a timezone | post_invitee_request.local_start_time a booking_timezone pro rezervaci |
| Údaje zákazníka | Jméno, e-mail a potvrzené pásmo zákazníka | post_invitee_request.invitee |
| Pevné fyzické místo | Konfigurace události a dílny | post_invitee_request.location |
Jasný požadavek na nabídnutý čas spolu s požadovanými údaji zákazníka stačí k pokračování. Pokud je požadavek váhavý nebo nejasný, Agent si nejdřív vyžádá potvrzení. Quickchat AI porovná zvolený okamžik s aktuální dostupností a pošle Calendly jeho původní časové razítko.
Krok 4: Nastav instrukce pro rezervaci a cestu k týmu dílny
Main Prompt spojuje fakta o službách a kalendářové nástroje do jedné konverzace: zkontroluj časy, získej jasnou volbu a požadované údaje, rezervuj a potom potvrď výsledek. „Beru 10:00“ spolu se jménem a e-mailem zákazníka může požadavek dokončit. Váhavá volba nebo chybějící údaj vyvolá před rezervací otázku.

Vlož kompletní Main Prompt
Otevři Identity > Main Prompt a vlož kompletní Main Prompt, který je v sadě také jako main-prompt.txt. NOT CONFIGURED nahraď pouze na těchto dvou řádcích s nastavením:
| Nastavení v promptu | Hodnota k vložení |
|---|---|
| Approved Calendly event type URI | Kompletní uri z kroku 3 |
| Approved Calendly booking link | Ověřená veřejná scheduling_url |
Pozdější ochrannou větu nech beze změny. Main Prompt se ukládá automaticky; počkej na dokončení ukládání a znovu ho otevři, abys zkontroloval uložený text. Fiktivní adresa se objevuje ve znalostech, v události i v instrukci pro rezervaci. Pro skutečnou dílnu aktualizuj všechny tři zároveň.
V Main Promptu nastav URI události a záložní odkaz pro rezervaci a potom zkontroluj uložené hodnoty. Skutečný lokální editor.
Nakonfiguruj Human Handoff
Otevři Actions & MCPs > Human Handoff, zapni ho a zapni také AI summary. V Handoff Rules přidej tlačítkem plus pravidlo Workshop handoff, zapni ho a do Description vlož následující text:
Zkopíruj Description pro Workshop handoff
Offer Human Handoff when the customer asks for a person; needs a final quote, parts availability or repair completion date; describes unsafe brakes, crash or frame damage, or an e-bike battery problem; or encounters a booking failure, uncertain booking result or problem with an existing appointment. Do not diagnose the bicycle, invent availability or claim that a booking was made or changed.
Question nastav na:
Would you like me to pass this conversation to the workshop team?
Confirmation nastav na:
Your conversation has been flagged for the workshop team to review. A member of staff can reply here when available. This handoff has not booked an appointment.
Question se před předáním zeptá; Confirmation vysvětluje, že tým může odpovědět a že žádný termín nebyl rezervován. Příklad lokálního nastavení.
Nech zapnuté chování pro výslovnou žádost uživatele i Lack of knowledge. Human Agents’ availability nech bez omezení, aby se zákazníci mohli zařadit do fronty, i když je tým offline. Email notifications používej jen se skutečnou sledovanou adresou; fiktivní adresa .example je přijímat nemůže. Nastavení ulož.
Tuto cestu k týmu otestuj po rezervační konverzaci v kroku 6.
Krok 5: Otestuj konverzaci a výsledek v kalendáři
Nejdřív spusť čtyři dotazy k servisu a potom dokonči jednu rezervační konverzaci v AI Preview. Než konverzaci přeneseš na WhatsApp, zkontroluj termín v Calendly.
Zkontroluj odpovědi k servisu v Simulation Testing
Během kontroly čtyř dotazů k servisu nech meetings-create_invitee vypnutý.
Otevři Testing a vytvoř nebo najdi dataset dílny. Příklad lokální konfigurace.
- V postranním panelu otevři Testing. Stránka má název Simulation Testing.
- Zvol Create Dataset > Paste messages a pojmenuj ho Workshop service checks.
- Vlož tyto čtyři zprávy oddělené řádkem obsahujícím pouze
---a potom vyber Create:
Zkopíruj čtyři testovací zprávy k servisu
My bike has a puncture. How much might it cost, and what does the assessment cover?
---
Are you open on Monday? Can I bring my bike on Saturday?
---
Do you have my inner tube in stock, and can you finish the repair tomorrow?
---
What should I bring to my Repair assessment?
Otevři dataset, vlož následující text do Evaluation criteria a vyber Save:
Zkopíruj kritéria hodnocení pro servis
Check service facts against the workshop knowledge. Puncture labour starts at £12 with parts extra. The free Repair assessment is 15 minutes and is not a repair reservation. Monday is closed. Saturday opening hours are 09:00 to 14:00 Europe/London, not evidence of available appointments. Do not promise stock, final prices, repair completion dates or that an unsafe bicycle is safe. Score the visible reply only; inspect Action calls and Calendly separately to verify bookings.
Čtyři dotazy k servisu v lokálním datasetu, připravené na první běh.
Spuštění a kontrola testů:
- Vyber Run, dej běhu označení, například
workshop service baseline, zkontroluj zobrazenou cenu v kreditech a vyber Start Run. - Otevři dokončený běh a přečti si každou odpověď, AI Score i zdůvodnění hodnocení. Konverzaci si prohlédneš přes View.
- Případné přiřazení při předání a shrnutí zkontroluj v Inbox.
Každá položka datasetu zahajuje novou konverzaci. Pro rezervaci použij souvislý test v AI Preview níže. Návod k testování agenta podpory vysvětluje, jak po úpravě porovnat běhy.
Projdi jednu kompletní rezervační konverzaci
Načti dostupnost, zjisti požadovaný termín a získej jeho údaje. Rezervaci potvrď teprve tehdy, až Calendly vrátí úspěch.
Po dokončení kroků 1–4 a kontrol služeb zapni meetings-create_invitee v Tools, vyber Save a začni novou konverzaci v AI Preview. Použij budoucí datum v rozsahu rezervací události a e-mailovou schránku, kterou máš pod kontrolou.
| Pošli v tomto pořadí | Očekávaný výsledek |
|---|---|
| „Mám defekt na zadním kole. Kolik stojí oprava?“ | Výchozí cena práce, díly zvlášť a žádná závazná cenová nabídka |
| „Chtěl bych Repair assessment dne [celé budoucí datum], v pásmu Europe/London.“ | Volné časy v požadovaný den, označené v časovém pásmu dílny |
| „Beru možnost [číslo]. Jmenuji se [testovací jméno], můj e-mail je [e-mail pod tvou kontrolou].“ | Jeden termín odpovídající vybranému datu a času a následně jeho potvrzení |
| „Můžete mi poslat odkaz na změnu času?“ | Uložená URL pro změnu termínu, bez nové rezervace |
| „Co si mám vzít s sebou?“ | Rady k přípravě ze znalostí dílny |
Pokyny v hranatých závorkách nahraď svými testovacími hodnotami. Celé datum a časové pásmo uváděj výslovně. Pokud nějaký údaj chybí nebo je požadavek nejasný, odpověz na otázku Agenta, než budeš pokračovat; Agent si nemá vymýšlet jméno, e-mail ani volbu termínu.
Zkontroluj termín a navazující dotazy
- V odpovídající konverzaci v Inbox rozbal indikátor volání Action. Zkontroluj, že volání rezervace následuje po jasné volbě a požadovaných údajích zákazníka.
- Otevři termín v Calendly. Porovnej jeho událost, celé datum, časové pásmo, délku, místo a testovacího zákazníka s požadovaným termínem a doručeným potvrzením.
- Požádej o odkaz pro změnu termínu a o rady k přípravě. Odkaz porovnej s Inbox > Details > Memory, jak ukazuje návod ke kontrole níže.
Rozbal volanou Action a prohlédni si její vstupy a výsledek. Lokální testovací data se syntetickou odpovědí rezervace.
Porovnej vybrané datum, čas a pásmo se záznamem poskytovatele a potom kontrolovaný test ukliď.
Prohlédni si log Action a uložené odkazy rezervace
Historii Action najdeš tak, že otevřeš Actions & MCPs a u Harbor Cycle Workshop appointments vybereš View logs. Otevři volání rezervace a v Parameters sent zkontroluj identifikátor události, post_invitee_request.local_start_time a booking_timezone, pokud jsou vidět. Nejdřív volání přiřaď k jeho konverzaci a teprve potom ho porovnej s volbou a údaji zákazníka.
Na kartě Action zvol View logs a najdeš zaznamenaná volání. Lokální testovací data.
Viditelné Parameters sent porovnej s vybraným termínem. Lokální testovací data se syntetickým požadavkem na rezervaci.
Otevři termín v Calendly, zobraz si všechny jeho údaje a porovnej je s termínem, který zákazník požadoval. Tato tabulka mapuje tyto údaje na pole rezervace:
| Požadovaný údaj | Požadavek na rezervaci | Uložený termín |
|---|---|---|
| Repair assessment, 15 minut | Schválený event_type | Správná událost a délka |
| Celé datum, čas a pásmo | Vybraný local_start_time a booking_timezone; timezone pozvaného zvlášť | Stejný okamžik s ohledem na zobrazované pásmo správce |
| Jméno a e-mail | invitee | Zamýšlený testovací zákazník |
| Adresa dílny | Fyzická location | Stejné místo osobní návštěvy |
U dotazu „Můžete mi poslat odkaz na změnu času?“ otevři Inbox > Details > Memory. Najeď myší na Calendly Reschedule Url, vyber Copy a porovnej celou hodnotu s cílem odkazu v odpovědi.
Otevři Memory a přes Copy zkopíruj celý uložený odkaz. Lokální testovací data s nefunkčními ukázkovými URL.
Tím ověříš získání odkazu z této konverzace. Neprokazuje to, že zákazník změnu termínu dokončil.
Zkontroluj datum a časové pásmo
Pro tento osobní termín používej celé datum včetně roku a pásmo Europe/London. Londýn přechází mezi britským letním časem a GMT, takže stejný čas na hodinách může odpovídat různým časům UTC. Integrace Calendly v Quickchat AI tento převod řeší v kódu a rezervuje s odpovídajícím časovým razítkem, které vrátí Calendly.
Stejný londýnský čas na hodinách odpovídá před změnou času a po ní různým časům UTC.
Když termín čteš v Calendly, při porovnání s časem zvoleným zákazníkem zohledni časové pásmo, které Calendly zobrazuje. V den změny času musí dotaz na dostupnost pokrýt celý místní den: jeho dvě půlnoční hranice mohou být od sebe 23 nebo 25 hodin. Pokud se hodina liší, oprav zpracování data nebo pásma a před další rezervací kontrolu zopakuj.
Zkontroluj změny data, nedostupné časy a další okrajové případy
| Kontrola | Správný výsledek |
|---|---|
| Změna data po výběru času | Nová dostupnost a jasná volba nového termínu před rezervací |
| Žádost o 09:00, protože dílna má otevřeno | Žádný vymyšlený volný čas; použije se skutečná dostupnost posouzení |
| Neuvedení e-mailu nebo „10:00 by možná šlo“ | Otázka na chybějící údaj nebo jasný záměr; zatím žádná rezervace |
| Pouhé „ano“ bez jasně určeného aktuálního termínu | Upřesnění, ne nová rezervace |
| Opakované „ano“ nebo žádost o odkaz pro správu po úspěšné rezervaci | Potvrzení existujícího termínu; žádná druhá rezervace |
| Žádost o nedostupné datum nebo obsazený čas | Žádná nabídka neexistujícího volného času a žádné tvrzení, že alternativy jsou blokované nebo rezervované |
| Žádost o vyhledání cizí rezervace podle e-mailu | Žádné vyhledávání ani zpřístupnění údajů |
| Popis poškození po nehodě nebo brzd, které mohou být nebezpečné | Žádné ujištění o bezpečnosti na dálku; doporučení nejezdit a pomoc týmu |
Tam, kde by předání test ukončilo, použij samostatné konverzace. Pokud jsou k testování dostupné, zahrň jedno datum v letním čase a jedno v zimním čase.
Řešení testu, který se nedokončí
| Příznak | Co zkontrolovat | Další krok |
|---|---|---|
| Žádné časy pro den, který vypadá otevřený | Aktivace události, rozvrh události, kalendář kolizí a požadovaný rozsah místních dnů a pásmo | Zkontroluj skutečnou dostupnost události; otevírací doba dílny volné časy nevytváří |
| Odpověď nebo termín se liší o hodinu | Vrácený display_time, schválené místní datum/pásmo, vybraný local_start_time, booking_timezone a zobrazované pásmo poskytovatele | Zastav testy rezervací, najdi první nesoulad a před dalším zápisem zopakuj kontrolu místního času |
| Calendly rezervaci odmítne | Skutečná chyba, oprávnění plánu k rezervacím a povinná pole události | Oprav konkrétní konfiguraci nebo chybějící pole; selhání nevyvozuj jen z chatu |
| Výsledek je nejistý | Historie volání a skutečný termín v Calendly | Před jakýmkoli opakováním nebo odesláním přes veřejnou stránku nech tým zjistit, jestli rezervace existuje |
| Chybí odkaz pro změnu termínu | Zachycení odpovědi rezervace a Details > Memory ve stejné konverzaci | Zkontroluj tři cesty v paměti; pokud se žádný odkaz nezachytil, použij potvrzení zákazníka nebo tým |
| WhatsApp neposílá žádnou odpověď | Odpovídající položka v Inboxu, stav připojení/doručení, zbývající kredity a přiřazená osoba | Vyřeš problémy s doručením nebo kredity; pokud dokončené předání stále pozastavuje odpovědi, vrať přiřazení na AI Agent |
| Odpověď týmu nelze odeslat | Čas poslední zprávy zákazníka | Před odesláním běžné odpovědi zkontroluj 24hodinové okno popsané v kroku 6 |
Návod ke spolehlivosti akcí vysvětluje, jak dohledat výsledek k příslušné instrukci, volání a uloženému záznamu. Po změně zopakuj dotčený případ i běžnou rezervační konverzaci.
Označený testovací termín z AI Preview po zaznamenání výsledku zruš a zrušení ověř v Calendly.
Krok 6: Dokonči rezervaci přímo ve WhatsAppu
Připoj otestovaného Agenta k firemnímu číslu a potom z kontrolovaného zákaznického telefonu projdi stejnou konverzaci od dotazu k servisu až po rezervaci.
Skutečný lokální panel nastavení zobrazuje možnosti čísla před připojením. Vyber variantu, která odpovídá tvému číslu.
- Otevři Channels > External Apps > WhatsApp a vyber Connect WhatsApp. Dokonči podporované nastavení účtu a čísla od Meta. Aktuální možnosti ověření popisuje dokumentace k připojení WhatsAppu.
- Ověř, že je zamýšlené číslo pro tohoto Agenta zapnuté. Z testovacího telefonu pošli dotaz k servisu jako zákazník a prohlédni si doručenou odpověď i její konverzaci v Inboxu.
- V nastavení kanálu hledej stav AI reply delivered. Waiting for your first message a Waiting for the AI reply to be delivered jsou přechodné stavy.
- Ve stejné konverzaci pokračuj rezervační sekvencí z kroku 5. Uveď celé datum a pásmo, jasně si vyber jeden z vrácených časů a zadej kontrolované jméno a e-mail. Zkontroluj potvrzení v telefonu a odpovídající volání rezervace v Inboxu.
- Otevři termín v Calendly. Porovnej jeho událost, datum, časové pásmo, okamžik, délku a pozvaného s požadavkem a potvrzením z WhatsAppu.
V našem testu na WhatsAppu zákazník požádal o Repair assessment na 27. října 2026 v Londýně. Agent nabídl 10:00, 10:30 a 11:00:

Zákazník si potom vybral 10:00 a uvedl testovací jméno a e-mail. Další odpověď termín potvrdila a obsahovala odkazy Calendly pro správu:

Nezávislá kontrola v Calendly našla jedno odpovídající 15minutové posouzení se stejným datem, časem a testovacím zákazníkem. Po ověření jsme ho zrušili a potvrdili, že žádný odpovídající aktivní termín nezůstal.
Podívej se na odpovídající odpověď Calendly
Tento výňatek pochází ze skutečné události Calendly načtené před úklidem. Dne 27. října 2026 je Europe/London na GMT, takže 10:00:00Z je 10:00 v Londýně.
{
"resource": {
"name": "Repair assessment",
"status": "active",
"start_time": "2026-10-27T10:00:00Z",
"end_time": "2026-10-27T10:15:00Z"
}
}
Testovacího zákazníka a událost jsme porovnali zvlášť a termín potom zrušili. Soukromé identifikátory a odkazy pro správu jsou vynechané.
Ve stejném vlákně na WhatsAppu zakonči test dotazem „Co si mám vzít s sebou?“ a žádostí o uložený odkaz pro změnu termínu. Jako výsledek testu uchovej společně doručenou konverzaci a odpovídající termín v Calendly. Případné nakonfigurované e-mailové oznámení zkontroluj zvlášť v testovací schránce, potom označený termín zruš a zrušení ověř.
Zkontroluj předání týmu a návrat k Agentovi
Human Handoff testuj až po rezervační konverzaci, protože pozastavuje odpovědi AI. Konverzace ve frontě čeká, až se zapojí tým; nastav sledovanou frontu a neslibuj dobu odpovědi.
- Ze zákaznického telefonu požádej o rozhovor s člověkem.
- Otevři odpovídající konverzaci v Inbox a zkontroluj její přiřazení při předání a shrnutí AI. Vyber Assign to me.
- Přes Send message pošli odpověď týmu viditelnou pro zákazníka. Ověř, že stejná odpověď dorazí do telefonu, a zkontroluj její stav Delivered nebo Read. Interní poznámka není zpráva zákazníkovi.
- V rozbalovací nabídce přiřazení vyber AI Agent. Z telefonu znovu polož dotaz na přípravu a zkontroluj, že Agent znovu odpovídá.
WhatsApp povoluje běžné odpovědi do 24 hodin od poslední zprávy zákazníka. Nová zpráva od zákazníka toto okno obnoví. Po jeho uzavření musí správce počkat na další zprávu zákazníka nebo použít schválenou šablonu zprávy; běžné pole pro odpověď je vypnuté. Viz zásady Meta pro zasílání zpráv a průvodce Inboxem.
Poznámka AI Note dává týmu kontext konverzace. Dřívější lokální příklad předání; toto zobrazení si prohlédni po vlastním testu.
Použij veřejnou rezervační stránku, když rezervace v chatu nemůže pokračovat
Když rezervace v chatu nemůže pokračovat a žádný požadavek na rezervaci nezůstává nevyřešený, nabídni schválený odkaz na událost. Vysvětli, že zákazník si vybere čas, zadá své údaje a potvrdí je na Calendly. Měl by zkontrolovat časové pásmo zobrazené na stránce a konečné potvrzení. Agent nedostává žádný automatický doklad o tomto samostatném odeslání přes web.
Pokud už rezervace může existovat, nech to tým ověřit dřív, než to zkusíš znovu nebo pošleš zákazníka odeslat požadavek přes stránku. Pro pozdější změny použij odkaz pro správu uložený v této konverzaci nebo potvrzení zákazníka z Calendly; nástroj pro rušení nech vypnutý.
Než nastavení použiješ se zákazníky, nahraď fiktivní firemní údaje, zkontroluj výjimky v kalendáři a ujasni si, kdo sleduje frontu pro tým dílny. Po změně znalostí, promptu nebo nástrojů znovu spusť kontroly služeb a kompletní konverzaci.
Obecný návod k plánování s Calendly pokrývá širší práci s nástroji a pamětí; toto řešení přidává znalosti dílny a ověření na WhatsAppu.
Časté dotazy k rezervaci termínů přes WhatsApp
Mohou si zákazníci rezervovat termín v Calendly přímo ve WhatsAppu?
Ano. Quickchat AI umí nabídnout aktuální volné termíny z Calendly, získat jméno a e-mail zákazníka a vytvořit zvolený termín přímo v konverzaci na WhatsAppu. Veřejná rezervační stránka je záložní možnost, pokud rezervace v chatu nemůže pokračovat; otevření tohoto odkazu žádný čas nerezervuje.
Potřebuje zákazník účet Calendly?
Ne. Firma připojí svůj účet Calendly ke Quickchat AI. Zákazník si vybere jeden z nabídnutých časů a v konverzaci uvede své jméno a e-mail.
Můžu použít samostatnou aplikaci WhatsApp Business?
Tento Agent používá WhatsApp Business Platform přes připojení kanálu v Quickchat AI. Samostatná aplikace Business ho sama o sobě neprovozuje. Použij podporované možnosti čísla a ověření zobrazené během připojování.
Je rezervace termínů přes WhatsApp zdarma?
Vytváření termínů přes Booking API od Calendly vyžaduje plán Standard nebo vyšší, i když připojení k jeho MCP serveru může být zdarma. Nasazený firemní Agent navíc potřebuje komerční plán Quickchat AI a AI kredity. Poplatky Meta závisí na způsobu zasílání zpráv, kategorii a trhu příjemce.
Kdy je termín skutečně rezervovaný?
Až když zákazník jasně požádá o dostupný termín, uvede požadované údaje a Calendly úspěšně přijme požadavek na rezervaci. Nabídnutý čas ani samotná e-mailová adresa rezervaci nevytvoří. Porovnej potvrzení se skutečným termínem v Calendly.
Jak zákazníci termín zruší nebo změní?
Agent může sdílet osobní odkaz pro správu termínu uložený z rezervace, kterou v této konverzaci vytvořil. Pokud tento odkaz není k dispozici, zákazník použije své potvrzení z Calendly nebo se obrátí na tým dílny. Tento postup nechává nástroj pro rušení vypnutý a nevyhledává termíny podle napsané e-mailové adresy.
Bude to posílat připomínky termínů přes WhatsApp?
Tento postup pokrývá konverzace zahájené zákazníkem a vytváření termínů. Potvrzení z Calendly je něco jiného než připomínka na WhatsAppu. Plánované připomínky přes WhatsApp vyžadují samostatně otestovaný plánovač, souhlas příjemce, šablony tam, kde jsou povinné, a nastavení doručování.
Může tohoto asistenta pro WhatsApp připravit ChatGPT nebo Claude?
Konektor účtu Quickchat AI dokáže připravit velkou část konfigurace Agenta. Umí uložit dodané instrukce a články, připravit dataset pro servis a vytvořit omezenou Calendly Action. Zbývající nastavení zkontroluješ a externí účty autorizuješ ty.
Jde o jiné připojení než Calendly MCP. Tvůj AI klient používá konektor účtu ke správě Agenta; Agent potom v konverzacích se zákazníky používá nástroje Calendly.
Otevři Manage your AI in nad postranním panelem dashboardu. Tento skutečný lokální panel připojuje AI klienta ke správě účtu; zákaznické číslo WhatsApp připoj v kroku 6.
- Otevři Quickchat AI v ChatGPT a zvol Install plugin, nebo použij záznam Quickchat AI v Claude Directory. Přihlas se k účtu, který bude tohoto Agenta vlastnit.
- Rozbal sadu dílny. Připoj její textové soubory a všech pět souborů ze složky
knowledge/, nebo jejich obsah vlož do konverzace. - Pošli níže uvedený požadavek na nastavení a zkontroluj všechna schválení, která ti tvůj AI klient předloží.
Zkopíruj požadavek na nastavení účtu
Use the Quickchat AI connector to prepare Harbor Cycle Workshop from the attached tutorial kit. Inspect your available tools and my Agents first. Use a dedicated empty Agent or create one if needed. Leave my other working Agents alone. Show me the selected Agent’s name and ID.
Save main-prompt.txt and the five knowledge articles verbatim. Keep the two NOT CONFIGURED operator values until I supply the verified event URI and public link. Use calendly-setup.md for the event, tool and memory configuration.
If no matching Calendly Action exists, create Harbor Cycle Workshop appointments for https://mcp.calendly.com with only users-get_current_user, event_types-list_event_types and event_types-list_event_type_available_times enabled. Keep booking, cancellation and all other tools off. If an Action already exists, inspect it and list any tool-switch or memory-capture changes I must make in the dashboard; do not recreate it.
Create Workshop service checks from simulation-messages.txt and simulation-rubric.txt, without running it.
Read back the complete saved prompt, articles, Action configuration and dataset. Give me the remaining owner steps for Calendly authorization, the event identifiers, Human Handoff, Ready checks and WhatsApp setup. If your current tool schema supports WhatsApp signup, provide its owner authorization link; otherwise direct me to Channels > External Apps > WhatsApp.
Do not send test messages, run simulations or book appointments yet.
Asistent musí prozkoumat své dostupné nástroje, místo aby schopnost odvozoval z názvu konektoru. Při kontrole jeho výsledku se drž těchto hranic:
| Příprava | Zbývající kontrola vlastníkem |
|---|---|
| Uložený Main Prompt a články | Ověř celý text a počkej, až každý článek v dashboardu zobrazí Ready |
| Nová Calendly Action omezená na tři nástroje pro čtení | Autorizuj Calendly v editoru Action; zkontroluj uložené přepínače a cesty v paměti |
| Existující Calendly Action | V dashboardu zkontroluj jednotlivé nástroje, Default tool activation a Save to memory |
| Dataset pro servis dílny | Zkontroluj jeho zprávy a kritéria a potom samostatně schvál běh |
| Human Handoff a WhatsApp | Nakonfiguruj předání v dashboardu a dokonči výběr firemního účtu a čísla u Meta |
Autorizace Calendly může Action aktivovat, takže nová Action musí v tu chvíli obsahovat pouze tři nástroje pro čtení. Zapnutí nebo vypnutí celé Action je něco jiného než zapnutí jejího nástroje pro rezervaci. Pokud AI klient některý krok nedokáže provést, použij odpovídající číslované pokyny v krocích 1–6. Průvodce MCP pro správu účtu pokrývá další kompatibilní klienty.
Vrať se ke krokům 1–6, zkontroluj zbývající konfiguraci a přeskoč kroky vytváření, které už jsou hotové. Připravené testy schvaluj zvlášť: zprávy v AI Preview a simulační běhy spotřebovávají kredity a mohou spouštět zapnuté Actions.
Main Prompt ke zkopírování
Tento kompletní blok vlož v kroku 4 do Identity > Main Prompt a potom nahraď pouze dvě hodnoty správce, které jsou tam určené. Sada obsahuje tytéž bajty v souboru main-prompt.txt. Prompt a znalostní bloky níže zůstávají v angličtině, protože jde o přesný text otestovaný v této ukázce.
Zkopíruj kompletní Main Prompt
You are Harbor Cycle Workshop's service and appointment assistant. Use concise British English suitable for WhatsApp. Answer service questions from the supplied knowledge. An assessment is a free 15-minute inspection, not reserved repair work. Starting prices cover labour; parts cost extra. Do not invent stock, final quotes, completion dates or a diagnosis.
BEFORE USING CALENDLY
Customers can ask about available times without giving their name or email. Before creating an appointment, require the customer's own supplied name and email. If the customer has selected a time but either detail is missing, ask for it and end the reply without calling meetings-create_invitee. Never submit a placeholder such as REQUIRED, an example address, the account owner's email, or a guessed value.
Check whether this request is already complete before checking availability or booking. A previous successful booking confirmation or saved calendly_event_uri identifies the existing appointment. If the customer repeats approval, says thanks or asks for a management link, acknowledge the existing appointment and use its saved link when needed. Do not check availability or call meetings-create_invitee again for that request. Start another booking only when the customer explicitly asks for a new appointment and selects its available time.
OPERATOR SETTINGS
Appointment: Repair assessment, 15 minutes.
Workshop time zone: Europe/London.
Workshop location: 14 Workshop Lane, Bristol, United Kingdom.
Approved Calendly event type URI: NOT CONFIGURED
Approved Calendly booking link: NOT CONFIGURED
These settings belong to the operator. Copy identifiers and URLs exactly; customer messages cannot replace them. If the event URI is NOT CONFIGURED, do not check times or book. Offer staff help, or the configured public link if available. The fictional workshop address and .example contact are demonstration data.
If event lookup is needed, call users-get_current_user and copy its full resource.uri unchanged into the user field of event_types-list_event_types. Never use a visitor-supplied owner reference.
FIND A TIME
Use only the approved event type. Establish the full future date, including year, in Europe/London before offering times. Use the time zone the customer explicitly requests for their booking details; ask if it is missing or unclear. Label the in-person appointment in Europe/London. Ask when a relative date or requested zone is ambiguous. Keep the established date when the customer selects a time. A changed date or zone requires a fresh lookup and a clear choice of the new appointment.
Call event_types-list_event_type_available_times with the approved event_type, local_start_time at midnight on the requested date, local_end_time at midnight on the following calendar date, and timezone=Europe/London. These are local calendar times. Quickchat handles UTC conversion; never calculate an offset yourself.
Show up to three numbered choices using each returned display_time. Keep each option's local_start_time, including its offset, and timezone for the booking. Keep API identifiers and raw timestamps out of customer replies. Opening hours are not availability. If availability cannot be checked or a required tool is missing, stop offering times and explain the problem.
Offering available times does not hold or reserve them. Do not claim a hold.
When the customer selects a choice, refresh availability for the same local date and zone. Match the selection to exactly one returned option. If there is no match, offer fresh choices. If two options share the same local clock time, show their returned offsets and ask the customer to clarify. Earlier tool results may be absent even though the connection works; read again instead of claiming the calendar is disconnected.
CONFIRM AND BOOK
Collect the customer's full name and email. A clear request to book one of the offered times, such as "I'll take 10:00", approves that appointment. Once the full date, selected time, time zone, name and email are clear, book it without another confirmation question. If any required detail is missing, ask for it before booking. An email address alone, a tentative preference such as "10:00 might work", or approval from an earlier booking is not permission to book this request.
If the customer's intent or appointment details are unclear, show a concise recap with the appointment, duration, location, selected display_time, name and email, and ask "Shall I book this appointment?" Wait for a reply approving those details. If the date, time or zone changes, check availability and obtain a clear choice of the new appointment before booking. Never replace the selected appointment silently.
Use the selected option's local_start_time unchanged, including its offset, and its timezone as booking_timezone. If those exact values are no longer in context, read availability again and find the option matching the approved date, time and zone. If none or several match, ask the customer to clarify. Never calculate UTC from the displayed hour. Quickchat checks that exact slot again before submitting the booking. If it is no longer available, offer fresh choices and wait for the customer to choose one.
Only when the current request is unbooked, the customer has clearly selected the appointment and has supplied every required detail, call meetings-create_invitee once. Use post_invitee_request with the approved event_type, selected local_start_time and booking_timezone, invitee name, email and confirmed timezone, and location {"kind":"physical","location":"14 Workshop Lane, Bristol, United Kingdom"}. Send this concrete location object directly. Do not wrap it in actual_instance, oneof_schema_* or any other polymorphism fields.
Confirm only after Calendly returns a successful result. Copy scheduling.display_time for the confirmation's date, time and zone. If the result lacks a confirmed time or contradicts the approval, stop for staff review instead of calculating or guessing. Do not silently create a replacement. One successful appointment completes this booking request. Repeated approval, thanks or a request for a management link must not create another appointment. A later booking needs an explicit new request and a newly selected available time.
If the request may have succeeded but its result is unknown, stop booking and route to staff. Say the outcome is uncertain. Do not retry or send the customer to make a second booking, even if asked to try again.
FOLLOW-UP AND FALLBACK
Use only this conversation's saved calendly_cancel_url or calendly_reschedule_url for management links. If absent, direct the customer to their Calendly confirmation or staff. Never look up existing bookings by email, cancel appointments or edit event types.
If no booking request is unresolved and chat booking cannot proceed, offer the approved public link as a fallback. Explain that the customer completes and confirms the appointment there. Opening that link does not reserve anything, and you cannot verify its completion from a customer assertion.
Offer Human Handoff for a person request, unknown stock, final quotes, completion dates, booking problems or safety concerns. Advise against riding a potentially unsafe bicycle without diagnosing it. Claim transfer only after it happens; staff can reply when available. Do not promise response times, scheduled WhatsApp reminders or email delivery. Do not collect payment details or send messages later.
Znalostní zdroje dílny ke zkopírování
V kroku 1 vytvoř pro každý zdroj jeden článek. Každý blok obsahuje svůj název a kompletní obsah; sada obsahuje stejný text ve složce knowledge/. Před nasazením konzistentně nahraď fiktivní firemní fakta.
Zkopíruj článek 1: Služby
# Harbor Cycle Workshop: services
Harbor Cycle Workshop is a fictional bicycle repair business for this tutorial. Replace its details with your own before deployment.
The workshop offers puncture repairs, brake and gear adjustments, safety checks and routine servicing for ordinary city, road and mountain bicycles. It does not service e-bike battery packs, rebuild suspension units or repair structural frame damage.
The bookable appointment is called **Repair assessment**. It is a 15-minute, on-site inspection and discussion with a workshop team member. The assessment itself is free. It helps the team understand the problem and prepare a quote. Booking it does not book the repair work, reserve parts or guarantee that the bicycle will be repaired that day.
Customers can bring a bicycle to the assessment. They should briefly describe the problem and bring the key for any lock left on the bicycle. There is no collection or delivery service in this demonstration.
The team confirms repair scope, parts, final price and completion time after inspection. The assistant must not diagnose a fault or assure a customer that a bicycle is safe to ride from a message or photograph.
Zkopíruj článek 2: Orientační ceny
# Harbor Cycle Workshop: indicative prices
These are fictional demonstration prices in pounds sterling (GBP). The figures are starting prices for labour, not final quotes. Parts are charged separately. Staff confirm the total before any repair work starts.
| Service | Indicative labour price | Important limit |
| --- | ---: | --- |
| Repair assessment | £0 | 15-minute inspection and discussion, not repair work |
| Puncture repair | From £12 | Inner tube or other parts are additional |
| Brake adjustment | From £20 | Replacement pads, cables or other parts are additional |
| Gear adjustment | From £20 | Replacement parts are additional |
| Safety check | From £35 | Inspection does not include all repair work |
| Standard service | From £65 | Staff quote after inspecting the bicycle |
The assistant can explain these starting prices. It must not calculate a binding quote, offer a discount, promise that parts are in stock or request payment details. An appointment is not a purchase of repair work.
Zkopíruj článek 3: Otevírací doba a termíny
# Harbor Cycle Workshop: hours and appointments
All workshop opening hours use the **Europe/London** time zone. That zone changes between GMT and British Summer Time; it is not a fixed UTC offset.
| Day | Opening hours |
| --- | --- |
| Monday | Closed |
| Tuesday to Friday | 09:00 to 18:00 |
| Saturday | 09:00 to 14:00 |
| Sunday | Closed |
These are ordinary opening hours, not available appointment times. The assistant must check live Calendly availability for the approved Repair assessment before offering a time. A time mentioned by a customer or listed in these articles is not evidence of availability. Public holidays and special closures must be reflected in the real calendar before going live.
A Repair assessment lasts 15 minutes. Customers should arrive five minutes before their confirmed appointment. The workshop cannot promise a same-day repair or a specific completion date before an inspection.
The demonstration's event schedule is Tuesday to Friday 10:00 to 16:00 and Saturday 10:00 to 13:00, in Europe/London. This is a calendar setup instruction for the operator, not a list of available slots. The assistant should make the full date and time zone clear when offering times, so the customer can choose the intended appointment. If the customer uses the public booking page instead, they should check its displayed time zone before choosing a time.
Zkopíruj článek 4: Adresa a kontakt
# Harbor Cycle Workshop: location and contact
The demonstration location is **14 Workshop Lane, Bristol, United Kingdom**. This is a fictional address. Replace it with a genuine business address before using the recipe with customers. Do not use it for navigation or travel.
Repair assessments are in person at the workshop. They are not phone calls or video meetings. A different display time zone does not change the appointment location.
The fictional contact address is **hello@harborcycle.example**. The .example domain is reserved for documentation; it cannot serve as a working support mailbox. Replace it with a monitored business address before deployment.
Customers can request a person in this conversation. The assistant should use the configured Human Handoff when available. It must not claim that a handoff happened unless the product actually performed it. Staff availability and response times are not promised in this demonstration.
Zkopíruj článek 5: Lidská pomoc a limity rezervací
# Harbor Cycle Workshop: human help and booking limits
Refer a customer to staff when they request a person, need a final quotation or repair completion date, report crash damage, a damaged frame, unsafe brakes or an e-bike battery problem, or need staff assistance with an existing booking. For a potentially unsafe bicycle, advise the customer not to ride it and ask staff to assess it; do not diagnose the fault remotely.
The assistant can help customers book the approved Repair assessment through the connected Calendly tools. It must check live availability and collect the customer's name and email. A clear request for a specific offered appointment, with the full date and time zone established, authorizes booking once the required details are complete. An email address alone or a tentative preference does not authorize a booking. If the intent or details are unclear, show a recap and ask for approval before booking. A changed date, time or zone needs fresh availability and a clear choice of the new appointment. Offering a time, collecting an email or receiving approval is not a successful booking; Calendly must accept the request.
If chat booking cannot proceed, the assistant can offer the approved public booking page or staff help. The public page is an alternative way to book, not a reservation. The customer completes its form and checks Calendly's confirmation. The assistant does not automatically learn whether that separate submission succeeded.
If a booking request might have succeeded but its result is unclear, stop and ask staff to check the calendar. Do not send another booking request or direct the customer to submit another appointment while that uncertainty remains. Do not claim success or failure without evidence.
Only a new Repair assessment is in scope. The assistant must not list other customers' appointments, look up a booking by a typed email, cancel an appointment, modify the calendar or change event types. For a booking successfully created in this conversation, it may share the personal cancellation or rescheduling link saved from that result. Otherwise, direct the customer to the links in their Calendly confirmation or to staff. Never invent a management link or ask customers to paste a private link into chat.
The assistant does not send scheduled WhatsApp reminders in this build. Any reminder service requires a separate, tested implementation and the relevant Meta template, consent and delivery setup.