Webitel Architecture



Название

Описание

Название

Описание

Debian Linux 12

Операционная система, под которой ведется разработка комплекса приложений Webitel

PostgreSQL 15

Критически важный элемент архитектуры. Основная база данных для хранения конфигурации и данных пользователей. Все приложения (кроме RTP, FreeSWITCH и nginx) подключены к базе данных.
Физически файлы базы данных хранятся в /var/lib/postgresql , если при установке не было указано другое.
К базовой поставке включаются дополнительные модули:

  • TimescaleDB

  • Webitel Extension

Consul

Критически важный элемент архитектуры. Децентрализованный отказоустойчивый discovery-сервис от компании HashiCorp. Каждое приложение (кроме PostgreSQL, RTP, OpenSIPS и nginx) регистрируется в данном сервисе.

rabbitmq

Критически важный элемент архитектуры. Шина обмена сообщениями между сервисами:

  • OpenSIPS - публикация статусов регистраций устройств и диалогов

  • FreeSWITCH - публикация статусов диалогов и выполения голосовых приложений

  • Webitel - публикация и чтение статусов пользователей и голосовых каналов

  • Messages - публикация текстовых приложений

  • Engine - публикация и чтение статусов пользователей

  • CallCenter - публикация и чтение статусов операторов. Публикация и чтение статусов работы дайлеров

  • Flow - публикация и чтение статусов выполнения голосовых и текстовых приложений

  • Storage - чтение статусов диалогов

OpenSIPS

SIP Proxy - обеспечивает работу сигнального протокола (SIP\WebRTC)

RTP

rtpengine - обеспечивает работу мультимедиа протоколов

FreeSWITCH

Голосовой медиасервер. Позволяет создать IVR меню и объединять голосовые каналы.
К базовой поставке включаются дополнительные модули:

  • Webitel GRPC

  • AMD - работа с автоответчиками

  • AMQP - работа с rabbitmq

  • Transcribe - модуль асинхронной работы с STT

  • PUSH - поддержка PUSH сообщений для регистраций на мобильных устройствах (iOS\Android)

nginx

Веб-сервер приложений. Обеспечивает проксирование HTTP REST API и WebSocket.

Grafana

Сервис построения отчетов и дашбордов из базы данных по звонкам, чатам и пользователям

Webitel API Gateway

Шлюз между публичным HTTP REST API и внутренним GRPC протоколом

Webitel Applications

Менеджер лицензий и статусов пользователей

Webitel UAC

Поддержка SIP подключений с регистрацией на оператора (PSTN)

Messages Bot

Публичный сервис регистрации и взаимодействия с чат-ботами

Messages Worker

Внутренний сервис обработки текстовых сообщений

Engine Worker

Внутренний сервис работы с WebSocket протоколом и API

CallCenter Worker

Внутренний сервис работы с менеджером очередей, дайлеров и операторов КЦ

Flow Manager

Внутренний сервис интерпретации JSON схем в маршрутизацию звонков, ботов, голосовых меню и прочего. Взаимодействует с внешними HTTP веб-сервисами, вызывает Web-хуки, может выполнять запросы во внешние SQL базы данных.

Storage

Сервис обработки и хранения медиафайлов. Обеспечивает работу сервисов TTS\STT.
Если не используется S3 хранилище, то файлы записей разговоров хранятся в /opt/storage , если при установки не было указано другое.

Logger

Сервис отслеживания изменений.