Web Service Capture Point
The web service Capture Point provides a web service interface for interaction-related requests such as submit, stop, update, hold, resume, and get info, as well as for ping requests. It can operate in either of the following two modes:
- iWD compatibility mode, exposing the functionality of the Web Service Capture Point that is described in the intelligent Workload Distribution Deployment Guide.
- Native mode, with a more general set of requests as compared to iWD compatibility mode
The Web Service Capture Point service URL can be easily obtained from the Interaction Server startup log. Look for the following message and simply copy the URL:
11:17:58.814 Trc 23323 Capture point 'WSCapturePoint' will set endpoint: 'http://zoolander.us.int.genesyslab.com:10080 /Genesys/Interaction/WSCP_812_zoo/WebServiceCapturePoint'
You can also construct the URL using the template provided by the Web Service Capture Point application optionsoap-endpoint, whose default value is: <Protocol>://<ServerName>:<ServerPort>/Genesys/Interaction/<CapturePointName>/WebServiceCapturePoint where
- Protocol is HTTP or HTTPS, as specified in the protocol option.
- Server Name is either specified in the soap-hostname option or is equal to the name of Interaction Server's host.
- Port is the port of the Web Service Capture Point Application object.
- CapturePointName is the name of the Application object.
This template can be changed, but generally it contains the four parts just listed. Note that none of the parameters are mandatory and the entire endpoint can be simply specified in its final form, which may be preferable in some cases.
The WSDL URL is the service URL with ?wsdl appended; for example:
Checking Connectivity and Inspecting WSDL
Once you get the service URL, you can use it in different tools to generate a Web Service client. To check that the service is up and running and to inspect the service WSDL, first ensure that Interaction Server is running, then navigate to the WSDL URL using any web browser. The following figure shows WSDL in Internet Explorer.
This confirms that you have access to the WSCP service. You can inspect the WSDL or save it to a file to later use. Saving the WSDL is not required since most tools can simply access the WSDL URL directly, as long as Interaction Server is running.
Generating a Client
The following tools were used to generate WSCP clients for this document:
- Visual Studio 2010
- JAX-WS 2.2
- Apache CXF
- Apache Axis2
This document provides the following examples of generating a client:
Web Service Capture Point Client Over Secure HTTP
This section provides an example of configuring a Web Service Capture Point, generating and importing certificates, and using .NET and Java clients over Secure HTTP. OpenSSL version 1.0.0g or better is assumed to be installed. This example configuration assumes the presence of a server host (zoolander.us.int.genesyslab.com in the example) and a client host (clienthost.us.int.genesyslab.com in the example). The server host has an Interaction Server with a Web Service Capture Point namedWSCP_812_zoo connected to it.
The server certificate is used for server authentication (by the client) and ensures that server can be trusted. The Web Service Capture Point requires a server certificate to support SSL. You must generate a server certificate and put it into the client's trusted certificates store.
A client certificate is required for mutual SSL authentication. If the Web Service Capture Point is configured for server authentication only, the client certificate is not required. This guide provides examples of
- Generating a client certificate for a .NET client.
- Generating a client certificate for a Java client.
Web Service Capture Point Configuration
In a Web Service Capture Point application, named, for example, WSCP_812_zoo, set the following options:
- server-key-file=<Path to wscpserver.pem>\wscpserver.pem
- password=<'PEM pass phrase' for wscpserver.pem>
- cacert-file=<Path to wscp_clients.pem>\wscp_clients.pem
Do not change any other options. You must restart Interaction Server for these option values to take effect. If client authentication is not required, set the option require-client-authentication to false and omit all procedures relevant to generation and manipulation of client certificates (Client Certificate for Browser and .NET Client and Client Certificate for Java Client).
WSDL over HTTPS in the Browser
Assuming the client host has the server certificate in the trusted certificates, and the client certificate in personal certificate, you can request the WSDL from the client host by entering the URL that you obtained in Service URL:
The browser then prompts the user to select a certificate, as shown below.
Select the imported certificate and click OK. The contents of the WSDL file should display in the browser.
Once a client has been configured, certain modifications are required:
This section presents details of requests and responses, as follows: