> For the complete documentation index, see [llms.txt](https://docs.borndigital.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.borndigital.ai/digital-agent/workspace/deploy-project.md).

# Deploy Project

Put a trained version of your project into operation on chat bubbles and phone numbers, change its voice settings, roll back and take it offline.

Deploying connects a **trained version** of your project to the places where customers talk to it: **bubbles** on your web pages and **phone numbers**. Each bubble and each phone number serves exactly one version at a time.

## Open the Deploy dialog

* **In the flow editor**, click **Deploy** in the bottom bar. It deploys the version open in the current tab and is available once that version is trained.
* **In the project details**, click **Deploy**. It deploys the newest version of the project and is available once that version is trained.
* **In Bubble design**, open a saved bubble's **⋯** menu, click **Deploy** and confirm with **Deploy**. The dialog opens for the version the bubble already uses, with the bubble selected. The item is available once the bubble is deployed.

<figure><img src="https://4261467870-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6iQTvxgRZRwPS1NgIGEb%2Fuploads%2Fgit-blob-27eb8ca930e7def9e4fbe9e2dcbc69b55e9a1e40%2Fdeploy-open-from-bubble.png?alt=media" alt="Bubble design of a deployed bubble linked to the project My first agent, with the question Do you want to deploy this configuration? and the Dismiss and Deploy buttons"><figcaption><p>Opening the Deploy dialog from Bubble design</p></figcaption></figure>

The header of the dialog shows the project name, the version and its config hash. The dialog has two tabs, **Essential** and **Extras**, and a **Latency** chart.

## Essential

### General

| Setting            | What it does                                                                                                                                   |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Assign numbers** | The phone numbers of your organization that should answer with this version. Numbers are prepared for your organization by Born Digital.       |
| **Assign Bubbles** | The bubbles that should run this version. Create bubbles in **Organization** › **Bubble design**.                                              |
| **Record calls**   | Records the calls on the assigned numbers. Recordings appear in [Recordings](/digital-agent/advanced-functions/recordings.md). Off by default. |

Removing a number or a bubble from the list and confirming disconnects it from this version.

If only some of the selected phone numbers can be assigned, the others go live with this version and Studio tells you which numbers failed. Assign the failed numbers again or contact Born Digital support.

<figure><img src="https://4261467870-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6iQTvxgRZRwPS1NgIGEb%2Fuploads%2Fgit-blob-c5405b05d73a4fb20af70b7ea8cf0765969294a1%2Ftutorial-step6-assign-bubble.png?alt=media" alt="The Essential tab of the Deploy dialog with a bubble in Assign Bubbles and AZURE as the new Speech to text provider; the config hash is blurred"><figcaption><p>The Essential tab: General and Speech to text</p></figcaption></figure>

### Speech to text

Choose the **Provider** that transcribes what the customer says – see [Speech providers](/digital-agent/voice/speech-providers.md). **What's live** shows the provider currently used, **New** the one you are about to deploy.

{% hint style="warning" %}
A speech-to-text provider is required for every deployment – also for a chat-only bubble.
{% endhint %}

### Voice

The voice that reads your messages aloud. **What's live** shows the current settings, **New** the ones you are about to deploy.

| Setting                             | What it does                                                                                                                                                                                        |
| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Provider**                        | The text-to-speech provider. Required.                                                                                                                                                              |
| **Voice model**                     | The voice. Required for every provider except Google.                                                                                                                                               |
| **TTS model**                       | The speech model – shown for ElevenLabs only.                                                                                                                                                       |
| **Speaking rate**, **Voice pitch**  | Faster or slower, higher or lower voice – shown for Google, Azure and Azure Voice Live.                                                                                                             |
| **Language split**                  | Use a different voice for another language. Click **+**, choose the language and set its provider and voice.                                                                                        |
| **Repeat question after no answer** | How many **No input** signals in a row the call allows (**1x**–**10x**, default 3). Until then the flow decides what to say; at the limit the call is hung up. Available when a number is assigned. |

The **Voice** section is hidden – and not required – when you deploy only to bubbles that have **Voice** and **Avatar** turned off in [Bubble design](/digital-agent/building-new-projects/step-6-put-the-agent-on-your-website.md#create-a-bubble). As soon as a phone number or a voice-enabled bubble is selected, a voice provider and voice are required.

The speech-to-text and voice settings you deploy become the voice settings of the whole project.

<figure><img src="https://4261467870-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6iQTvxgRZRwPS1NgIGEb%2Fuploads%2Fgit-blob-4c2c34c44437a2e73d85ac98ff56def4c39fb704%2Fdeploy-essential-voice-latency.png?alt=media" alt="The Voice section of the Deploy dialog with Language split, What&#x27;s live, the new Provider ELEVENLABS, Voice model and TTS model, Repeat question after no answer from 1x to 10x, and the Latency chart showing Speech (Azure) 700 ms"><figcaption><p>The Voice section and the Latency chart</p></figcaption></figure>

### Latency

The chart on the right estimates how long the customer waits for an answer on a call: the fixed system and telephony latency, plus the latency of the selected voice and speech providers. Hover over the chart to see each part, for example *Speech (Azure): 700ms*. If the flow uses an AI node, add the time of the language model.

## Extras

The extras apply to phone calls and are available when a number is assigned. They are saved on every assigned number.

* **Background music** – a sound that plays during the whole call. Choose an uploaded **Audio file**, **None**, or **Upload File (.wav)**, and set the **Volume**.
* **Blacklist** – **Phone numbers** that are blocked from calling the assigned numbers.
* **Whitelist** – the only numbers allowed to call the assigned numbers. Enter a **Phone number**, set **Calls allowed** (how many calls that number may make, default 10) and click **Add**.

<figure><img src="https://4261467870-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6iQTvxgRZRwPS1NgIGEb%2Fuploads%2Fgit-blob-5b6dce53b3b336ab6fdcd39b544168934390abc5%2Fdeploy-extras.png?alt=media" alt="The Extras tab of the Deploy dialog with Background music (No background music selected), Blacklist and Whitelist (None yet)"><figcaption><p>The Extras tab</p></figcaption></figure>

## Confirm

Click **Confirm**. Studio checks the settings, assigns the numbers and bubbles and saves the voice settings, then shows: *"The numbers are being configured, the changes will take effect in a few seconds."*

Make a test call to the number or open the page with the bubble to check the deployed version.

**Where to see what is live:**

* The **project list** marks a deployed project as live – for numbers and bubbles.
* In the editor tab, the sidebar and the **Connected** column of **Version history**, a version shows as live when it has **phone numbers** assigned. Bubble deployments are not shown there.

## Update, roll back, take offline

**Deploy a new version.** Train the new version and deploy it to the same numbers and bubbles. They move from the old version to the new one. The old version keeps running everywhere it is still assigned, so you can work on new versions without affecting customers.

**Roll back.**

1. Open the project details, go to **Version history**, tick the older version and click **Open version**.
2. If the version is not trained, click **Train version**.
3. Click **Deploy**, select the same numbers and bubbles again (they are not preselected for another version) and click **Confirm**.

**Take a version offline.** Open the **Deploy** dialog of the version, remove all numbers and bubbles and click **Confirm**. **Untrain version** also takes the version offline – after training it again, you have to deploy it again.

{% hint style="info" %}
Changing the flow of a deployed version does not change what customers get until you train and deploy it again.
{% endhint %}
