Installation

This page describes how to install the XiVO CC.

It describes the installation with the debian package of the whole XiVO CC.

Note

As a reference, the manual installation page is here Manual configuration and installation.

Warning

  • the wizard MUST be passed on the XiVO PBX
  • XiVO PBX will be reconfigured during the installation and must be restarted. You may accept the automatic restart during the installation or you need to restart it manually later before starting the docker containers.
  • If you configure HA on XiVO, you have to re-configure postgres to accept connection of XiVO CC - see PostgreSQL configuration section

Overview

The following components will be installed :

  • XuC : outsourced CTI server providing telephony events, statistics and commands through a WebSocket
  • XuC Management : supervision web pages based on the XuC
  • Pack Reporting : statistic summaries stored in a PostgreSQL database
  • Totem Support : near-real time statistics based on ElasticSearch
  • SpagoBI : BI suite with default statistic reports based on the Pack Reporting
  • Recording Server : web server allowing to search recorded conversations
  • Xuc Rights Management : permission provider used by XuC and Recording Server to manage the user rights

Prerequisites

We will assume your XiVO CC server meets the following requirements:

  • OS : Debian 8 (jessie), 64 bits.
  • you have a XiVO PBX installed in a compatible version (basically the two components XiVO and XiVO CC have to be in the same version).
  • the XiVO PBX is reachable on the network (ping and ssh between XiVO CC and XiVO PBX must be possible).
  • the XiVO PBX is setup (wizard must be passed) with users, queues and agents, you must be able to place and answer calls.

For the rest of this page, we will make the following assumptions :

  • the XiVO PBX has the IP 192.168.0.1
  • some data (incoming calls, internal calls etc.) might be available on XiVO (otherwise, you will not see anything in the check-list below).
  • the XiVO CC server has the IP 192.168.0.2

Architecture & Flows

This diagram is very important and shows the architecture between the different components inside XiVO CC and also interactions with XiVO PBX components.

../../../_images/xivocc_architecture.png

XiVO PBX Restrictions and Limitations

XiVO PBX enables a wide range of configuration, XiVO-CC is tested and validated with a number of restriction concerning configurations of XiVO PBX:

General Configuration

  • Do not activate Contexts Separation in xivo-ctid Configuration
  • Users deactivation is not supported

Queue Configuration

  • Queue ringing strategy should not be Ring All
  • Do not use pause on one queue or a subset of queues status, only pause or ready on all queues
  • Do not activate Call a member already on (Asterisk ringinuse) on xivo queue advanced configuration

User And Agent Configuration

  • All users and queues have to be in the same context
  • Agent and Supervisors profiles should use the same Presence Group
  • Agents and Phones should be in the same context for mobile agents
  • Agents must not have a password in XiVO agent configuration page
  • All users must have the supervision on the XiVO (IPBX-Users-Edit-Services-Enable supervision checked)
  • When and agent is disassociated from its user, xuc server has to be restarted.
  • We strongly advise to not delete any user or agent to keep reporting available for them. Even so when an agent is deleted, xuc server has to be restarted,

Install from repository

The installation and configuration of XiVO CC (with its XiVO PBX part) is handled by the xivocc-installer package which is available in the repository.

Install process overview

Note

If your server needs a proxy to access Internet, configure the proxy for apt, wget and curl as documented in Proxy Configuration.

The install process consists of three parts:

  1. The first part is to manually run the install-docker.sh script to install docker and docker compose.
  2. The second part is the installation of XiVO CC itself.
  3. The third part is to install the extra package for the recording.

The installation is automatic and you will be asked few questions during the process:

  • Before copying the authentication keys, you will be prompted for the XiVO PBX root password.
  • Enter IP addresses of XiVO PBX and XiVO CC.
  • XiVO PBX must restart, the question will prompt you to restart during the process or to restart later.

Install Docker and Docker Compose

Note

To be run on the XiVO CC server

On a fresh debian install you will probably need to install the ca-certificates package:

apt-get install ca-certificates

Now you can download the script which will install docker and docker compose.

  1. First, download the install-docker.sh script (in the following URL, replace VERSION.SUBVERSION with the current version, e.g. 2017.11.00):

    wget https://gitlab.com/xivo.solutions/packaging/raw/VERSION.SUBVERSION/install/install-docker.sh -O install-docker.sh
    
  2. And execute the script:

    chmod +x install-docker.sh
    ./install-docker.sh
    

Install ntp server

Note

To be run on the XiVO CC server

The XiVO CC server and the XiVO PBX server must be synchronized to the same NTP source.

apt-get install ntp

Recomended configuration : you should configure the NTP server of the XiVO CC server towards the XiVO PBX. In our example it means to add the following line in the file /etc/ntp.conf:

server 192.168.0.1 iburst

Install XiVO CC

Note

To be run on the XiVO CC server

This step will install the XiVO CC components via the xivocc-installer package. It is required to restart XiVO PBX during or after the setup process. The installer will ask whether you wish to restart XiVO PBX later.

Warning

  • This package must be installed on the XivoCC server.
  • Wizard MUST be passed on the XiVO PBX.
  • XiVO PBX services will need to be restarted. The installer will ask whether you wish to restart XiVO PBX during or after the setup process.

