---
title: "बिल्ट-इन टूल्स"
description: "ThunderPhone एजेंटों को कॉल समाप्त करने, कॉलर को ट्रांसफर करने, कीपैड नेविगेट करने, होल्ड पर प्रतीक्षा करने, नॉलेज खोजने, साउंड चलाने, ईमेल भेजने और कुल राशि की गणना करने के लिए प्रॉम्प्ट करें।"
---

बिल्ट-इन टूल्स एजेंट को अपना API कनेक्ट किए बिना सामान्य कॉल कार्रवाइयाँ करने देते हैं। अधिकांश अपने-आप उपलब्ध होते हैं; ईमेल, साउंड्स, कैलकुलेटर और नॉलेज सर्च केवल संबंधित सेटिंग या सोर्स कॉन्फ़िगर करने के बाद दिखाई देते हैं। एजेंट को उसके प्रॉम्प्ट में बताएं कि प्रत्येक कार्रवाई का उपयोग कब करना है।

| टूल | इसके लिए उपयोग करें | इसे कैसे सक्षम करें | समर्थित कॉल |
| --- | --- | --- | --- |
| `end_call` | पूरी हो चुकी बातचीत समाप्त करें | हमेशा उपलब्ध | फ़ोन, ब्राउज़र Talk, विजेट, सिमुलेशन और Realtime |
| `transfer_call` | फ़ोन कॉलर को रूट करें | प्रॉम्प्ट में रूटिंग कॉन्फ़िगर करें | सामान्य फ़ोन कॉल; `call_events` वाला इनलाइन Realtime कोल्ड ट्रांसफर का उपयोग कर सकता है। सेव्ड-एजेंट Realtime में यह शामिल नहीं है। |
| `send_keypad_input` | फ़ोन मेनू में कुंजियाँ दबाएँ | सामान्य फ़ोन कॉल पर हमेशा उपलब्ध | फ़ोन कॉल; `call_events` वाला इनलाइन आउटबाउंड Realtime। सेव्ड-एजेंट Realtime में यह शामिल नहीं है। |
| `no_response` | ऑटोमेटेड मेनू के बोलते समय या कॉलर के ज़ोर से सोचते समय सुनते रहें; एजेंट से प्रतीक्षा करने को कहने वाले कॉलर को केवल "ज़रूर।" मिलता है | हमेशा उपलब्ध | सभी कॉल प्रकार |
| `wait_on_hold` | किसी व्यक्ति के वापस आने तक चुपचाप प्रतीक्षा करें | आउटबाउंड कॉल में शामिल | आउटबाउंड फ़ोन और आउटबाउंड इनलाइन Realtime सेशन |
| `search_knowledge_base` | अटैच किए गए सोर्स से उत्तर दें | एजेंट से नॉलेज अटैच करें | अटैच किए गए नॉलेज वाली सेव्ड-एजेंट कॉल |
| `play_sound` | कॉन्फ़िगर किया गया नोटिफ़िकेशन साउंड चलाएँ | **उन्नत → टूल साउंड** | सेव्ड-एजेंट कॉल |
| `send_email` | एक निश्चित प्राप्तकर्ता को ईमेल भेजें | **उन्नत → ईमेल भेजें** | सेव्ड-एजेंट कॉल |
| `calculate` | कुल राशि, शुल्क और बाकी रकम की सटीक गणना करें | **उन्नत → कैलकुलेटर** | सेव्ड-एजेंट कॉल |

## `end_call`

प्रॉम्प्ट में मॉडल को ऐसा करने के लिए कहे जाने पर वर्तमान कॉल समाप्त करता है। यह डिफ़ॉल्ट रूप से उपलब्ध है और इसकी कोई एजेंट सेटिंग नहीं है।

प्रॉम्प्ट में शर्त और आवश्यक विदाई लिखें:

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

मॉडल द्वारा समाप्त की गई कॉल में `end_reason: "ai_hangup"` होता है, जिसमें कॉल समय सीमा की चेतावनी के बाद समाप्त होने वाली कॉल भी शामिल है। कॉल `max_duration` के साथ केवल तभी समाप्त होती है जब समय सीमा पहले पूरी हो जाए, और प्रीपेड बैलेंस समाप्त होने पर `balance_exhausted` के साथ समाप्त होती है।

## `transfer_call`

