Revision as of 16:24, August 27, 2015 by Alison.obrien (talk | contribs) (Setting the Advanced Options for Web Services)
Jump to: navigation, search

Web Distributed Authoring and Versioning (WebDAV) is an extension of the Hypertext Transfer Protocol (HTTP) that facilitates collaboration between users in editing and managing documents and files stored onWorld Wide Web servers. A working group of the Internet Engineering Task Force (IETF) defined WebDAV in RFC 4918.

Deploying Workspace Web Edition and Web Services for GIR

Genesys Interaction Recording (GIR) needs Web Services to store and manage the recording files.

Web Services uses three major components:


The following steps describe how to deploy the Web Services components for GIR.

Deploy the WebDAV Storage Server

  1. Install WebDAV, run the following command:
    yum install httpd
  2. Edit the /etc/httpd/conf/httpd.conf file, and append the following to the end of the file:
    Alias /recordings /mnt/recordings
    <Directory /mnt/recordings>
       Options Indexes MultiViews FollowSymLinks
       EnableSendfile off
       AllowOverride None
       Order allow,deny
       allow from all
    </Directory>
    <Location "/recordings">
       DAV On
       AuthType Basic
       AuthName "user"
       AuthUserFile /var/www/htpasswd
       Require valid-user
    </Location>
  3. Open the firewall. Because WebDAV is an HTTP server, the incoming default HTTP and/or HTTPS ports (80 and/or 443) must be open to the server.
    Important
    It is possible to use custom ports by changing the permitted incoming ports in the firewall, the virtual host configuration file, and the URL used to reach the WebDAV server.
  4. Create the directory to keep the recording files, and set the permission to apache, using the following command:
    mkdir /mnt/recordings
    chown apache:apache /mnt/recordings
  5. Create a WebDAV user for httpd, and configure the password. The following example creates a user called "user":
    htpasswd -c /var/www/htpasswd user
    Warning
    If the Recording Muxer is deployed for screen recording, make sure all webDAV storages of same contact center region are using same username and password.
  6. Configure the httpd to start on boot up (and start it now) using the following command:
    chkconfig --levels 235 httpd on
    service httpd start
  7. Test the WebDAV installation"
    1. Upload a hello.world file to the WebDAV server using the following command:
      curl -T hello.world -u user:password http://myserver/recordings/hello.world
    2. Using a browser, open the the http://myserver/recordings/hello.world URL. The browser will request for user credentials.
  8. The WebDAV server is installed.

Deploy the Cassandra Database

Web Services stores the information about call recordings in a Cassandra database. For each contact center, the distinct column families with unique names exist for storing call recording information. These column families are created when the contact center is created, and deleted when contact center is deleted.

To deploy the Cassandra database for GIR, see the Installing and Configuring Cassandra section of the Workspace Web Edition & Web Services Deployment Guide.

Important
Web Services deletes column families only if they do not contain any call recordings; otherwise they should be deleted manually from Cassandra using the cassandra-cli tool.

Deploy Workspace Web Edition and Web Services

To install and configure Workspace Web Edition and Web Services, see the Workspace Web Edition & Web Services Deployment Guide.

For Voice Recordings

Web Services requires a specific configuration in addition to the configuration that is described in the Workspace Web Edition & Web Services Deployment Guide for GIR call recordings to work correctly. The following sections describe how to configure Web Services for call recordings.

Configuring the Web Services Parameters

To configure Web Services for Genesys Interaction Recording, you add parameters to the /genconfig/server-settings.yaml file.

[+] Show the Parameters

Configuring the Elasticsearch Engine

The Web Services Call Recording API uses the elastic search as the query engine. A configuration file is required if call recording is enabled (for example, JETTY_HOME/resources/elasticsearch.yml).

[+] Show the Steps to Configure Elastic Search

Restarting Web Services

For more information on starting and stopping Web Services, see the Web Services Deployment Guide.

Configuring the Storage Credentials for Web Services

To enable voice recording:

  1. Determine the contact center ID on Web Services using the following command with the ops username and password (ops:ops):
    curl -u ops:ops http://<Web Services Server>:8080/api/v2/ops/contact-centers; echo

    The following output is returned:

    {"statusCode":0,"uris":["http://<Web Services Server>:8080/api/v2/ops/contact-centers/<contact center ID (in hex format)>"]}
    Important
    Use the <contact center ID (in hex format)> in all subsequent commands.
  2. Using a text editor, created the create_table file using the following command:
    {
    "operationName":"createCRCF"
    }
    curl -u ops:ops -X POST -d @create_table http://htcc:8080/api/v2/ops/
    contact-centers/<contact center ID (in hex format)>/recordings 
    --header "Content-Type: application/json"; echo

To enable storage:

  1. Using a text editor, create the recording_settings text file using the following command:
    {
      "store": [
        {
          "webDAV": {
            "userName": "user1",
            "password": "password1",
            "uri": "http://apache1/webdav"
          }
        },
        {
          "webDAV": {
            "userName": "user2",
            "password": "password2",
            "uri": "http://apache2/webdav"
          }
      ]
    }
    
    curl -u ops:ops -X PUT -d @recording_settings
     http://<Web Services Server>:8080/api/v2/ops/
    contact-centers/<contact center ID (in hex format)>/settings/recordings
     --header "Content-Type: application/json"; echo

Configuring the Call Recording Audit Log

Web Services provides an audit log for the following call recording operations:

  • Playback of the recording media file
  • Deletion of the call recording file

To configure the audit log:

  1. Stop the Web Service Jetty using the following command:
    sudo service jetty stop
  2. Update the Jetty LogBack Configuration:
    • Edit the /opt/jetty/resources/logback.xml file to include INFO level messaging [+] Show example
    • For MLM:
      • Create a RECORDING appender if it does not exist. [+] Show example
      • Add the following loggers:
        <logger name="com.genesyslab.cloud.v2.api.controllers.callrecording">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.api.controllers.screenrecording">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.api.tasks.callrecording">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.api.tasks.screenrecording">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.api.tasks.settings">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.media.scheduler">
            <appender-ref ref="RECORDING" />
          </logger>
          <logger name="com.genesyslab.cloud.v2.media.task">
            <appender-ref ref="RECORDING" />
          </logger>
      For more information about Jetty Logback, see Logback configuration.
  3. Start Jetty using the following command:
    sudo service jetty start
  4. Review the audit log.[+] Show example

Setting the Advanced Options for Web Services

API Thread Pool

Web Services provides properties for the Call Recording API thread pool via archaius.[+] Show the properties

For more information about the Web Services Call Recording API, see the Web Services API Reference.

For more information about how to use Workspace Web Edition for Voice Recording, see the Workspace Web Edition Help.

For Screen Recordings

As with call recordings, Web Services requires a specific configuration for GIR screen recordings to work correctly. The following sections describe how to configure Web Services for screen recordings. [+] Show the Steps

Comments or questions about this documentation? Contact us for support!