Skip to content

Custom Deployments

AngelCX supports custom deployments for clients requiring specialized analytics metrics or custom UI implementations. This document outlines the deployment process and available customization options.

When to go for Custom Deployments?

There are two primary things to consider for custom deployments, and only if 1 or both of these are required, a custom deployment is recommended:

  1. Custom Analytics Metrics

    • Client-specific KPIs and metrics
    • Custom data processing rules
    • Specialized reporting requirements
  2. Custom UI Implementation

    • Branded user interfaces
    • Custom chat widget designs
    • Specialized interaction flows

Repository Structure

We maintain separate repositories for different components of custom deployments on AWS CodeCommit:

Frontend (2 repositories)

  • ultravox-nextjs-bot - Bot UI implementation
  • Axlrev-fe - Dashboard analytics UI

Backend (1 repository)

  • Axlrev-be (includes test/docs)
  • Handles custom analytics and processing

AI Engine (1 repository)

  • ultravox-fastapi-backend
  • Manages custom AI configurations
graph LR AFE[Admin Frontend] --> ABE[Admin Backend] BFE[Bot Frontend] --> AIBE[AI Backend] ABE --> DB[(Database)] AIBE --> DB

Component Customizations

Analytics Frontend (Axlrev-fe)

The Analytics Frontend repository includes the following customizations for each client:

  1. Branding

    • Logo customization
    • Client name integration
  2. Analytics

    • Custom analytics metrics implementation
    • Analytics UI modifications
  3. Environment

    • Update backend URL configuration for Axlrev-be

Analytics Backend (Axlrev-be)

The Analytics Backend repository typically includes minimal customization:

  1. Code Changes

    • No changes required for most deployments
  2. Environment

    • Database connection string configuration

Note: This repo is recently dockerized for easier deployment on the test/docker branch. For new client deployments, this branch can be used to checkout (git).

Bot UI (ultravox-nextjs-bot)

The Bot UI repository includes the following customizations:

  1. UI Customizations

    • Background images/colors
  2. Environment

    • AI Engine base URL configuration
    • Bot name changes
    • Brand description changes

AI Engine (ultravox-fastapi-backend)

The AI Engine repository (text/voice) requires the following customizations:

  1. AI Configurations

    • Prompt customizations
    • Tool configurations
    • Email template changes (post-session)
  2. Environment

    • Database connection string
    • Email SMTP credentials
    • Ultravox RAG ID
    • Minor call configuration changes

Deployment Steps

Pre-requisite: Fine-tuned requirements from the client should be available.

For a new client deployment, follow these steps in order:

  1. Create Repository Branches

    • Create production branches for each repository
    • Set up CodeCommit for deployment
    • Set up database for this client
  2. Test AI Configuration

    • Test AI agent on Ultravox dashboard
    • Verify agent behavior and responses
  3. Deploy Backend Services

    • Deploy Node.js backend
    • Deploy AI Engine
    • Configure necessary services
  4. Implement UI Changes

    • Make required changes to Bot UI
    • Update Analytics Frontend
    • Apply branding and customizations
  5. Deploy Frontend

    • Deploy frontend applications using backend and AI Engine base URLs
    • Verify all connections
  6. Quality Assurance

    • Perform end-to-end testing
    • Verify all customizations
    • Test integrations