मॉडल द्वारा दिए गए एक तय नंबर पर फ़ोन कॉलर को ट्रांसफर करता है। कोल्ड ट्रांसफर तुरंत होता है। स्क्रीन किया गया वॉर्म ट्रांसफर दोनों पक्षों को कनेक्ट करने से पहले निजी रूप से डेस्टिनेशन पर कॉल करता है। वॉर्म ट्रांसफर के लिए एक सत्यापित इंपोर्ट किया हुआ VoIP नंबर आवश्यक है, जो आउटबाउंड कॉल कर सकता हो।

प्रॉम्प्ट में डेस्टिनेशन नंबर और सटीक रूटिंग शर्त डालें:

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

सफल कोल्ड ट्रांसफर में `end_reason: "ai_transfer"` होता है; पूरे हुए वॉर्म हैंडऑफ़ में `end_reason: "ai_warm_transfer"` होता है। असफल वॉर्म प्रयास नियंत्रण एजेंट को वापस देता है, इसलिए कॉल का बाद में समाप्त होना उसका एंड रीजन निर्धारित करता है। गैर-फ़ोन सेशन में, ट्रांसफर अनुरोध इसके बजाय सेशन समाप्त कर देता है।

डैशबोर्ड और API सेटअप, रूटिंग, स्क्रीनिंग, विफलता प्रबंधन, सीमाएँ और टेस्टिंग के लिए [कॉल ट्रांसफर](/hi/guides/call-transfers) देखें।

## `send_keypad_input`

फ़ोन लाइन पर DTMF (फ़ोन कीपैड) अंक `0`–`9`, `*`, और `#` भेजता है। मॉडल इसका उपयोग IVR में नेविगेट करने के लिए करता है, वह ऑटोमेटेड मेनू जो कॉलर से कुंजियाँ दबाने के लिए कहता है। यह डिफ़ॉल्ट रूप से उपलब्ध है और इसकी कोई एजेंट सेटिंग नहीं है।

मॉडल को बताएं कि वह किन मेनू में नेविगेट कर सकता है और मांगे गए मान कहाँ से आते हैं। उसे मेनू विकल्पों का अनुमान लगाने के लिए न कहें:

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

प्लेटफ़ॉर्म असमर्थित कैरेक्टर हटा देता है और मान्य अंक क्रम में भेजता है। यदि कोई मान्य अंक नहीं बचता या कॉल कीपैड इनपुट नहीं भेज सकती, तो विफलता एजेंट को वापस की जाती है ताकि वह रिकवर कर सके।

## `no_response`

जब कोई ऑटोमेटेड सिस्टम अभी बोल रहा हो या इसे सुनते रहने के लिए कहे, और जब कोई कॉलर सोचते हुए बोले ("उम्, ज़रा सोचने दें") या किसी और से बात करने के लिए मुड़े, तो एजेंट को चुप रखता है। जब कोई कॉलर कुछ करते समय एजेंट से इंतज़ार करने के लिए कहे ("एक सेकंड", "ज़रा चेक करने दें", "क्या आप एक सेकंड रुक सकते हैं?") और जवाब देने के लिए कुछ और न दे, तो एजेंट सिर्फ़ "ज़रूर।" कहता है ("आराम से कीजिए" नहीं) और कॉलर के दोबारा बोलने का इंतज़ार करता है। अगर लाइन शांत रहती है, तो एजेंट के साइलेंस चेक-इन चलते रहते हैं और हमेशा बोले जाते हैं। यह किसी लाइव
व्यक्ति के अभिवादन, किसी प्रश्न या वास्तविक होल्ड क्यू के लिए नहीं है। यह डिफ़ॉल्ट रूप से उपलब्ध है
और इसकी कोई एजेंट सेटिंग नहीं है।

अगर आपका प्रॉम्प्ट एजेंट को बताता है कि कॉलर के कुछ समय माँगने पर क्या कहना है, तो
प्रॉम्प्ट को प्राथमिकता मिलती है।

आमतौर पर बिल्ट-इन विवरण पर्याप्त होता है। IVR वाले कॉल के लिए, प्रॉम्प्ट में सीमा को स्पष्ट करें:

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

यह कार्रवाई कॉल समाप्त नहीं करती।

## `wait_on_hold`

