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

# Configure an Assistant

> Set up an assistant's script, voice, documents, call settings, and developer handoff.

After creating an assistant, configure what it says, what it can look up, and how calls should behave.

To open the configuration page, click **Assistants** in the left sidebar, then click the assistant you want to edit.

***

## Configuration Areas

The left panel groups settings into three areas.

| Area                   | What You Control                                        |
| ---------------------- | ------------------------------------------------------- |
| **Assistant Settings** | Prompt, voice, custom variables, and knowledge base     |
| **Call Settings**      | Phone call behavior and webcall chat timing             |
| **Advanced Settings**  | Website embed, keyword boosting, and post-call analysis |

***

## Prompt

Click **Assistant Settings** and then **Prompt**.

The prompt is the assistant's working script. It has three important parts.

| Part                    | What to Write                                                             |
| ----------------------- | ------------------------------------------------------------------------- |
| **First Message**       | The exact opening line the assistant says when the call connects          |
| **Objective**           | The assistant's role, goal, and business context                          |
| **Response Guidelines** | Rules for tone, language, answer length, objections, and handoff behavior |

### First Message

Keep the first message short and clear.

```text theme={null}
Hello, this is Ananya from Aakash Digital. Am I speaking with @{{callee_name}}?
```

Use `@{{variable_name}}` when the greeting should include a value from the calling list, such as the customer's name.

The **Interruptible** setting controls whether the customer can speak before the first message finishes.

### Objective

Write one short paragraph that tells the assistant what to achieve.

```text theme={null}
You are Ananya, an academic counselor calling on behalf of Aakash Digital.
Your goal is to understand the student's exam preparation status and book a demo class if they are interested.
```

### Response Guidelines

Use bullet points for rules the assistant must follow.

```text theme={null}
- Keep answers under 40 words.
- Be polite and direct.
- Switch to Hindi if the customer starts speaking Hindi.
- If the customer asks for pricing, use the attached knowledge base.
- If the customer is upset, apologize once and end the call politely.
```

***

## Voice

Click **Assistant Settings** and then **Voice**.

| Field                  | What It Means                  |
| ---------------------- | ------------------------------ |
| **Primary Language**   | The main language for the call |
| **Secondary Language** | Optional backup language       |
| **Voice Character**    | The voice customers will hear  |

Use **Most Used** or **Neutral** to filter voice options. Save the voice, then run a test call before using it in a campaign.

***

## Custom Variables

Click **Assistant Settings** and then **Custom Variables**.

Custom variables are placeholders that Ringg AI fills in for each call. They usually come from a campaign CSV or from your backend.

| Variable      | Example Value  | Where You Might Use It         |
| ------------- | -------------- | ------------------------------ |
| `callee_name` | `Vikram`       | First message                  |
| `loan_amount` | `120000`       | Collections script             |
| `course_name` | `JEE Advanced` | Admissions or education script |

Use the same spelling in the assistant prompt and in the CSV column name. For example, `@{{callee_name}}` needs a CSV column named `callee_name`.

***

## Knowledge Base

Click **Assistant Settings** and then **Knowledge Base**.

1. Select an existing knowledge base.
2. Confirm it is trained and ready.
3. Click **Save**.

Use a knowledge base when the assistant needs to answer questions from approved documents, such as FAQs, pricing, policy rules, product details, or eligibility criteria.

See [Create a Knowledge Base](/get-started/guides/create-knowledge-base) if you need to create one first.

***

## Call Settings

Click **Call Settings** and then **Call**.

| Setting                                       | Plain-English Meaning                                     |
| --------------------------------------------- | --------------------------------------------------------- |
| **Maximum Call Duration**                     | The longest one call can last                             |
| **Inactivity Duration**                       | How long silence can continue before the assistant reacts |
| **Timezone**                                  | The timezone used for call schedules and reporting        |
| **Noise Filtering**                           | Helps reduce background noise                             |
| **Voicemail Detection**                       | Detects voicemail instead of a live person                |
| **Leave Voicemail Message**                   | Lets the assistant leave a voicemail message              |
| **Retry Call**                                | Tries again when voicemail is detected                    |
| **Silence Callee During Introduction**        | Prevents interruption during the opening line             |
| **Silence Callee When Assistant is Speaking** | Reduces cross-talk while the assistant speaks             |
| **Enable Background Audio**                   | Adds background sound for a more natural call             |
| **Enable Graceful Exit Warning**              | Warns the customer before ending the call                 |

<Tip>
  For a first launch, keep settings simple. Set a reasonable maximum duration, choose the correct timezone, and test voicemail behavior before calling real contacts.
</Tip>

***

## Chat Settings

Click **Call Settings** and then **Chat**.

These settings apply to **Webcall** assistants.

| Setting                  | What It Controls                         |
| ------------------------ | ---------------------------------------- |
| **Maximum Call Length**  | The total webcall session length         |
| **Idle Timeout Warning** | When the user is warned about inactivity |
| **Idle Timeout End**     | When the webcall ends after inactivity   |

***

## Embed

Click **Advanced Settings** and then **Embed**.

Use this only for a **Webcall** assistant.

1. Choose the widget theme, size, feedback screen, and branding.
2. Select the SDK version.
3. Click **Preview** to check the widget.
4. Copy the generated code.
5. Send the code to the website owner or developer.

<Note>
  Website teams should add the embed code to the website, not to internal documents or email templates.
</Note>

***

## Keyword Boosting

Click **Advanced Settings** and then **Keyword Boosting**.

Add words the assistant must recognize correctly, such as brand names, course names, product names, city names, acronyms, or plan names.

1. Type one keyword.
2. Click **Add**.
3. Repeat for each important word.

***

## Custom Analysis

Click **Advanced Settings** and then **Custom Analysis**.

Custom analysis extracts structured results after each call. Use it when your team needs consistent reporting fields.

Example fields:

| Field              | Type    | Meaning                                |
| ------------------ | ------- | -------------------------------------- |
| `interested`       | Boolean | Whether the customer showed interest   |
| `preferred_course` | String  | Course mentioned by the customer       |
| `objection`        | String  | Main reason the customer did not agree |

Example prompt:

```text theme={null}
From the transcript, extract whether the customer agreed to a demo booking, the preferred course, and the main objection if they declined.
```

Click **Save**, then **Test Analysis** before launch.

***

## Run a Test Call

Click **Test call** in the top-right corner.

Use a real phone number owned by your team. Check that:

* The first message sounds right.
* Variables such as customer name are filled correctly.
* The assistant follows the objective.
* The voice and language are appropriate.
* The call ends politely.
* The transcript and analysis are useful.

***

## Developer Handoff

Send this information to the engineer or website owner before launch:

| Item                      | Why It Matters                                                                          |
| ------------------------- | --------------------------------------------------------------------------------------- |
| `agent_id`                | Required for API calls, campaigns, webhooks, and webcall setup                          |
| Custom variable names     | Must match CSV columns or backend payload fields                                        |
| Knowledge base name or ID | Helps confirm the right documents are attached                                          |
| Embed code                | Needed only for webcall website setup                                                   |
| Webhook events needed     | Examples: call status, recording, transcript, custom analysis, all processing completed |
| Test call results         | Gives the developer a real call to verify history, webhooks, and reporting              |

For production integrations, ask the developer to configure webhooks after the assistant is approved. See [Webhook setup](/webhooks/initial-setup).
