Jump to: navigation, search

Configuring CS for UCS Compatibility

Important
Your application can keep using 8.1 queries, even if you upgrade to 8.5, but you should not use deprecated methods. Make sure to read the developer page about the 8.5 changes.

Configuring the new Context Services URL for UCS

Purpose

To enable your UCS application to run concurrently with your GMS application.

  1. Open the Configuration Manager or the Genesys Administrator, and edit your UCS application.
  2. Set the following option values for the cview section:
    • Set base-url to /genesys/1/cs
    • Set data-validation to false
    • Set enabled to true
    • Set metadata-cache to true
    • Set start-mode to production
    • Set tenant-id to the same tenant ID than your GMS application.

Setting the Proxy for UCS Profiles

If you install a Load Balancer for UCS and GMS applications, you must set up redirections:

  • All /genesys/1/cs/profiles URLs should be redirected to UCS.
/profiles
/metadata/profiles
/metadata/identification-keys
/server
/interactions
  • Other /genesys/1/cs/* URLs should be redirected to GMS.
/services
/metadata/business-attributes
/customers

Additionally, you must:

  • Configure Genesys Composer to point to the Load Balancer in Window > Preferences > Composer > Context Services.
  • Configure the Genesys Orchestration application to point to the Load Balancer in Genesys Administrator > Provisioning > Routing/eServices > Orchestration > <your application> > Context Manager Parameters.

The following configuration examples should help you to manage URLs and redirections.

Important
Do not forget to restart your proxy after you saved your changes.

NGINX Example

If your application uses NGINX, edit the NGINX configuration file, available in the <NGINX INSTALLATION DIR>/conf directory and add the /genesys/1/cs as the new base URL.

GMS-CS-1UCS.png

worker_processes  1;
 
events {
    worker_connections  1024;
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile      on;
    keepalive_timeout  65;
 
    server {
        listen       3080;
        server_name  localhost;
 
		# let's gms_user header in request to pass
		underscores_in_headers on;
 
		######################################
                # If profiles, interactions or /server -> goto UCS
		# /profiles
		# /metadata/profiles
		# /metadata/identification-keys
		# /server
		# /interactions		
		######################################
		location ~ (interactions|profiles|identification-keys|server) {
			proxy_pass http://localhost:7580;
		}
 
		######################################
		# If base_url (default) -> goto GMS
		# /services
		# /metadata/business-attributes
		# /customers/${customer id}/services	
		######################################
		location /genesys {
			proxy_pass  http://localhost:8080/genesys;
		}		
    }
}

Apache

If your application uses Apache, edit the httpd.conf file (or alternate file) and implement the new base URL for Context Service, as follows: GMS-CS-1UCS.png

LoadModule headers_module modules/mod_headers.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
 
# CORS headers
Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Credentials true
Header set Access-Control-Allow-Headers "Origin, Content-Type, Authorization, Destination"
Header set Access-Control-Allow-Methods "GET, POST, OPTIONS, DELETE"
Header set Access-Control-Request-Headers "Origin, Content-Type"
Header set Access-Control-Max-Age 3600
 
# proxy to CS
ProxyPass /genesys/1/cs/profiles http://localhost:7580/genesys/1/cs/profiles
ProxyPass /genesys/1/cs/metadata/profiles http://localhost:7580/genesys/1/cs/metadata/profiles
ProxyPass /genesys/1/cs/metadata/identification-keys http://localhost:7580/genesys/1/cs/metadata/identification-keys
ProxyPass /genesys/1/cs/server http://localhost:7580/genesys/1/cs/server
ProxyPass /genesys/1/cs/interactions http://localhost:7580/genesys/1/cs/interactions
 
# proxy to CS
ProxyPass /genesys http://localhost:8080/genesys
ProxyPassReverse /genesys http://localhost:8080/genesys


F5

Edit your configuration file and implement the new base URL for Context Service, with two pools, as follows: GMS-CS-UCSCluster.png

LOAD BALANCER SITE 1:  Interface name <LB Site A Interface Name>
 
when HTTP_REQUEST {
    if { [HTTP::uri] starts_with "/genesys/1/cs/interactions" 
      or [HTTP::uri] starts_with "/genesys/1/cs/profiles" 
      or [HTTP::uri] starts_with "/genesys/1/cs/identification-keys" 
      or [HTTP::uri] starts_with "/genesys/1/cs/server"}{
        pool <UCS pool A side name>
    }
    else {
        pool <GMS pool A side name>
    }
}
 
LOAD BALANCER SITE 2:  Interface name <LB Site A Interface Name>
 
when HTTP_REQUEST {
    if { [HTTP::uri] starts_with "/genesys/1/cs/interactions" 
      or [HTTP::uri] starts_with "/genesys/1/cs/profiles" 
      or [HTTP::uri] starts_with "/genesys/1/cs/identification-keys" 
      or [HTTP::uri] starts_with "/genesys/1/cs/server"}{
        pool <UCS pool B side name>
    }
    else {
        pool <GMS pool B side name>
    }
}


Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on 27 April 2017, at 03:03.