लाइव व्यक्ति के वापस आने तक आउटबाउंड एजेंट को साइलेंट होल्ड स्थिति में रखता है।
मॉडल इसका उपयोग केवल तब करता है जब दूसरी पार्टी स्पष्ट रूप से कहती है कि एजेंट को
होल्ड पर रखा जा रहा है। यह आउटबाउंड कॉल पर अपने-आप उपलब्ध होता है और इसके लिए
कोई डैशबोर्ड सेटिंग नहीं है।

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

IVR के "कृपया प्रतीक्षा करें" संदेश के लिए एजेंट को इसका उपयोग करने का प्रॉम्प्ट न दें। डिफ़ॉल्ट रूप से होल्ड
15 मिनट तक रहता है। सामान्य आउटबाउंड कॉल के लिए, `POST /v1/call`
पॉजिटिव-इंटीजर `max_hold_seconds` स्वीकार करता है; इनलाइन Realtime
`max_hold_seconds` को 10–900 सेकंड तक सीमित करता है। यदि व्यक्ति
वापस आता है, तो एजेंट कॉल के एंड रीजन को बदले बिना फिर से शुरू हो जाता है। यदि सीमा
समाप्त हो जाती है, तो प्लेटफ़ॉर्म `end_reason: "ai_hangup"` के साथ कॉल समाप्त कर देता है।

## `search_knowledge_base`

एजेंट से संलग्न दस्तावेज़ खोजता है और प्रासंगिक अंश लौटाता है। इसे सक्षम करने के लिए
नॉलेज बेस या अलग-अलग नॉलेज दस्तावेज़ संलग्न करें, फिर मॉडल को बताएं कि कौन से
उत्तर उन स्रोतों से आने चाहिए:

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

यदि खोज विफल हो जाती है, तो परिणाम एजेंट को लौटाया जाता है। डैशबोर्ड और API सेटअप के लिए
[नॉलेज बेस](/hi/guides/knowledge-base) देखें।

## `play_sound`

उसी टर्न में किसी भी स्पीच के बाद एजेंट की कॉन्फ़िगर की गई नोटिफ़िकेशन साउंड चलाता है।
डैशबोर्ड में **उन्नत → टूल साउंड** को **चाइम**, **डिंग**,
या **बीप** पर सेट करें, फिर एजेंट को डिप्लॉय करें। **कोई नहीं** टूल को हटा देता है।

[Agents API](/api-reference/agents) के साथ, `play_sound_asset` को
`"chime"`, `"ding"`, या `"beep"` के रूप में स्टेज करें, फिर डिप्लॉय करें। टूल को
अक्षम करने के लिए इसे `""` पर सेट करें।

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

प्लेबैक विफलता एजेंट को लौटाई जाती है और कॉल समाप्त नहीं होती।

## `send_email`

एजेंट के मालिक द्वारा कॉन्फ़िगर किए गए एक प्राप्तकर्ता को प्लेन-टेक्स्ट ईमेल भेजता है।
मॉडल विषय और बॉडी प्रदान करता है। इसे कभी भी प्राप्तकर्ता पैरामीटर नहीं दिखता
और यह पता चुन या बदल नहीं सकता।

डैशबोर्ड में **उन्नत → ईमेल भेजें** सक्षम करें, प्राप्तकर्ता पता सेव करें,
फिर एजेंट को डिप्लॉय करें। [Agents API](/api-reference/agents) के साथ, दोनों
`send_email_enabled: true` और गैर-खाली `send_email_recipient` स्टेज करें, फिर डिप्लॉय करें।
प्रॉम्प्ट में ट्रिगर और आवश्यक सामग्री निर्धारित करें:

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

एक कॉल अधिकतम तीन ईमेल प्रयास कर सकती है। प्रत्येक विषय 300
कैरेक्टर तक और प्रत्येक बॉडी 20,000 कैरेक्टर तक सीमित है। मिसिंग कॉन्फ़िगरेशन, अमान्य
कंटेंट, प्रति-कॉल सीमा और डिलीवरी विफलताएं एजेंट को लौटाई जाती हैं।
विफल डिलीवरी भी तीन प्रयासों में से एक का उपयोग करती है।

व्यापक रूप से डिप्लॉय करने से पहले नियंत्रित प्राप्तकर्ता के साथ टेस्ट करें। Browser Talk और
सिमुलेशन वास्तविक ईमेल भेजते हैं; कोई ड्राई-रन मोड नहीं है।

## `calculate`

