---
title: "Inbyggda verktyg"
description: "Instruera ThunderPhone-agenter att avsluta samtal, vidarekoppla uppringare, navigera knappsatser, vänta i kö, söka i kunskapsbasen, spela upp ljud, skicka e-post och beräkna summor."
---

Inbyggda verktyg låter en röstagent utföra vanliga samtalsåtgärder utan att ansluta ditt
eget API. De flesta är tillgängliga automatiskt; e-post, ljud, kalkylatorn och
kunskapssökning visas först när du har konfigurerat den relaterade inställningen eller källan. Ange i röstagentens prompt
när varje åtgärd ska användas.

| Verktyg | Använd det för | Så aktiverar du det | Samtal som stöds |
| --- | --- | --- | --- |
| `end_call` | Avsluta en slutförd konversation | Alltid tillgängligt | Telefon, Talk i webbläsaren, widget, simulering och Realtime |
| `transfer_call` | Koppla vidare en telefonuppringare | Konfigurera routning i prompten | Vanliga telefonsamtal; integrerad Realtime med `call_events` kan använda kall vidarekoppling. Realtime för sparade agenter utelämnar det. |
| `send_keypad_input` | Trycka på knappar i en telefonmeny | Alltid tillgängligt i vanliga telefonsamtal | Telefonsamtal; integrerad utgående Realtime med `call_events`. Realtime för sparade agenter utelämnar det. |
| `no_response` | Fortsätt lyssna medan en automatiserad meny talar eller en uppringare tänker högt; en uppringare som ber röstagenten vänta får bara "Självklart." | Alltid tillgängligt | Alla samtalstyper |
| `wait_on_hold` | Vänta tyst på att en person återvänder | Ingår i utgående samtal | Utgående telefonsamtal och utgående integrerade Realtime-sessioner |
| `search_knowledge_base` | Svara utifrån bifogade källor | Bifoga kunskap till röstagenten | Samtal med sparade agenter med bifogad kunskap |
| `play_sound` | Spela upp ett konfigurerat aviseringsljud | **Avancerat → Verktygsljud** | Samtal med sparade agenter |
| `send_email` | Skicka e-post till en fast mottagare | **Avancerat → Skicka e-post** | Samtal med sparade agenter |
| `calculate` | Beräkna summor, avgifter och växel exakt | **Avancerat → Kalkylator** | Samtal med sparade agenter |

## `end_call`

Avslutar det aktuella samtalet när prompten instruerar modellen att göra det. Det är tillgängligt
som standard och har ingen agentinställning.

Skriv villkoret och ett eventuellt obligatoriskt avsked i prompten:

```text
When the caller confirms they need nothing else, say goodbye and end the call.
```

Ett samtal som avslutas av modellen har `end_reason: "ai_hangup"`, även om det avslutas
efter varningen om samtalets tidsgräns. Samtalet avslutas med `max_duration` endast om
tidsgränsen nås först, och med `balance_exhausted` när det förbetalda saldot tar slut.

## `transfer_call`

Kopplar vidare en telefonuppringare till ett fast nummer som anges av modellen. Kall överföring
sker omedelbart. En varm överföring med screening ringer privat upp destinationen innan
parterna kopplas samman. Varm överföring kräver ett verifierat importerat VoIP-nummer
som kan ringa utgående samtal.

Ange destinationsnumret och det exakta routningsvillkoret i prompten:

```text
If the caller asks for billing, transfer them to +15551234567.
```

En lyckad kall överföring har `end_reason: "ai_transfer"`; en slutförd varm
överlämning har `end_reason: "ai_warm_transfer"`. Ett misslyckat varmt försök återger
kontrollen till agenten, så samtalets senare avslut avgör dess avslutsorsak. I
sessioner som inte är telefonsamtal avslutar en överföringsbegäran sessionen i stället.

Se [Koppla vidare samtal](/sv/guides/call-transfers) för konfiguration i dashboarden och via API,
routning, screening, felhantering, gränser och testning.

## `send_keypad_input`

