/
Webitel Architecture

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

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