callCenter parameter

Use the callCenter parameter to define the configurations to run Sterling™ Call Center base and extension servers.

Each server can refer its own profile, environment variable group, affinityAndTolerations, and more.

The following .yaml file is a sample schema of callCenter:
  image:
    callCenter:
      base:
        tag: ""
        # imageName: ""
        # pullPolicy: ""
        # repository: ""
      extn:
        tag: ""
        # imageName: ""
        # pullPolicy: ""
        # repository: ""

  callCenter:
    bindingAppServerName: ""    
    # You can specify either bindingAppServerName or adminURL. Example: adminURL = https://oms-apps.oms10k8s1.fyre.ibm.com:9443
    base:
      replicaCount: ""
      # affinityAndTolerations: ""
      # envVars: ""
      # livenessCheckBeginAfterSeconds: ""
      # livenessFailRestartAfterMinutes: ""
      # podLabels: ""
      # podAnnotations: ""
      # profile: ""
      # service:
        # annotations: ""
        # labels: ""
      # terminationGracePeriodSeconds: ""
    extn:
      replicaCount: ""
      # affinityAndTolerations: ""
      # envVars: ""
      # livenessCheckBeginAfterSeconds: ""
      # livenessFailRestartAfterMinutes: ""
      # podLabels: ""
      # podAnnotations: ""
      # profile: ""
      # service:
        # annotations: ""
        # labels: ""
      # terminationGracePeriodSeconds: ""
    # - host: ""
      # className: ""
      # annotations: ""
      # labels: ""
      # ssl:
        # enabled: ""
        # identitySecretName: ""
    # oidc:
      # enabled: false
      # provider: " "
      # discoveryurl: " "
      # class: " "
      # uniqueClaim: sub
      # secondaryid: email
      # logouturl: " "
    # ingress:
       # annotations: ""
       # labels: ""  
       # customDomains:
        # - host: ""
          # className: ""
          # annotations: ""
          # labels: ""
          # ssl:
            # enabled: ""
            # identitySecretName: ""
    # exposure: {}
    # horizontalPodAutoscaler: HPA1
    # probeConfig: test
    # topology: {}  
  • Ensure to configure Sterling Call Center properties for image as explained in Configuring image parameter for callCenter properties.
The following table explains the attributes that are applicable for callCenter spec of OMEnvironment.
Table 1. Properties forcallCenter
Property Default value Value type Required Description
bindingAppServerName   string Yes Name of the application server instance that has an icc contextRoot to which this callCenter instance is bound to. The application server with the provided name must exist in the OMEnvironment.

For more information about identifying the backend server, see Preparing for Sterling Call Center deployment.