Skickar DTMF-siffror (telefonknappsats) `0`–`9`, `*` och `#` till en telefonlinje. Modellen
använder det för att navigera i ett IVR, den automatiserade menyn som ber uppringare att trycka på
knappar. Det är tillgängligt som standard och har ingen agentinställning.

Berätta för modellen vilka menyer den får navigera i och var efterfrågade värden kommer
ifrån. Be den inte gissa menyalternativ:

```text
Follow the phone menu for account status. Press a key only after the menu
states what that key does. Enter the account number supplied by the caller.
```

Plattformen tar bort tecken som inte stöds och skickar giltiga siffror i ordning.
Om inga giltiga siffror återstår eller samtalet inte kan skicka knappsatsinmatning returneras
felet till agenten så att den kan återhämta sig.

## `no_response`

Håller röstagenten tyst medan ett automatiserat system fortfarande talar eller ber den fortsätta lyssna, och medan en uppringare tänker högt ("mm, låt mig se") eller vänder sig för att prata med någon annan. När en uppringare ber röstagenten vänta medan de gör något ("en sekund", "låt mig kolla", "kan du vänta en stund?") och inte ger den något annat att svara på, säger röstagenten bara "Absolut." (inte "Ta den tid du behöver") och väntar på att uppringaren ska prata igen. Röstagentens avstämningar vid tystnad körs fortfarande och uttalas alltid om linjen förblir tyst. Detta gäller inte en hälsning från en verklig person, en fråga eller en faktisk väntkö. Den är tillgänglig som standard och har ingen agentinställning.

Om din prompt talar om för röstagenten vad den ska säga när en uppringare ber om en stund, har prompten företräde.

Vanligtvis räcker den inbyggda beskrivningen. För samtal med mycket IVR, förstärk
gränsen i prompten:

```text
Stay silent while a phone menu is still speaking. Answer a live person as soon
as they address you.
```

Den här åtgärden avslutar inte samtalet.

## `wait_on_hold`

Sätter en utgående agent i ett tyst vänteläge tills en person återkommer.
Modellen använder det endast efter att den andra parten uttryckligen säger att
agenten sätts på vänt. Det är automatiskt tillgängligt för utgående samtal och
har ingen inställning i dashboarden.

```text
If a person explicitly puts you on hold, wait silently. When they return,
continue from the question you were discussing.
```

Uppmana inte agenten att använda det för ett IVR-meddelande som säger ”vänta
lite”. Vänteläget varar som standard i upp till 15 minuter. För vanliga
utgående samtal accepterar `POST /v1/call` ett positivt heltal för
`max_hold_seconds`; inbyggd Realtime begränsar `max_hold_seconds` till 10–900
sekunder. Om personen återkommer fortsätter agenten utan att ändra samtalets
slutorsak. Om gränsen löper ut avslutar plattformen samtalet med
`end_reason: "ai_hangup"`.

## `search_knowledge_base`

Söker i dokument som är kopplade till agenten och returnerar relevanta avsnitt.
Koppla en kunskapsbas eller enskilda kunskapsdokument för att aktivera det och
ange sedan för modellen vilka svar som måste komma från dessa källor:

```text
Search the knowledge base before answering policy questions. If the first
search is inconclusive, try once more with different key terms.
```

Om en sökning misslyckas returneras resultatet till agenten. Se
[Kunskapsbas](/sv/guides/knowledge-base) för konfiguration i dashboarden och via
API.

## `play_sound`

Spelar agentens konfigurerade aviseringsljud efter allt tal i samma tur. I
dashboarden ställer du in **Avancerat → Verktygsljud** på **Klang**, **Pling**
eller **Pip** och distribuerar sedan agenten. **Ingen** tar bort verktyget.

Med [Agents API](/api-reference/agents) anger du `play_sound_asset` som
`"chime"`, `"ding"` eller `"beep"` och distribuerar sedan. Ange `""` för att
inaktivera verktyget.

```text
After confirming that an appointment was saved, say "You're all set" and play
the notification sound.
```

Ett uppspelningsfel returneras till agenten och avslutar inte samtalet.

## `send_email`

Skickar ett e-postmeddelande i klartext till den enda mottagare som agentens
ägare har konfigurerat. Modellen anger ämne och brödtext. Den ser aldrig någon
mottagarparameter och kan inte välja eller ändra adressen.

