Getting started
Before you start integrating voice AI functionality into your project, you need to create a Voximplant application and a scenario.
Create a Voximplant application
A Voximplant application is a place designed to perform a specific task. It contains scenarios, users, attached phone numbers for calls, and much more.
To create an application, log in to your Voximplant account or create a new one. Then, navigate to the application section from the upper left corner of the page. Click New application in the upper right corner or Create at the bottom of the page.

This opens a new application editor window where you can set it up and save by clicking Create. The newly created app appears in the application list. To modify its name, icon, or description, click the three dots menu and select Edit.

You can learn more about Voximplant applications and their sections in the Getting started → Applications section of this documentation.
Create scenarios within the application
Scenarios in Voximplant are JavaScript documents within a Voximplant application, where you can implement logic processing calls and messages.
To create a scenario, open your existing or newly created application application, and select Scenarios on the left menu, and click on the plus icon to create a new scenario. Give it a name.

This opens a new tab in the online IDE on the right, where you can write your code. If needed, you can rename the scenario or modify the source code later.
Create routing rules
Routing rules in a Voximplant applications define when and on what conditions to launch existing scenarios. When an incoming call arrives or you make call via your application, a routing rule decides which scenario to launch.
To create a routing rule, navigate to the Routing tab in your application. You can either click Create in the center of the screen or New rule in the upper right corner:

This opens the New rule editor, where you can specify the rule name, properties, and attach one or more scenarios:

If you intend to use the scenario for video conferencing, enable the Video conference switch. Without this parameter, all video conferences fail with an error.
With the Video conference switch enabled, all the calls made via SDKs or softphones are billed as video conferences.
The Pattern field checks if the call’s destination (the dialed number or username specified in the e.destination
property of the incoming call) matches any rule’s pattern. If the call’s destination aligns with the pattern, the attached scenario(s) are executed. If the call’s destination doesn’t match the pattern, the attached scenario(s) remain inactive, and the call proceeds to the next routing rule.
The application systematically evaluates the routing rules from top to bottom, with higher-priority rules taking precedence. When the call’s destination matches one of the rules, the rule is executed, and the application disregards any subsequent rules, ensuring that only one rule is executed at a time.
If the destination phone number meets several rules' patterns, only the first rule executes.
The Pattern field employs regular expressions to create masks for phone numbers or usernames. Common expressions include:
.*
means any quantity of any symbols, so all the numbers or usernames match the rule.+?[1-9]\d{1,14}
matches any phone number123.+
matches 1234, 12356, etc., and so on.
For more information on building regular expressions, refer to Wikipedia.
The Available scenarios dropdown list enables you to attach one or more scenarios to execute when the rule is triggered.
You can attach multiple scenarios to a single rule. In this scenario, the rule executes all the attached scenarios sequentially within a single context, promoting code reuse. This allows you to encapsulate all the functions within a scenario and utilize them in another scenario.
You can view all the attached scenarios in the Assigned scenarios field.
After specifying all the settings, click the Create rule button to create a rule.
You can learn more about routing rules and ways to launch them in the Getting started → Routing rules section of this documentation.
You may need to buy and attach a phone number for your application, if you need it.
Integrate your provider
In the folders below, you can find supported voice AI providers and guides on how to integrate them into your newly created application.