> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brosbots.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Rezerwacje Cal.com

> Umożliw agentowi rezerwowanie wizyt w trakcie rozmowy dzięki integracji z Cal.com.

## Wprowadzenie

Integracja **Cal.com** pozwala agentowi rezerwować wizyty bezpośrednio w
trakcie rozmowy telefonicznej. Gdy rozmówca chce się umówić, agent wywołuje
akcję `book_appointment` - bez rozłączania się.

## Obsługiwane szablony

Rezerwacje Cal.com są dostępne m.in. w szablonach:

* **Salon beauty / fryzjer**
* **Restauracja** (rezerwacje stolików)
* **Ochrona zdrowia** (wizyty w klinice)

## Włączanie rezerwacji

### 1. Przełącznik w onboardingu

Tworząc agenta z szablonu, włącz **„Rezerwacje Cal.com”** w formularzu.
Agent zostanie od razu skonfigurowany z akcją `book_appointment`.

### 2. Podłączenie konta Cal.com

Po utworzeniu agenta:

1. Wejdź w zakładkę **Integracje** agenta.
2. Znajdź sekcję **Cal.com**.
3. Podaj klucz API Cal.com i identyfikator typu wydarzenia (pole **ID typu wydarzenia**).
4. Zapisz konfigurację.

<Note>
  Połączenie zakładasz raz, na stronie **Integracje**, a w agencie tylko je
  wybierasz - to samo konto Cal.com może obsługiwać wielu agentów. **ID typu
  wydarzenia** to liczba z adresu, gdy edytujesz typ wydarzenia w Cal.com
  (`app.cal.com/event-types/**4034029**`). W polu **Strefa czasowa** wpisz strefę
  kalendarza, np. `Europe/Warsaw` - rozmówca podaje godzinę lokalną, a Cal.com
  oczekuje UTC.
</Note>

### 3. Konfiguracja akcji

* **Typ wydarzenia** - który event Cal.com rezerwować (np. „Strzyżenie”,
  „Konsultacja”, „Rezerwacja stolika”).
* **Wymagane dane** - agent zbierze dane rozmówcy (imię, telefon, e-mail,
  preferowany termin) przed rezerwacją.
* **Potwierdzenie** - co agent mówi po udanej rezerwacji.

## Jak to wygląda w rozmowie

1. Rozmówca chce się umówić (np. *„Chciałabym się zapisać na strzyżenie w piątek”*).
2. Agent zbiera wymagane dane (imię, kontakt, termin).
3. Agent wywołuje narzędzie `book_appointment`.
4. Platforma wywołuje API Cal.com z zebranymi danymi.
5. Agent potwierdza szczegóły rezerwacji.
6. Rezerwacja pojawia się w Twoim panelu Cal.com.

## Numer telefonu i data

Dwie rzeczy potrafiły wywrócić rezerwację już po tym, jak agent powiedział
rozmówcy, że jest umówiony.

**Telefon do wizyty.** Typ wydarzenia w Cal.com może mieć telefon uczestnika
jako pole wymagane - wtedy rezerwacja bez numeru jest odrzucana. Numer bierzemy
po kolei z: tego, co rozmówca podał agentowi, numeru, z którego dzwoni, i
danych zebranych wcześniej w rozmowie. Ta ostatnia ścieżka jest istotna przy
**rozmowach z widgetu na stronie**, bo tam żadnego numeru dzwoniącego nie ma.
Gdy mimo wszystko zabraknie numeru, agent dostaje informację, żeby o niego
poprosić i zarezerwować ponownie - i robi to jeszcze na linii.

**Data.** Model językowy nie ma zegara, więc pytany o „piątek” potrafi wybrać
rok z powietrza. Narzędzie rezerwacji dostaje dzisiejszą datę w strefie
kalendarza, a rezerwacja w przeszłości jest odrzucana z informacją, jaki jest
dziś dzień, żeby agent dopytał zamiast marnować czas rozmówcy. W promptach
możesz też użyć `{{today}}` - zob.
[Zmienne szablonowe](/pl/voice-agent/template-variables).

## Zabezpieczenie przed halucynacjami

Przy włączonych rezerwacjach agent ma instrukcję, by umawiać **wyłącznie
przez oficjalne narzędzie** - nigdy nie „udaje”, że coś zarezerwował, bez
faktycznego wywołania API.

## Rozwiązywanie problemów

| Problem | Rozwiązanie |
| - | - |
| Rezerwacja cicho zawodzi | Kliknij **Testuj połączenie** przy tym połączeniu - sprawdzamy klucz i to, czy tego typu wydarzenia da się w ogóle zarezerwować |
| Agent nie proponuje rezerwacji | Upewnij się, że rezerwacje włączono w onboardingu |
| Rezerwowany zły typ wydarzenia | Zweryfikuj **ID typu wydarzenia** w ustawieniach integracji |
| Brakuje danych rozmówcy | Sprawdź konfigurację zbierania danych w szablonie |
| Cal.com odrzuca rezerwację przez brak telefonu | Nic nie musisz robić - agent dopyta o numer i spróbuje ponownie. Jeśli chcesz mieć numer zawsze, dodaj go do danych zbieranych w rozmowie |
| Rezerwacje trafiają na zły rok albo w przeszłość | Uzupełnij **Strefa czasowa** i dodaj do promptu zdanie `Dzisiaj jest {{today}}.` |

## Zobacz też

* [Szablony onboardingowe](/pl/voice-agent/onboarding-templates)
* [Przegląd integracji](/pl/integrations/overview)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.