# Voice+™

## What's a Voice+ app?

Choosing *Voice+* when creating a new application is a fast, starter application that enables true two-way, hands-free conversations between a user and AI across web or mobile applications.

This application type turns your site or app into a voice-driven assistant that can talk, understand, and act, so your users accomplish goals more easily when visiting your domain.

<table><thead><tr><th>Features</th><th width="196.47686767578125" data-type="checkbox">Readymade Voice+ app</th><th data-type="checkbox">Custom app with Voice+ node</th></tr></thead><tbody><tr><td><em>UI navigation</em><br>Move between pages</td><td>true</td><td>true</td></tr><tr><td><em>Fill forms</em><br>Enter fields &#x26; correct field entries</td><td>true</td><td>true</td></tr><tr><td><em>Use real-time context</em><br>SDK analyzes pages to improve navigation and forms</td><td>true</td><td>true</td></tr><tr><td><em>Trigger commands</em><br>Send structured data to your frontend</td><td>true</td><td>true</td></tr><tr><td><em>Answer FAQs</em><br>Pull answers from a knowledge base &#x26; support relevant navigation or form-fill</td><td>true</td><td>true</td></tr><tr><td><em>Turn off small talk</em><br>Remove ad-hoc replies to small talk not found in your knowledge base</td><td>false</td><td>true</td></tr><tr><td><em>Custom message</em><br>Supply your own Welcome message &#x26; process</td><td>false</td><td>true</td></tr><tr><td><em>Combine scripted responses</em><br>Use predefined messages for consistent custom AI replies</td><td>false</td><td>true</td></tr><tr><td><em>MCP tools</em><br>Fetch live data to pull info from outside your domain</td><td>true</td><td>true</td></tr></tbody></table>

{% hint style="info" %}
Interested in the customization options? Learn how to [create a custom Voice+ app](/platform/nlx-platform-guide/ai-applications/types/custom-voice+.md)
{% endhint %}

## Step 1: Add app

{% hint style="info" %}
SKIP this step and import the [Handsfree Voice+ template](https://platform.nlx.ai/onboarding) into your workspace to have a knowledge base trained on content from your web domain.
{% endhint %}

{% @arcade/embed flowId="yWh1UFXVIHKfn2EiYXIy" url="<https://app.arcade.software/share/yWh1UFXVIHKfn2EiYXIy>" %}

1. Select *Applications* in your workspace menu and choose *New application*
2. Click *Blank application* from the available options and select *Voice+*
3. Enter a name for your app and click *Create*

Your new app will open on the *Configuration* tab.

## Step 2: Configure

The *Configuration* tab allows you to provide the necessary instructions, tools, and communication method for your Voice+ app to operate.

{% stepper %}
{% step %}

#### AI Engine

An AI engine helps disambiguate human speech for both language understanding and intent recognition and also helps construct construct a package of your application whenever a new build is made. The built-in NLX model is provided for you for seamless setup.

1. Enter a prompt explaining your Voice+ assistant's purpose, brand persona (e.g., "Talk like a Jane Austen character"), and rules for engagement with users
   {% endstep %}

{% step %}

#### Delivery

An [API channel](/platform/nlx-platform-guide/ai-applications/deployment/managing-channels/creating-an-api-channel.md) is set up by default for easy installation on your web or mobile frontend.&#x20;

2. Choose API channel > Select *General* tab in modal > Whitelist your domain
   * Select *Voice* tab in modal > Enable and choose a TTS provider and the voice persona you would like to use (choose from built-in Inworld AI, ElevenLabs, Hume, OpenAI, or Amazon Polly)
   * Select *Touchpoint* tab in modal > Switch *Communication style* to Voice > Select *Mini* as Layout
   * Change Color mode, Font, and Accent color to fit your business
   * Click *Update channel*
     {% endstep %}

{% step %}

#### Functionality

If you chose to import the [Voice+ quickstart template](/platform/nlx-platform-guide/ai-applications/types/quickstart-templates.md#choose-template) from <https://platform.nlx.ai/onboarding>, a knowledge base will be generated for you based on the web domain you provided.

3. Assign [a Q\&A knowledge base](/platform/nlx-platform-guide/flows-and-building-blocks/knowledge-bases/ingest-content.md) set up in your workspace. Unknown queries from a user will call the knowledge base to locate an answer
4. \[Optional] Assign [MCP-enabled flows](/platform/nlx-platform-guide/flows-and-building-blocks/overview/setup.md#model-context-protocol-mcp) for your Voice+ assistant to follow structured workflows or extend capabilities to search and retrieve information outside of your web domain
5. Click *Save*
   {% endstep %}
   {% endstepper %}

## Step 3: Deploy

Deploying a Voice+ application type allows you to construct a build that contains a package of the prompt, functionality tools, and API channel details in the state they exist at the time the build is created. You may then deploy a successful build to make it live or roll back to a previous deployment.&#x20;

{% @arcade/embed flowId="nCvIC9q352JL6PCdMGlz" url="<https://app.arcade.software/share/nCvIC9q352JL6PCdMGlz>" %}

{% stepper %}
{% step %}

#### Build

1. Click deployment status in upper right and select *Build and deploy*
2. Review the *Validation check* for critical errors or detected UX issues. Before each new build initiates, a validation check is run to provide a preview of potential errors that may cause failed builds. Detected issues are listed with descriptions and solutions
3. \[Optional] Provide a *Description* of notable build edits as a changelog
4. Click *Create build*

{% hint style="warning" %}
Experiencing a *Failed* build? Select the *All builds* option in the deployment menu and click the failed build to view details on what caused an error.
{% endhint %}
{% endstep %}

{% step %}

#### Deploy build

Your website provides the frontend interface (how users experience your app) via the API channel. Deploying a build pushes your updates through the API channel, effectively making your app live outside of your NLX workspace.

5. Click *Deployment* in upper right and select *All builds*&#x20;
6. Choose *Deploy* on successful build
7. Click *Create deployment*

{% hint style="info" %}
Enable *One-click deploy* to auto-deploy every new build. From the deployment status, choose *Deployment settings* and turn *One-click deploy* on. All future builds will deploy automatically.
{% endhint %}

Once a build is made, flows added as tools can be further edited without affecting a deployed application. Only deploying a new build will impact live applications. One build can be deployed at a time and deploying any build deactivates the previous one. You can freely alternate between newer and older builds using *Rollback* or *Deploy.*
{% endstep %}

{% step %}

#### Implement

8. Click the *Configuration* tab of your application and select the API channel
9. Choose *Touchpoint*
10. Copy setup snippet (scroll down) and install to your web client
    {% endstep %}
    {% endstepper %}

{% hint style="warning" %}
Want to take your app offline? Choose the latest deployed build > Select *Deployment* tab in modal > Scroll to *Danger zone* and click *Delete* *deployment*. The app stays offline until you redeploy.
{% endhint %}

## App settings

Select your app's *Settings* tab to access the following:

<details>

<summary>Session start timeout</summary>

Sets how long (in seconds) NLX waits after a user opens the Touchpoint widget before ending the session due to inactivity

</details>

<details>

<summary>Inactivity timeout</summary>

Sets how long (in seconds) NLX waits between user turns before ending the session for inactivity

</details>

<details>

<summary>Delete</summary>

Allows you to delete your Voice+ application. Note that a knowledge base and tools assigned will not be deleted and will remain available for use with other applications in your workspace

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nlx.ai/platform/nlx-platform-guide/ai-applications/types/voice+-tm.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