अंकगणितीय एक्सप्रेशन का सटीक मूल्यांकन करता है और परिणाम लौटाता है, ताकि एजेंट कीमतों का हिसाब अपने दिमाग में न लगाए। यह डिफ़ॉल्ट रूप से बंद रहता है। डैशबोर्ड में **उन्नत → कैलकुलेटर** सक्षम करें, फिर एजेंट डिप्लॉय करें। [Agents API](/api-reference/agents) के साथ, `calculator_enabled: true` स्टेज करें, फिर डिप्लॉय करें।

मॉडल एक्सप्रेशन लिखता है, जैसे `2*23.5 + 16.5 + 4`, और कॉलर को परिणाम पढ़कर सुनाता है। एक्सप्रेशन में संख्याएँ, `+`, `-`, `*`, `/`, और कोष्ठक इस्तेमाल किए जा सकते हैं। एक कॉल में `;` से अलग किए गए अधिकतम 10 एक्सप्रेशन हो सकते हैं, जैसे सबटोटल और डिलीवरी शुल्क के साथ कुल, कुल मिलाकर अधिकतम 500 कैरेक्टर तक। परिणामों को 10 दशमलव स्थानों तक राउंड किया जाता है। गणित सटीक दशमलव अंकगणित है, इसलिए `0.1 + 0.2` का परिणाम `0.3` होता है। शून्य से भाग देना और एक्सप्रेशन में कोई भी अन्य समस्या एजेंट को सुधारने के लिए एरर के रूप में वापस आती है। यह ThunderPhone पर चलता है और बिना किसी फिलर लाइन या टाइपिंग साउंड के तुरंत जवाब देता है।

इसे उन एजेंटों के लिए चालू करें जो ऑर्डर की कुल राशि, शुल्क या बकाया रकम बताते हैं। प्रॉम्प्ट में कोई बदलाव आवश्यक नहीं है।

## संगतता नोट

**उन्नत → बिना रुकावट वाली घोषणाएं** सेटिंग और लेगेसी
`speak_uninterruptible_enabled` फ़ील्ड संगतता के लिए बने हुए हैं, लेकिन उन्हें सक्षम करने का
कोई प्रभाव नहीं पड़ता। सेटिंग को बंद रखें; कोई प्रॉम्प्ट इस टूल को सक्रिय नहीं कर सकता।

कॉल शुरू होने पर आवश्यक घोषणा के लिए **सहमति घोषणा** का उपयोग करें। यह सामान्य
बातचीत से पहले शब्दशः चलती है और इसे बाधित नहीं किया जा सकता। [कॉल रिकॉर्डिंग सहमति कानून](/hi/guides/recording-consent-laws) देखें।

## बिल्ट-इन टूल का टेस्ट और मॉनिटर करें

प्रॉम्प्टिंग, नॉलेज खोज, साउंड और ईमेल जांचने के लिए ब्राउज़र Talk या सिमुलेशन का उपयोग करें।
वे वातावरण फ़ोन-नेटवर्क व्यवहार को पुनरुत्पादित नहीं कर सकते। आउटबाउंड फ़ोन कॉल पर
कीपैड नेविगेशन और होल्ड का टेस्ट करें, और पात्र इम्पोर्ट किए गए VoIP नंबर का उपयोग करके वास्तविक कॉल पर
पूरा वार्म हैंडऑफ टेस्ट करें। Realtime सपोर्ट ऊपर दी गई तालिका में दिखाए अनुसार
सीमित है।

## कॉल, मूल्य निर्धारण और वेबहुक

बिल्ट-इन कार्रवाइयों पर प्रति-उपयोग टूल शुल्क नहीं लगता। सामान्य कॉल और प्रोवाइडर शुल्क
फिर भी लागू होते हैं; [मूल्य निर्धारण](/hi/guides/pricing) देखें। उनके कॉल और परिणाम
पूर्ण ट्रांसक्रिप्ट में दिखाई दे सकते हैं, लेकिन वे `telephony.tool` या `web.tool` उत्सर्जित नहीं करते।
वे इवेंट [यूज़र-डिफ़ाइंड फ़ंक्शनों](/hi/tools/overview) के लिए हैं। केवल पूर्ण
हैंगअप या ट्रांसफ़र कॉल के `end_reason` को बदलता है; अन्य विफलताएँ एजेंट को लौटाई जाती हैं।
कॉल रिकॉर्ड के लिए [कंप्लीशन वेबहुक](/hi/webhooks/call-complete) देखें।
