Provisioning overview

From Genesys Documentation
Revision as of 05:58, August 8, 2022 by Balaji (talk | contribs) (Published)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
This topic is part of the manual Digital Channels Private Edition Guide for version Current of Digital Channels.

Learn about the steps involved in provisioning Digital Channels.

After you configure and deploy Digital Channels, you must complete a number of provisioning steps to enable Digital Channels to work with other Genesys services.

  1. Pre-configure tenant objects
  2. Enable a tenant for Digital Channels
  3. Provision API keys
  4. Setting up Integration for Inbound and Outbound SMS (optional)
  5. Setting up Integration for Outbound Email Campaigns (optional)

Auto tenant provisioning

As an alternative to steps 1 and 2 in the previous list, you can auto provision your tenant by following the instructions below.

To auto provision your tenant, Add GWS to the list of available GWS services for Nexus and then Get the authentication token.

Next, create a Kubernetes secret with the tenant credentials:
kind: Secret
apiVersion: v1
metadata:
  name: nexus-new-tenant-credentials
  namespace: nexus
type: Opaque
stringData:
  credentials: |
    {
      "cmeUser": "default",
      "cmePassword": "password",
      "gwsClientId": "external_api_client",
      "gwsSecret": "secret"
    }
Create a provisioning pod using the following template. Name the file nexus-provisioning.yaml.
apiVersion: v1
kind: Pod
metadata:
  name: nexus-provisioning
  labels:
    service: nexus
    servicename: tenant-provisioning
spec:
  containers:
    - env:
        - name: NEXUS_PROVISION_PARAMS
          value: |-
            {
              "debug": true,
              "cme": {
                "folderForObjects": "t100", ----> Short Tenant ID
                "host1": "tenant-9350e2fc-a1dd-4c65-8d40-1f75a2e080dd.voice",  --> CCID should be replaced with tenant CCID
                "host2": "tenant-9350e2fc-a1dd-4c65-8d40-1f75a2e080dd.voice"  --> CCID should be replaced with tenant CCID
              },
              "gws": {
                "client_id": "nexus_client",  --> GWS nexus client that created in previous step
                "client_secret": "nexus_client",  --> GWS nexus client secret that used in previous step
                "extUrl": "https://gws.<yourcluster>",
                "intUrl": "http://gws-service-proxy.gws",
                "authUrl": "https://gws.<yourcluster>",
                "envUrl": "https://gws.<yourcluster>"
              },
              "ucs": {
                "url": "http://ucsx.ucsx:8080"
              },
              "nexus": {
                "region": "USW1",
                "url": "http://nexus.nexus",
                "urlFromEsv": "http://nexus.nexus"
              },
              "platform": "Azure",
              "tenant": {
                "allRegions": ["westus2"],
                "ccid": "9350e2fc-a1dd-4c65-8d40-1f75a2e080dd",
                "id": "100",
                "name": "t100",
                "region": "USW1"
              }
            }
        - name: ENVIRONMENT_TYPE
          value: azure
      image: pureengage-docker-staging.jfrog.io/nexus/tenant_deployment:<tenant_deployment_version>
      imagePullPolicy: Always
      name: tenant-deployment
      resources: {}
      terminationMessagePath: /dev/termination-log
      terminationMessagePolicy: File
      volumeMounts:
        - mountPath: /tenant
          name: credentials
          readOnly: true
  dnsPolicy: ClusterFirst
  restartPolicy: Never
  schedulerName: default-scheduler
  securityContext: {}
  imagePullSecrets:
    - name: pullsecret
  terminationGracePeriodSeconds: 30
  volumes:
    - name: credentials
      secret:
        defaultMode: 440
        secretName: nexus-new-tenant-credentials
In the nexus-provisioning.yaml file, make sure to update the commented fields with values appropriate for your deployment. Execute the following command to create the pod:
kubectl apply -f nexus-provisioning.yaml  -n nexus
You should receive the status "Completed" when the pod is created.
Comments or questions about this documentation? Contact us for support!