ctiserver.rst 4.99 KB
Newer Older
Cedric Abunar's avatar
Cedric Abunar committed
1 2 3 4 5 6
**********
CTI Server
**********

.. index:: ctiserver

7
The CTI server configuration options can be found in the web-interface under the services tab.
Cedric Abunar's avatar
Cedric Abunar committed
8 9


Jean-Yves LEBLEU's avatar
Jean-Yves LEBLEU committed
10
General Options
Cedric Abunar's avatar
Cedric Abunar committed
11 12
===============

13 14
The general options allow the administrator to manage network connections between the CTI server and
the clients.
Cedric Abunar's avatar
Cedric Abunar committed
15

16
The section named ``STARTTLS options`` allows the administrator to enable
17 18 19 20
encrypted communications between the clients and xivo-ctid and specify the
certificate and private keys to use.

If no certificate and private key is configured, xivo-ctid will use the ones
sduthil's avatar
sduthil committed
21
located in ``/usr/share/xivo-certs``.
22 23 24 25

.. figure:: images/starttls_options.png
    :scale: 85%

Cedric Abunar's avatar
Cedric Abunar committed
26 27 28
Parting options are used to isolate XiVO users from each other. These options
should be used when using the same XiVO for different enterprises.

Jean-Yves LEBLEU's avatar
Jean-Yves LEBLEU committed
29
Context separation is based on the user's line context. A user
Cedric Abunar's avatar
Cedric Abunar committed
30 31 32
with no line is not the member of any context and will not be able to do
anything with the CTI client.

sduthil's avatar
sduthil committed
33
.. note:: xivo-dird must be restarted to take into account this parameter.
34 35 36

.. figure:: images/cti_others.png
   :scale: 85%
Cedric Abunar's avatar
Cedric Abunar committed
37

38

39
.. _authentication:
40

41
Authentication
42 43
================

44 45
xivo-ctid uses xivo-auth to authenticate users. The default authentication
backend is `xivo_user`. To change the authentication backend, add a
46 47 48 49 50 51 52 53 54 55
configuration file in `/etc/xivo-ctid/conf.d` with the following content:

.. code-block:: yaml

    auth:
        backend: backend_name

where *backend* name is the name of an enabled *xivo-auth* :ref:`auth-backends`.


56 57
.. _presence_option:

58
Presence Option
59
===============
60

61
In the `Status` menu, under `Presences`, you can edit presences group.
62
The default presence group is `francais`. When editing
sduthil's avatar
typos  
sduthil committed
63
a group, you will see a list of presences and their descriptions.
64 65

.. figure:: images/presence_list.png
66
   :scale: 85%
67

sduthil's avatar
typos  
sduthil committed
68
To use another presence group, you can edit the CTI profile you are using and select
69 70 71 72 73
the appropriate presence group for that profile.

.. figure:: images/presence_by_profile.png
    :scale: 85%

Sebastien Duthil's avatar
Sebastien Duthil committed
74 75 76

.. _presence-actions:

77
Available configuration
78
-----------------------
79 80 81 82 83 84 85 86 87 88

* `Presence name` is the name of the presence
* `Display name` is the human readable representation of this presence
* `Color status` is the color associated to this presence
* `Other reachable statuses` is the list of presence that can be switched from this presence state
* `Actions` are post selection actions that are triggered by selecting this presence

.. figure:: images/presence_configuration.png
  :scale: 85%

89

90
Actions
91
-------
92

93 94 95 96
============================= ==================
action                        param
============================= ==================
`Enable DND`                  `{'true','false'}`
97
`Pause agent in all queues`
98
`Unpause agent in all queues`
99
`Agent logoff`
100
============================= ==================
Sylvain Boily's avatar
Sylvain Boily committed
101

Sebastien Duthil's avatar
Sebastien Duthil committed
102

103 104
.. _ctid-encryption:

Sebastien Duthil's avatar
Sebastien Duthil committed
105 106 107 108
Enable encryption
=================

To enable encryption of CTI communications between server and clients, you have
109
to enable STARTTLS in :menuselection:`CTI Server --> General settings -->
110
General`
Sebastien Duthil's avatar
Sebastien Duthil committed
111

112 113
Custom certificates can be added in :menuselection:`Configuration --> Certificates`
and used in :menuselection:`CTI Server --> General settings --> General`
Sebastien Duthil's avatar
Sebastien Duthil committed
114 115

In your XiVO Client, in the menu :menuselection:`XiVO Client --> Configure -->
116 117 118 119 120
Connection`, click on the lock icon.

.. note::

   A client which chooses to use encryption will not be able to connect to a
121
   server that does not have STARTTLS enabled.
122 123

.. warning::
Sebastien Duthil's avatar
Sebastien Duthil committed
124

125
   For now, there is no mechanism for strong authentication of the server. The
126
   connection is encrypted, but the identity of the server is not verified.
Sebastien Duthil's avatar
Sebastien Duthil committed
127 128


129 130
.. _cti-profiles:

Sebastien Duthil's avatar
Sebastien Duthil committed
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169
CTI profiles
============

The CTI profiles define which features are made available to a user. You can
configure which profile will be used by a user in the menu :menuselection:`IPBX
--> PBX Settings --> Users`:

.. figure:: images/user_profile.png

You can also customize the default profiles or add new profiles in the menu
:menuselection:`CTI Server --> Profiles`:

.. figure:: images/profiles_list.png


Xlets
-----

To choose which features are available to users using a profile, you have to
select which *Xlets* will be available.

The *Position* attribute determines how the Xlets will be laid out:

* *dock* will display a Xlet in its own frame. This frame can have some options:

  * *Floating* means that the frame can be detached from the main window of the CTI
    Client.
  * *Closable* means that the Xlet can be hidden
  * *Movable* means that the Xlet can be moved (either inside the main window or outside)
  * *Scroll* means that the Xlet will display a scroll bar if the Xlet is too large.

* *grid* will display a Xlet inside the main window, and it will not be
  movable. Multiple *grid* Xlets will be laid out vertically (the second below
  the first).
* *tab* will display a Xlet inside a tab of the Xlet *Tabber*. Thus the Xlet
  *Tabber* is required and can't be in a *tab* position.

The *Number* attribute gives the order of the Xlets, beginning with 0. The order
applies only to Xlets having the same *Position* attribute.