Basic Architecture of the Industrial Environment



For an industrial environment with an average load of up to 400 thousand calls per day (250-350 simultaneous calls with call recording) and about 100 thousand chats per day, it is necessary to prepare 3 virtual machines, which are described in paragraphs 1-3 of the table below. You just need to install the operating system and leave Internet access to be able to download and install all additional software. After installation is complete, Internet access from virtual machines can be disabled. Access to the servers is provided to developers via SSH with the root user permissions for the time which is needed for the applications installation and testing. Virtual machines 1-3 should be able to operate on the same VLAN without filtering traffic by ports (allow all).

The reservation should be provided by the capacity of virtual machines.

Object

Software

Resources (min)

Connectivity

Description

Object

Software

Resources (min)

Connectivity

Description

1. Telephony application server

Debian 12 Linux 64bit — basic server installation with SSH connection;

Additionally, we will install:

OpenSIPS 3.4; rtpengine; nginx; SSL; 

  • 4 vCPU > 2,6 GHz (Haswell generation or newer), No more than 2 virtual cores per 1 physical core

  • 8Gb RAM

  • 60 GB, 1000 IOPS, 

  • 1 network interface >= 1 GbE

in-out: 80/tcp, 443/tcp, 5060/tcp, 5060/udp

in-out: 10000-50000/udp

Telephony server. SSL certificates with a trusted CA are required to provide a secure connection via HTTPS protocol and telephony in a browser.



2. Database Server

Debian 12 Linux 64bit — basic server installation with SSH connection;

Additionally, we will install:

Linux; PostgreSQL 15; Grafana; Consul; RabbitMQ; 

  • 8 vCPU, > 2,8 GHz (Haswell generation or newer), No more than 2 virtual cores per 1 physical core

  • 16Gb RAM

  • 60 GB, 1000 IOPS

  • 250 GB, 2000 IOPS

  • 1 network interface >= 1 GbE





  • Database.

  • Microservice registration service.

  • Messaging bus.

We recommend duplicating the server to configure Streaming Replica.

3. Application Server

Debian 12 Linux 64bit — basic server installation with SSH connection;

Additionally, we will install:

FreeSWITCH 10; Webitel FlowManager; Webitel App; Webitel API GW; Storage; CallCenter; Engine; Messages

  • 8 vCPU, > 2,6 GHz (Haswell generation or newer), No more than 2 virtual cores per 1 physical core

  • 16Gb RAM

  • 80 GB, 1000 IOPS

  • 1 TB, 200 IOPS, <10 мс (if S3 is not used)

  • 1 network interface >= 1 GbE



  • Applications server.

  • Server for creating voice menus.

  • Storage of conversation recordings.

4. External Data Services







Interaction with external systems runs via HTTP REST.

5.  Team

Microsoft Windows 11 / Linux 64bit

Google Chrome / Microsoft Edge (the latest or previous version)

  • 4 vCPU

  • 8Gb RAM

Connection to the IS not less than 2 Mb/s per user, with delays of no more than 15-20 ms.

Employees’ workplace

6. Hardware SIP Phone





Connection to the IS not less than 5 Mb/s per device, with delays of no more than 15-20 ms.

in-out: 5060/udp, 10000-20000/udp

Hardware phone with SIP 2.0 protocol support

7. PSTN







Public Switched Telephone Network is a general subscriber communication network, the access to which is provided by telephone sets, PBX, and data transmission equipment.





Connection speed

Delay (Ping)

Jitter

Packet Loss



Connection speed

Delay (Ping)

Jitter

Packet Loss

WebRTC

  • For audio calls: at least 100–300 Kbps.

  • For video calls (standard quality): at least 1–2 Mbps.

  • For high-quality video (HD or Full HD): at least 2–4 Mbps.

  • For conferences or streams (4K video): 8–25 Mbps is recommended.

  • Optimal delay for WebRTC should be less than 50 ms.

  • Acceptable delay: 50-100 ms.

  • If delay exceeds 150 ms, noticeable delays during calls or video may occur.

  • Optimal jitter should be less than 30 ms. Jitter refers to variations in packet delay, and high jitter can significantly degrade audio or video quality.

  • Jitter over 50 ms can cause distortion or delays in audio/video.



  • Optimal packet loss for WebRTC: less than 1%.

  • Loss of up to 2-3% may be acceptable for audio, but it will degrade video quality.

  • Loss above 5% will significantly impair communication, causing noticeable interruptions, artifacts, or video 'freezes'.