Contents
Configuring Digital Channels
Digital Channel APIs provide the following capabilities:
- Open Media
- Chat
- Chat API Version2
- Chat API Version2 with CometD
You can use Genesys Administrator to configure several types of configuration options for your Genesys Mobile Engagement Digital Channels API application. This topic shows how to do that, and also discusses several third-party options.
Prerequisites for Digital Channels
Before you can start, create a GMS application object, which includes connections to the following servers:
Solution Control Server
- This connection is mandatory
The Mobile Engagement node monitors the status of each connected media server and will load balance requests between currently running media servers. If Mobile Engagement does not have a connection to the Solution Control Server, or if the node cannot connect to it, the Digital Channels API functionality will be disabled or may not work properly.
Chat Server
- You need this connection only if you plan to use Chat V2 features.
- For the chat file transfer feature, use Chat Server version 8.5.104 or later.
- Genesys recommends that you use an N+1 deployment (with standalone Chat Servers), as opposed to using warm standby pairs.
Your Chat Servers must not be configured in Primary/Backup mode—That is, their configuration must not include a backup server.
Edit your GMS configuration and add all Chat Servers and a Solution Control Server to the list of connections in the Connections tab of GMS.
Note: Make sure to use either port with id webapi or port with chat-flex protocol when adding the Chat Server. Make sure to create these ports in the Chat server before you add connections. See Deploying the Chat Solution for additional Chat Server instructions.
Universal Contact Server
- You need this connection only if you plan to use chat file transfer feature.
- For the chat file transfer feature, use Chat Server version 8.5.104 or later.
Email Server
- You need this connection only if you plan to use email features.
- To implement an email service, add a connection to every Email Server Java instance that you plan to use.
Interaction Server
- You need this connection only if you plan to use open media features.
Load Balancing
The Digital Channels API is fully capable of working behind a load balancer. To configure load balancing, refer to the related instructions for creating GMS nodes. As long as at least one node within the Mobile Engagement cluster is up and running, all of the other nodes can fail—and the cluster will continue to provide all of the functionalities of the Digital Channels API.
Use the table below to determine if you need to configure session stickiness on your Load Balancer.
Digital Channel API | Sticky session required | No sticky session |
---|---|---|
Chat | ||
Chat with CometD | ||
Open Media |
Third-party Configuration and Considerations
Genesys Mobile Engagement is distributed with the Jetty 9 application container. Note that various versions of Genesys Mobile Engagement can run on various versions of Jetty. As such, some of the application container options may affect or interfere with your Genesys Mobile Engagement application options. In addition to this, Genesys Mobile Engagement is built on top of web frameworks that may also have conflicting options. Because of this, you may need to adjust your Jetty configuration. Genesys recommends that you review the following parameters, editing them, as needed:
Jetty default application port
jetty.port defines the port used in the endpoint URL. You might need to adjust this port if other applications running on the same host already use this port. This setting appears in one of the following locations:
- Jetty8: etc/jetty.xml
- Jetty9: etc/jetty-http.xml
<Set name="port"><Property name="jetty.port" default="18080"/></Set>
Jetty web form size limit
By default, Jetty limits web forms submitted to the server to a maximum size of 200,000 bytes. You can adjust this value by adding org.eclipse.jetty.server.Request.maxFormContentSize and a size value at the end of etc/jetty.xml, before the closing the </configure> tag:
<Call name="setAttribute">
<Arg>org.eclipse.jetty.server.Request.maxFormContentSize</Arg>
<Arg>20000000</Arg>
</Call>
Spring file upload maximum size limit
By default, Spring sets the maximum file upload size to 5 MB. You can adjust this value by editing maxUploadSize in webapps/genesys.war/WEB-INF/servlet-context.xml:
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="5000000" />
<property name="maxInMemorySize" value="5000000" />
</bean>
Adding a Digital Channel
To configure a digital channel, you need to create at least one service for this digital channel. If you have more than one service for this channel, you can configure all these services in the related media section, as described below.
Service-Related Section
You can configure Genesys Mobile Engagement to support multiple services for the same media type. This allows you to provide multiple API endpoints for each channel, each of which can be uniquely configured.
For each service that you want to enable, create a new configuration section in your GMS Configuration. The name of this new section consists of the name of the media type and the service name, separated by a period: <media>.<service-name> where media can be chat, email, or openmedia. For example, create chat.customer-support.
For example, to configure customer support services for chat and for email, create sections called chat.customer-support and email.sales-inquiry. Or to create an sms-details service for open media, call the new section openmedia.sms-details.
Each of these service-related sections enables a Genesys Mobile Engagement Digital Channels API endpoint with a name that corresponds to the service name, as shown in these examples:
- http://myhost.domain/genesys/2/chat/customer-support
- http://myhost.domain/genesys/2/email/sales-inquiry
- http://myhost.domain/genesys/2/openmedia/sms-details
Then, configure your service by creating options. The options that you can use are listed in the in the GMS Configuration Options Reference Guide:
If you create more than one service for a given media, you can decide to configure all of them in the media-related section, as detailed below. In that case, since you cannot save an empty configuration section, you must configure at least one option in each service-related section. If you do not need to configure any service-related options, you can create a dummy option, for example, ###dummy###. This will allow you to save that section.
Media-Specific Section
Each of the digital channels supported by Genesys Mobile Engagement has its own medium-specific configuration section, which provides application-wide options for all of the configurable services offered for that medium.
This section, which is optional, is named after its media type. Since Mobile Engagement supports chat, email, and open media channels, the relevant sections would be called chat, email, and openmedia respectively. All the options are documented in the GMS Configuration Options Reference Guide:
Configuration Option Precedence
Genesys Mobile Engagement uses the following rules to determine which configuration options to use when it initializes a service:
- Look for the option in the service-related section: if present, use this value.
- If the option is not present in the service-related section, look for it in the media-related section: if present, use this value.
- If the option is not present in the media-related section, use the default value.
The following table should help you to check which value applies:
Use-Case Description | Service section | Media section | Applied Value |
---|---|---|---|
The option is defined at the service level | yes | yes/no | Service |
The option is defined at the media level, but not defined at the service level. | no | yes | Media |
The option is not defined for either both the service or media level. | no | no | Default |
Refer to the configuration options page for each media type to get the list of all options with their default values.