Skip to main content
Skip table of contents

Deployment Guide - CX Campaigns

Overview

This document illustrates the procedure and steps to deploy CX Campaigns.

Solution Prerequisites

Following are the solution prerequisites.

Items

Recommended

Software Requirements

  • EF CX

  • SELinux Disabled (If installed)

Hardware Requirements

  • RAM

  • vCPU

  • 4 GB

  • 2

Deployment Steps

All the CX-Campaigns related files are available in the folder cx-campaigns which is present in the kubernetes directory in the official repository of ExpertFlow CX v4.6 or greater.

Step 1: Navigate to correct directory

Make sure you are in the directory cim-solution/kubernetes. The command cd can be used to move between directories.

Step 2: Update FQDN

Expertflow CX should be accessible by a fully qualified domain name. Assign the FQDN that resolves to the control plane node or KubeVIP.

Replace <FQDN> with your FQDN for Expertflow CX and run the following command.

CODE
sed -i 's/devops[0-9]*.ef.com/<FQDN>/g' cx-campaigns/ConfigMaps/* cx-campaigns/Ingresses/nginx/* cx-campaigns/Ingresses/traefik/*
Step 3: Apply the CX Campaigns' ConfigMaps
CODE
kubectl apply -f cx-campaigns/ConfigMaps/
Step 4: Apply all the Services required for CX Campaigns
CODE
kubectl apply -f cx-campaigns/Services/
Step 5: Apply the required Deployment manifests
CODE
kubectl apply -f cx-campaigns/Deployments/
Step 6: Make sure all components are up and ready before moving on to the next step
CODE
kubectl -n expertflow get pods
Step 7: Setup Ingress Routes
CODE
kubectl apply -f cx-campaigns/Ingresses/nginx/

Keycloak Configuration

Before using the CX Campaigns' management menu in Unified Admin, you must configure Keycloak since CX Campaigns is an optional feature of ExpertFlow CX. Here are the configuration steps:

Step 1: Login to Keycloak

Access the Keycloak Administration console by opening this URL in your browser: https://<FQDN>/auth

Default username and password is “admin” and “admin” respectively.

Step 2: Open the cim client

In the ExpertFlow realm, select Clients from the left navigation bar, then click on the cim client.

If the ExpertFlow realm is not present. Refer to this documentation to import the ExpertFlow realm and additional configuration

Step 3: Navigate to the Import pop-up

In the cim client, select the Authorization tab, then click Import.

Step 4: Navigate to the Import pop-up

After clicking Import, a popup window will appear. Upload this file campaign-authorization-config.json which contains all the CX Campaigns related authorization configuration and click Confirm.

Campaigns tab should now be visible in the Unified Admin.

campaigns-enabled-in-unified-admin.png

Environment Variables

Following are the details of all the variables available in ConfigMaps

Environment Variables for Campaign Studio

Variable

Description

TZ

Timezone to be used by the Campaign Studio component. For a list of all the supported time-zones, refer to this page.

FQDN

FQDN of the EF CX deployment that you want to integrate campaigns with

CAMPAIGNS_BACKEND

URL of the campaigns backend service.

SCHEDULER_URL

URL of the EF CX scheduler service.

URIForWebhook

Base URL to be used for the registering webhooks on the scheduler. This URL should be accessible by the scheduler for it to deliver notifications successfully.

GATEWAY_ID

The default gateway id to be displayed in Action node for voice based campaigns. This can also be configured later for each action from the nodered UI.

IVR_EXTENSION

The default IVR extension to be displayed in Action node for voice based IVR campaigns. This can also be configured later for each action from the nodered UI.

Environment Variables for (Campaigns) backend

Variable

Description

PORT

The port on which the backend server will listen on.

LOG_LEVEL

The level of logs to print.

NODERED_URI

Nodred service URL, accessible within the current network.

NODERED_USERNAME

Username to be used for the Node-RED authentication (If authentication is enabled in Node-RED).

NODERED_PASS

Password for the Node-RED authentication (If authentication is enabled in Node-RED).

UPLOAD_CSV_BATCH_SIZE

Size of the batch that will be formed when uploading contacts from a CSV file.

NODERED_SYNC_BATCH_SIZE

Size of the batch when syncing contacts between backend and relative Node-RED flow.

CCM_URL

URL of the CCM service.

SCHEDULER_URL

URL of the scheduler service.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.