Connecting apps
An app is a software solution based on combining several basic services into a separate product.
Each application has its own scenario or set of scenarios to run.
The volume of use of the app (product) is taken into account as the volume of use of all the basic services included in it.
The Apps section contains a list of all currently connected services to customer with the ability to switch to any service and add or change its settings.
The following types of app are implemented in the system:
App type | Description |
---|---|
Voice bot | a service for mass calling of a list of subscribers by an intelligent voice robot, as well as for receiving and processing incoming calls by a voice robot using various customizable conversation scenarios |
Flash Call | a two-factor authorization method that allows you to send a confirmation code to the subscriber in the form of the last 4 digits of the number from which the call is received. When a call is received by a subscriber, the system ends the call |
Flash and tts call | the two-factor authorization method is similar to Flash Call, with the difference that when the subscriber picks up the handset, the system will not end the call, and the robot will dictate the code |
Voice password | a two-factor authorization method in which, in response to a request, the subscriber receives a call and the robot pronounces an arbitrary confirmation code |
Chat bot | Integration with the messenger, designed to automate communication with users |
Phrase Password | a solution for authorizing subscribers through a code word dictated by a robot in an incoming call |
Number masking | The technology that protects the phone number. This is used to protect the privacy of both the caller and the receiver of the call |
Connecting a new app
In order to connect a new customer app, go to their profile and open the Personal Accounts tab. Then go to the personal account to which the new service will be linked or create a new one.
Next, in the Apps section, click on “+ Add”.
Give the new application a name or leave the system-generated one. Next, select the “App type”.
Available app types
- Voice bot;
- Flash call;
- Flash and Tts call;
- Voice Password;
- Phrase Password;
- Number masking.
Voice bot
A Voice bot is an application for automatically delivering information to customers through phone calls. Customers receive calls with pre-recorded messages, which can be from either the organization’s number or a random number.
How it works:
- The user creates a text notification that needs to be voiced;
- The application uses Text-to-Speech (TTS) technology to convert the text notification into an audio format;
- The customer receives a call, during which the prepared audio notification is played;
- Upon answering the call, the client can listen to the notification.
Main use cases:
- Marketing message distribution – information about discounts, promotions, and new arrivals;
- Event reminders – appointments, order readiness for pickup, and overdue payment notifications;
- Post-purchase notifications – bonus accruals notifications, customer service surveys, and customer database verification, etc.
Advantages:
- The Voice bot allows users to receive important information without having to read text messages;
- It reduces the workload on employees by automating the notification process;
- A voice bot can be more noticeable and memorable, leading to better information retention;
- In handles calls in parallel, freeing up the company’s incoming line;
- In answers frequently asked customer questions even outside of business hours.
Application Settings:
- Maximum call time in seconds — the time it takes to connect to the subscriber;
- A-number — the source number for the call:
- API — the number is provided by an external system upon an API request;
- Number — the application calls from a single number (selected from a drop-down list of numbers available for this client, see Numbers);
- Numbers pool — the application will call from a list of numbers (see Numbers pool). Select the required number pool from the drop-down list;
- Answer Machine Detected — identifying answering machines to exclude such calls from further processing;
- Distribution priority — the ability to set priorities for applications to ensure more important tasks are serviced first;
- Dialog storage — enabling this allows for saving recordings of conversations;
- During the (days) — the retention period for data expressed in days. The time period during which recordings are stored before they may be deleted;
- Recording conversations — automatic recording of conversations;
- Repetitions are a setting for re-executing calls that ended with an error.
Repeat settings in the application
Application settings can be configured:
- Through the API:
- Parameters can be set via the API (see “Launching the application with repeats” for details);
- Through application settings:
- If parameters are not specified in the API, they will be taken from the application settings;
- If parameters are missing in both the API and the application settings, repeat calls will not be made.
When Repeats are enabled, the following parameter settings are available:
Automatic call repeat in case of:
- The subscriber answered the call;
- The subscriber did not pick up;
- The subscriber’s line was busy;
- The call was not delivered to the subscriber (error).
For each case, you can set the number of retry attempts (from 1 to 199) and the interval between attempts (from 1 to 1440 minutes).
Flash call
Flash Call is a modern authentication technology that uses an incoming call to verify the user’s identity. Unlike standard SMS codes, Flash Call allows for a quicker and more convenient verification process.
How it works:
- The user receives a call on their mobile phone;
- To confirm their identity, the user is prompted to enter the last four digits of the number from which the call was made;
- Entering the last four digits of the number serves as a method of user authentication;
- Authentication is carried out through the mobile network, which enhances reliability. This method protects against potential SMS vulnerabilities, making the process more secure.
Main applications of Flash Call:
- Online stores – for purchase confirmation and authentication during registration or account login;
- Offline stores – for quickly confirming payments or registration customers in loyalty programs, etc.
Advantages of Flash Call:
- Convenience – users do not need to wait for and enter long SMS codes, they simply receive the call and enter the last four digits;
- Security – the risk of code interception is reduced as the call goes through the cellular network, making the technology more secure;
- Speed – authentication time is significantly reduced, improving the user experience.
Application settings:
- Maximum call time in seconds — the time it takes to connect to the subscriber;
- Numbers pool — the application will call from a list of numbers (see Numbers pool). Select the required number pool from the dropdown list;
- Distribution priority — the ability to set priorities for applications to ensure more important tasks are serviced first;
- Dialog storage — enabling this allows for saving recordings of conversations.
Flash and Tts call
In this application, the code is delivered via voice, making it easier for users to process the information.
Process of use:
- The user initiates the process by selecting phone number login;
- The application automatically places a call to the specified phone number;
- The user answers the call and listens to the code word, which the app delivers via an automated text-to-speech system;
- After the successfully code entry, the system verifies its accuracy, and the user gains access to the desired service, whether it’s account authentication, loyalty card confirmation, or another service.
Application settings:
- Maximum call time in seconds — the time it takes to connect to the subscriber;
- Numbers pool — the application will call from a list of numbers (see Numbers pool). Select the required number pool from the dropdown list;
- Distribution priority — the ability to set priorities for applications to ensure more important tasks are serviced first;
- Dialog storage — enabling this allows for saving recordings of conversations.
Voice Password
Voice Password is an authorization service via phone call, where a robot reads out a numerical confirmation code. The system uses one-time passwords (OTP), making it a reliable alternative to SMS and PUSH notifications. Voice Password provides similar speed and security compared to other authorization methods.
How it works:
- The user enters their phone number in the designated field on the website or app to initiate the authorization or confirmation process;
- After entry, the data is sent to the Voice Password system, which starts the process of generating a one-time code;
- The specified phone number receives an automated call, during which a robot reads out the numeric confirmation code;
- The user enters the received code into the corresponding field on the website to confirm their identity or transaction;
- The system verifies the correctness of the entered code, after which access to services is granted, or the transaction or operation is confirmed.
Advantages of using Voice Password:
- The use of one-time passwords (OTP) ensures a high level of protection against unauthorized access;
- Suitable for users who find it inconvenient to receive confirmations via SMS or PUSH notifications, or in situations where such notifications do not work.
Application settings:
- Maximum call time in seconds — the time it takes to connect to the subscriber;
- A-number — the source number for the call:
- API — the number is provided by an external system upon an API request;
- Number — the application calls from a single number (selected from a dropdown list of numbers available for this client, see Numbers);
- Numbers pool — the application will call from a list of numbers (see Numbers Pool). Select the required number pool from the dropdown list;
- Distribution priority — the ability to set priorities for applications to ensure more important tasks are serviced first;
- Dialog storage — enabling this allows for saving recordings of conversations.
Phrase Password
Phrase Password is an authorization service via a phone call, where a robot reads out a code word to confirm the user’s identity or action. The system uses one-time passwords (OTP) and provides a reliable alternative to SMS and PUSH notifications, offering similar speed and a high level of security.
How it works:
- The user enters their phone number in the form on the website or app to initiate authorization or confirmation;
- The phone number information is transmitted to the system, which generates a unique one-time code word;
- The user receives a call, during which the robot announces the code word;
- After receiving the code word, the user enters it into a designated field on the website to complete the authorization or confirmation process;
- The system verifies the correctness of the entered code word, after which it grants access to the required services or confirms the requested action (e. g., transaction or account login).
Application settings:
- Maximum call time in seconds — the time it takes to connect to the subscriber;
- A-number — the source number for the call:
- API — the number is provided by an external system upon an API request;
- Number — the application calls from a single number (selected from a dropdown list of numbers available for this client, see Numbers);
- Numbers pool — the application will call from a list of numbers (see Numbers pool). Select the required number pool from the dropdown list;
- Distribution priority — the ability to set priorities for applications to ensure more important tasks are serviced first;
- Dialog storage — enabling this allows for saving recordings of conversations.
Number masking
Number masking is a service that helps protect the privacy of individuals and companies when making phone calls. The principle of operation is to provide the user with a temporary or virtual number that acts as an intermediary between the caller and the recipient. Thus, when calling this number, the recipient sees a disguised number instead of the caller’s real number.
This service is designed to preserve the confidentiality of a personal or business phone number, preventing its transfer to unknown or unreliable persons. Number masking is relevant in the following situations:
- Conducting surveys;
- Technical Support services;
- Customer support calls;
- Private ads;
- Any other cases where communication is necessary without disclosing personal contact information.
The main components of the application settings:
- Number pool — a list of available virtual numbers that will be used in the application for masking;
- Media is played in case of an error or if the subscriber’s response differs from the expected one (when responding with a code other than 200).
Call processing logic:
- Virtual numbers from the pool are placed in the public domain;
- When a call is received to one of the virtual numbers, the system sends a callback-request to the URL specified by the client. This request signals an incoming call and waits for a response from the URL containing the real number of the subscriber to which the call will be redirected;
- Processing the client’s response, in case of a successful response (status 200), the call is redirected to the real number;
- If the client’s URL has not worked (the status is not 200), a pre-configured audio file is played instead of transferring the call;
- After the end of the conversation, the system sends the result of the call to the specified URL.
Callback Request Setting
Callback requests are used to transmit information about the call.
- Method — selected from the list of available methods (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, TRACE);
- The URL to which callback requests will be sent. The URL must be available for processing requests;
- Timeout (ms) — the maximum waiting time for a response to a request. If no response is received during this time, the request is considered unsuccessful;
- Authorization — the setting enables or disables authorization depending on the URL requirements.
The request in JSON format that is passed in the callback request:
{
"id": "1725256981.1925",
"destAddr": "XXXXXXXXXXX",
"sourceAddr": "+XXXXXXXXXXX"
}
Parameter | Description |
---|---|
id | Unique channel identifier |
destAddr | A virtual number that receives a call and transfers it to a real number |
sourceAddr | The number from which the call is being made |
A response in JSON format indicating that the call should be redirected from a virtual number to a real one:
{
"sourceAddr": "XXXXXXXXXXX",
"abonentNumber": "XXXXXXXXXXX"
}
Parameter | Description |
---|---|
sourceAddr | The number from which the call is being made |
abonentNumber | The number that receives the call after the transfer from the virtual |
Result Request Settings
Result request settings:
The result request is used to transmit information about the execution of a call, such as duration, status, errors, and other parameters.
- Method — selected from the list of available methods (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, TRACE);
- The URL to which the result of the call processing will be sent;
- Timeout (ms) — the waiting time for a response to a request. If no response is received within this time, the request is considered unsuccessful;
- Authorization — the setting enables or disables authorization depending on the URL requirements.
The body of the result request in JSON format, which is transmitted after the end of the call:
{
"rawDuration": 46,
"destAddr": "XXXXXXXXXXX",
"id": "1725261354.1927",
"sourceAddr": "+XXXXXXXXXXX",
"state": 2,
"transferTo": "XXXXXXXXXXX",
"billDuration": 45,
"error": 0,
"errorTxt": ""
}
Parameter | Description |
---|---|
rawDuration | The total duration of the call, including all states such as waiting for a connection, the connection, the conversation itself, and any other periods while the call remains active |
destAddr | A virtual number that redirects to a receiving number |
id | Unique channel identifier |
sourceAddr | The number from which the calls is made |
state | The result of the application execution |
transferTo | The number that receives the call |
billDuration | The time spent directly on the conversation, which is subject to billing. It does not include connection waiting periods or any other states other than the conversation itself |
error | Error code, or 0 – in case of successful execution |
errorTxt | The text of the received error |
The result request transmits data about the duration of the call, status, and errors, if any. The response from the application contains information about which number was inserted into the mask.
Give the new app a Name or leave the one generated by the system. Next, select the Type of app.
Depending on the selected type, configure the following parameters:
Max.calltime, sec. — this parameter sets the dial-up time to the subscriber in seconds.
Sender — the setting is responsible for where the app will receive the phone number from which the call will be made. Select one of the following sources:
The API number comes from an external system when requested from the API.
Number — the app calls from one number (selected from the drop-down list of numbers available for this customer. See Numbers and Number pools).
NumberPool — The app will call from a list of numbers (see Numbers and Number pools). Select the desired pool of numbers from the drop-down list.
Then specify the DistributionPriority. Apps with high priority will be served first. And click “Save”.
Using the example of the VoiceNotifications app:
Activation of the app via the API
Any app can be activated via HTTP and SMPP protocols. The “Integration” service type is responsible for this as part of the app. Go to it and add a connection. For information on how protocol connections are configured, see here.
It also sets up the addition of tariffs for this service and the selection of a routing group.
Tariffs:
Clicking on “Edit” opens a window where you can set the tariff:
Routing Group:
To add a routing group, click “Edit”:
From the pop-up list, select the group that was created earlier and click “Save”.