Breadcrumbs

Recording Component Deployment For Eleveo

The purpose of this document is to provide deployment steps for Eleveo recording components of Expertflow CX solution. 

Run All Commands in cim-solution/Kubernetes Directory

Recording Backend Information

This deployment is meant for users who have Eleveo set up as a recording backend. If you wish to use EFSwitch as a recording backend, then consult the docker-based deployment guides of the recording middleware and recording link uploader.

Before you begin, verify

Update the FQDN

Decide the FQDN to be used in your solution and change the <FQDN> in the below-given command to your actual FQDN

Bash
sed -i 's/devops[0-9]*.ef.com/<FQDN>/g' cx-voice-recording/Ingresses/nginx/* cx-voice-recording/ConfigMaps/*

Set ConfigMap fields

  1. Open the Recording Middleware ConfigMap with

    vi cx-voice-recording/ConfigMaps/ef-recording-middleware-cm.yaml
    
image-20240417-050632.png
  1. Change the values as follows:

    1. RECORDING_BACKEND: The mechanism for recording files. Leave at default ELEVEO.

    2. LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.

    3. ELEVEO_ADMIN: The administrator username for Eleveo.

    4. ELEVEO_PASSWORD: The administrator password for Eleveo.

    5. ELEVEO_URL: The IP address of the Eleveo deployment.

  2. Open the Recording Link Uploader ConfigMap with

    vi cx-voice-recording/ConfigMaps/ef-recording-link-activities-cm.yaml 
    
image-20240417-050752.png
  1. Change the values as follows:

    1. RECORDING_BACKEND: The mechanism for recording files. Leave at default ELEVEO.

    2. LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.

    3. CX_FQDN: The address of EF CX. https://EFCX-FQDN. This is set by Step 3: Update the FQDN above, but can be changed manually if need e.g. if the protocol used is HTTP instead of HTTPS.

    4. MIDDLEWARE_API: The API link of the recording middle-ware that will provide recording files. Format: http://EFCX-FQDN/recording-middleware. This is set by Step 3: Update the FQDN above.

    5. RETRIEVAL_INTERVAL: The number of past days to push recording links for on startup.

    6. ELEVEO_MAX_CALL_TIME: The maximum possible time in minutes a call is assumed to last.

    7. ELEVEO_PASSWORD: The administrator password for Eleveo.

    8. ELEVEO_PROCESSING_TIME: The time in minutes it takes for a call to appear in Eleveo after ending.

    9. ELEVEO_TIMEZONE: The timezone of the Eleveo deployment e.g. Asia/Karachi

    10. ELEVEO_URL: The IP address of the Eleveo deployment.

    11. ELEVEO_USERNAME: The username of the Eleveo deployment.

  2. Apply all configurations in the ConfigMaps folder using

kubectl apply -f cx-voice-recording/ConfigMaps/ef-recording-link-activities-cm.yaml
kubectl apply -f cx-voice-recording/ConfigMaps/ef-recording-middleware-cm.yaml

Start the Recording Middleware service

Create a service for the recording middleware.

kubectl apply -f cx-voice-recording/Services/ef-recording-middleware-service.yaml 

Services must be created before Deployments

Create the Recording Middleware Deployment

Apply the Deployment manifest for the recording middleware. 

kubectl apply -f cx-voice-recording/Deployments/ef-recording-middleware-deployment.yaml

Set the Recording Middleware Ingress

You need to apply the Ingress route for the recording middleware.

Bash
kubectl apply -f cx-voice-recording/Ingresses/nginx/ef-recording-middleware-Ingress.yaml
kubectl apply -f cx-voice-recording/cronjob/ef-recording-link-activities-cronjob.yaml