Also, check that you have following information:

  • XiVO PBX root password;
  • OpenSSH PermitRootLogin set to yes (you could revert to no after installation of XivoCC);
  • XiVO PBX’s IP address;
  • XiVO CC DNS name or IP address (the one visible by XiVO PBX);
  • Number of weeks to keep statistics;
  • Number of weeks to keep recordings (beware of space disk);

The number of weeks to keep statistics must be higher than the number of weeks to keep recordings. Recording purging is based on the statistic data, so the statistic data must not be removed before purging recordings.

Install the xivocc-installer package via apt:

  1. Create the xivo sources list file /etc/apt/sources.list.d/xivo-dist.list and add the following line (replace VERSION with the current version, e.g. 2017.11):

    deb http://mirror.xivo.solutions/archive/ xivo-VERSION-latest main
    
  2. Add GPG key of XiVO repository:

    wget http://mirror.xivo.solutions/xivo_current.key -O - | apt-key add -
    
  3. Update your source list and install the package:

    apt-get update
    apt-get install xivocc-installer
    

After-install steps

After a successful installation, start docker containers using the installed xivocc-dcomp script:

xivocc-dcomp up -d

If you choose to restart XiVO PBX later, please do so as soon as possible to apply the modifications made by the installer. Until then, the XiVO CC server will not be able to connect correctly to the database on XiVO PBX.

Note

Please, ensure your server date is correct before starting. If system date differs too much from correct date, you may get an authentication error preventing download of the docker images.

To restart XiVO services, on XiVO PBX server run

xivo-service restart all

Reinstallation

To reinstall the package, it is required to run apt-get purge xivocc-installer then apt-get install xivocc-installer. This will re-run the configuration of the package, download the docker compose template and setup XiVO PBX.

Purging the package will also remove the xuc and stats users from the XiVO PBX database.

Known Issues

To avoid uninstallation problems:
  • please use the following command to uninstall apt-get purge xivocc-installer
  • if the process is aborted, it will break the installation. Then run apt-get purge and apt-get install again

Checking Installed Version

Version of the running docker containers can be displayed by typing (see Show containers and images versions for other commands):

xivocc-dcomp version

Component version can also be found in the log files and on the web pages for web components.

Using XivoCC

The various applications are available on the following addresses:

../../../_images/fingerboard.png

Post Installation

User Configuration

You should configure users and their rights in the Configuration manager http://<XiVO IP Address>:9100/configmgt/ (default user avencall/superpass).

Warning

If you change the cti login username in xivo configuration, user has to be recreated with apropriate rights in configuration manager.

SpagoBI

To configure SpagoBI, go to http://192.168.0.2:9500/SpagoBI (by default login: biadmin, password: biadmin).

Update default language

  1. Go to “⚙ Resources” > “Configuration management”
  2. In the “Select Category” field, chose “LANGUAGE_SUPPORTED”
  3. change value of the label “SPAGOBI.LANGUAGE_SUPPORTED.LANGUAGE.default” in your language : fr,FR , en,US , …

Upload Sample Reports

  1. Download the sample reports from https://gitlab.com/xivocc/sample_reports/raw/2018.05/spagobi/samples_before_borealis_v15.zip
  2. Import zip file in SpagoBI:
  1. Goto “Repository Management” -> “Import/Export”
  2. Click on “Browse/Choose your file” and choose the previous samples_before_borealis_v15.zip downloaded file
  3. Click on “Import” icon
  4. Click next with default options until you are asked to override metadata, set Yes as shown in screen below
../../../_images/reportsoverride.png

You can now browse the sample reports in Document->Rapports->Exemples.

../../../_images/reportsample.png

Use the database status report to check if replication and reporting generation is working :

../../../_images/datastatus.png

Totem Panels

Data replication can take some time if there are a lot of data in xivo cel and queue log tables. You may check xivo-db-replication log files (/var/log/xivocc/xivo-db-replication.log).

Preconfigured panels are available on http://@IP/kibana/#/dashboard/file/queues.json et http://@IP/kibana/#/dashboard/file/agents.json to be able to save this panels in elasticsearch database you have to sign on on request user admin/Kibana

../../../_images/totempanel.png

Post Installation Check List

Warning

Make sure to have few calls made in your XiVO, despite you will not see anything in totem or spagobi.

Recording

Note

To be run on the XiVO PBX server

Warning

Since 2017.03.02 xivo-recording and call-recording-filtering packages are deprecated and are replaced by package xivocc-recording. In case of upgrade, see XiVO PBX specific upgrade procedure: XiVOCC Recording upgrade procedure.

Install on your XiVO PBX the debian package available in the repository.

apt-get install xivocc-recording

This package needs additional configuration steps, see:

  1. Recording configuration,
  2. and (optionally) Recording filtering configuration.

Recording on a Gateway

If you don’t want to record files on the XiVO PBX itself but on a XiVO PBX Gateway, you must install the gateway-recording package (instead of the xivocc-recording):

apt-get install gateway-recording

For configuration of this package, see Gateway recording configuration.