Eleveo Middleware only supports Single Tenant in CX-5.0
Step 1: Install EF CX
Follow the guide for install EFCX through Helm.
Step 2: Create custom values.yaml
Create and Customise cx-middleware-custom-values.yaml
Create and Customise cx-middleware-cronjob-custom-values.yaml
Step 3: Update the Configurations
Navigate to the Helm deployment folder of EFCX.
cd <CX-Folder>/kubernetes/
Open the helm-values/cx-middleware-custom-values.yaml file and update the variables:
Under global set the following value:
-
ingressRouter: The FQDN of the host VM.
Under siteEnvVars set the values as follows:
-
RECORDING_BACKEND: The mechanism for recording files. Leave at default ELEVEO.
-
LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.
-
ELEVEO_ADMIN: The administrator username for Eleveo.
-
ELEVEO_PASSWORD: The administrator password for Eleveo.
-
ELEVEO_URL: The IP address of the Eleveo deployment in format http://IP-address.
-
ELEVEO_ADMIN_PASSWORD: Password of Eleveo administrator.
-
ELEVEO_USERNAME: Eleveo user
-
CX_FQDN: The address of EF CX. https://EFCX-FQDN. This is set automatically via https://{{ .Values.global.ingressRouter }}
Open the helm-values/cx-middleware-cronjob-custom-values.yaml file and update the variables:
Under global set the following value:
-
ingressRouter: The FQDN of the host VM.
Under siteEnvVars set the values as follows:
-
RECORDING_BACKEND: The mechanism for recording files. Leave at default ELEVEO.
-
LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.
-
CX_FQDN: The address of EF CX. https://EFCX-FQDN. This is set automatically via https://{{ .Values.global.ingressRouter }}
-
CX_CONVERSATION_MANAGER: https://EFCX-FQDN/conversation-manager
-
MIDDLEWARE_API: The API link of the recording middle-ware that will provide recording files. Format: http://EFCX-FQDN/recording-middleware. This is set automatically.
-
RETRIEVAL_INTERVAL: The number of past days to push recording links for on startup.
-
ELEVEO_MAX_CALL_TIME: The maximum possible time in minutes a call is assumed to last.
-
ELEVEO_PASSWORD: The administrator password for Eleveo.
-
ELEVEO_PROCESSING_TIME: The time in minutes it takes for a call to appear in Eleveo after ending.
-
ELEVEO_TIMEZONE: The timezone of the Eleveo deployment e.g. Asia/Karachi
-
ELEVEO_URL: The IP address of the Eleveo deployment in format http://IP-address.
-
ELEVEO_USERNAME: The username of the Eleveo deployment.
-
TRUST_STORE_PASSWORD: Taken from the file
CX-<cx-version-tag>/cim-solution/kubernetes/helm/Core/values.ymlunder the efConnectionVars section. -
KEY_STORE_PASSWORD: Taken from the file
CX-<cx-version-tag>/cim-solution/kubernetes/helm/Core/values.ymlunder the efConnectionVars section. -
Authentication is not MTT Supported, do not add these variables if EFCX is multitenant. AUTH_ENABLED: true or false depending on whether APISIX authentication is enabled in EFCX. The four settings below are set if this value is true.
-
API_USERNAME: The username created in Keycloak for API authentication.
-
On Keycloak create a user in the Expertflow realm.
-
Assign the admin and default roles, and have Email-Verified option enabled.
-
Assign a non-temporary password to this user as well.
-
-
API_PASS: The password for the above user created in Keycloak for API authentication
-
CLIENT_ID: Should always be cim.
-
CLIENT_SECRET: Found on Keycloak in the cim client.
Step 3: Deploy the Eleveo Middleware Helm Chart
Deploy the helm chart using the following command
helm upgrade --install --namespace expertflow --set global.efCxReleaseName="ef-cx" eleveo-middleware --values helm-values/cx-middleware-custom-values.yaml expertflow/eleveo-middleware --version <cx-version>
Check the pods by running the following command
kubectl get pods -n expertflow | grep eleveo-middleware
Step 4: Deploy the Eleveo Middleware Cronjob Helm Chart
Deploy the Eleveo Middleware Cronjob helm chart using the following command
helm upgrade --install --namespace expertflow --set global.efCxReleaseName="ef-cx" middleware-cronjob --debug --values helm-values/cx-middleware-cronjob-custom-values.yaml expertflow/middleware-cronjob --version <cx-version>