I dashboarden aktiverar du **Avancerat → Skicka e-post**, sparar en
mottagaradress och distribuerar sedan agenten. Med
[Agents API](/api-reference/agents) anger du både `send_email_enabled: true`
och en icke-tom `send_email_recipient` och distribuerar sedan. Definiera
utlösaren och det obligatoriska innehållet i prompten:

```text
When the caller asks to leave a message, collect their name, callback number,
and message. Read the details back for confirmation, then email them.
```

Ett samtal kan försöka skicka högst tre e-postmeddelanden. Varje ämnesrad är
begränsad till 300 tecken och varje brödtext till 20 000 tecken. Saknad
konfiguration, ogiltigt innehåll, gränsen per samtal och leveransfel returneras
till agenten. En misslyckad leverans förbrukar fortfarande ett av de tre
försöken.

Testa med en kontrollerad mottagare innan du distribuerar brett. Browser Talk
och simuleringar skickar riktig e-post; det finns inget torrkörningsläge.

## `calculate`

Utvärderar ett aritmetiskt uttryck exakt och returnerar resultatet, så att agenten
inte räknar ihop priser i huvudet. Den är avstängd som standard. Aktivera
**Avancerat → Kalkylator** i instrumentpanelen och distribuera sedan agenten. Med
[Agents API](/api-reference/agents) anger du `calculator_enabled: true` och distribuerar sedan.

Modellen skriver uttrycket, till exempel `2*23.5 + 16.5 + 4`, och läser upp
resultatet för uppringaren. Uttryck kan använda siffror, `+`, `-`, `*`, `/` och
parenteser. Ett anrop kan innehålla upp till 10 uttryck separerade med `;`, till exempel
en delsumma och totalsumman med en leveransavgift, upp till 500 tecken totalt.
Resultat avrundas till 10 decimaler. Beräkningen använder exakt decimalaritmetik, så
`0.1 + 0.2` returnerar `0.3`. Division med noll och annat fel i uttrycket
returneras till agenten som ett fel att korrigera. Den körs på ThunderPhone och
svarar direkt, utan utfyllnadsfras eller skrivljud.

Aktivera den för agenter som uppger ordersummor, avgifter eller växel. Ingen ändring
av prompten behövs.

## Kompatibilitetsanmärkning

Inställningen **Avancerat → Oavbrytbara meddelanden** och det äldre fältet
`speak_uninterruptible_enabled` finns kvar av kompatibilitetsskäl, men det har
ingen effekt att aktivera dem. Låt inställningen vara avstängd; ingen prompt kan
aktivera det här verktyget.

Använd **Samtyckesmeddelande** för ett obligatoriskt meddelande i början av
samtalet. Det spelas upp ordagrant före vanliga samtal och kan inte avbrytas. Se
[Lagar om samtycke till samtalsinspelning](/sv/guides/recording-consent-laws).

## Testa och övervaka inbyggda verktyg

Använd browser Talk eller en simulering för att kontrollera promptning,
kunskapssökning, ljud och e-post. Dessa miljöer kan inte återskapa beteendet i
telefoninätet. Testa knappsatsnavigering och vänteläge i ett utgående
telefonsamtal, och testa en fullständig varm överlämning i ett riktigt samtal
med ett kvalificerat importerat VoIP-nummer. Realtime-stödet är begränsat enligt
tabellen ovan.

## Samtal, priser och webhooks

Inbyggda åtgärder har ingen verktygsavgift per användning. Vanliga samtals- och leverantörsavgifter
gäller fortfarande. Se [Priser](/sv/guides/pricing). Deras anrop och resultat kan visas
i det slutförda transkriptet, men de skickar inte `telephony.tool` eller `web.tool`.
Dessa händelser är avsedda för [användardefinierade funktioner](/sv/tools/overview). Endast ett slutfört
avslut eller en överföring ändrar samtalets `end_reason`; andra fel returneras
till agenten. Se [Webhookar för slutförda samtal](/sv/webhooks/call-complete) för samtalsposten.