adminURL   string No Specify smcfs or icc application server URL. You cannot pass both adminURL and bindingAppServerName together. However, you must provide at least one of them so that Order Hub knows where to establish the connection.
ingress.annotations   object No Specify any additional annotations for ingress or routes resource as key-value pair.
ingress.labels   object No Specify any additional labels for ingress or routes resource as key-value pair.
ingress.host   string No Specify the domain name to which the service is exposed to.
ingress.ssl   object No Specify the ingress SSL configurations.
ingress.ssl.enabled   boolean Yes, when ingress.ssl is specified. Specify whether SSL is enabled for ingress or not.
ingress.className nginx string No Specify the ingress class name.
ingress.customDomains   array No Specify a list of custom domains with one or more Fully Qualified Domain Names (FQDNs) over which your application is exposed. For more information, see Creating multiple ingress hosts by using customDomains.
ingress.ssl.identitySecretName   string No Specify the name of the secret holding TLS certificate to be used as identity for ingress or routes. The ingress or route URL will present this TLS certificate to the clients.
exposure.contextRoots   array No Specify the context roots to expose.
exposure.customDomains   array No Specify the list of custom domains with fully qualified domain names (FQDN) over which the service must be exposed.
exposure.customDomains[].annotations   object No Specify any additional annotations as key value pairs.
exposure.customDomains[].labels   object No Specify any additional labels as key value pairs.
exposure.customDomains[].host   string No Specify the domain name to expose the service over.
exposure.customDomains[].ssl   object No Specify the SSL configurations.
exposure.customDomains[].ssl.enabled   bool No Enable or disable SSL.
exposure.customDomains[].ssl.identitySecretName   string No Specify the name of the secret holding TLS certificate to be used as identity.
exposure.customDomains[].gateway   object No Specify the gateway configurations similar to gateway. This is ignored in Openshift.
exposure.customDomains[].gateway.gatewayName   string Yes Specify the name of the Gateway resource to attach the HTTPRoute to.
exposure.customDomains[].gateway.gatewayNamespace   string Yes Specify the namespace of the Gateway. If omitted, the namespace of the resource will be used.
exposure.customDomains[].gateway.listenerName   string No Specify the listener section on the Gateway to attach the HTTPRoute to. If not specified, the Gateway controller will choose the appropriate listener.
exposure.customDomains[].gateway.create   object No Optionally instructs the operator to create the Gateway if it does not already exist. This should only be used in environments where the operator is allowed to manage infrastructure resources.
exposure.customDomains[].gateway.create.gatewayClassName   string Yes Specify the GatewayClass used when creating the Gateway.
exposure.customDomains[].gateway.create.listeners   array Yes Specify the listeners that will be configured on the Gateway. At least one listener must be specified when creating a Gateway.
exposure.customDomains[].gateway.create.listeners[].name   string Yes Specify the name of the listener. This can be referenced by HTTPRoute parentRefs.sectionName.
exposure.customDomains[].gateway.create.listeners[].port   int No Specify the network port exposed by this listener.
exposure.customDomains[].gateway.create.listeners[].protocol   string No Specify the network protocol supported by the listener. Supported values include HTTP, HTTPS, TLS, TCP, and UDP.
base   object No callCenter base server configuration.
extn   object No callcenter extension server configuration.
horizontalPodAutoscaler   string No Specify the name of the pre-defined Horizontal Pod Autoscaler that is to be used. For more information, see horizontalPodAutoscalers parameter.
topology   array No Specify the names of the Topology Spread Constraints that are to be used for the order service. For example, topology: [constraint1, constraint2].
probeConfig   String No Specify the name of the probe configuration to use.
The following table explains the attributes applicable for callCenter base and extn.
Table 2. Properties forcallCenter base and extn
Property Default value Value type Required Description
replicaCount   integer Yes Specify the number of instances to be deployed for this server.
affinityAndTolerations   string No Use the name of the affinityAndTolerations from attribute affinityAndTolerations[].name to be used by the server.
envVars   string No Use the name of envVars from attribute serverProperties.envVars[].groupName or serverProperties.envVars[].derivatives[].groupName.
podLabels object No Specify extra pod labels as key-value pair. These pod labels are also copied to deployments.
podAnnotations   object No Specify annotations for pod as key-value pair.
profile   string No Use the name of the profile from attribute serverProfiles[].name to be used by the server.
service.annotations   object No Specify the additional annotations for service resource as key-value pair.
service.labels   object No Specify the additional labels for service resource as key-value pair.
livenessCheckBeginAfterSeconds 900 integer No Specify the approximate wait time in seconds to begin the liveness check.
livenessFailRestartAfterMinutes 10 integer No Specify the approximate time period in minutes after which the server restarts, if liveness check keeps failing for this period.
terminationGracePeriodSeconds 60 integer No Specify the time period in seconds allowed for the pod to terminate gracefully after which the processes that are running in the pod are terminated.
Note: If the key in the podLabels or podAnnotations is the same as defined in common.pod.podLabels/podAnnotations, then it overwrites the key defined in common.

OIDC properties

The following table explains the attributes for OIDC.
Table 3. Properties for OIDC
Property Default value Value type Required Description
oidc.enabled false string No Enable or disable OIDC.
oidc.provider   string Yes Specify the OIDC provider name.
oidc.discoveryurl   string Yes Specify the OIDC discovery URL.
oidc.class   string No Specify the OIDC class.
oidc.uniqueClaim sub string No Specify the OIDC unique claim details.
oidc.secondaryid email string No Specify the secondary ID.
oidc.logouturl   string Yes Specify the OIDC logout URL.

Preparing for deployment

Identify the backend server and setup the route for logging URL. For more information, see Preparing for Sterling Call Center deployment.