...
 
Commits (22)
...@@ -58,3 +58,15 @@ Files path summary table ...@@ -58,3 +58,15 @@ Files path summary table
+------------------------+-------------------------------------+-------------------------------------------------------------------------------------------------------+ +------------------------+-------------------------------------+-------------------------------------------------------------------------------------------------------+
| postgresql-11-main.log | /var/log/postgresql/ | Database log file. | | postgresql-11-main.log | /var/log/postgresql/ | Database log file. |
+------------------------+-------------------------------------+-------------------------------------------------------------------------------------------------------+ +------------------------+-------------------------------------+-------------------------------------------------------------------------------------------------------+
Connections to database and replication schema
==============================================
This schema shows required database connections between different types of servers.
These connections must be authorized in ``pg_hba.conf`` file. It is being done automatically or it is described in installation or upgrade documentation.
It also shows how asterisk database is replicated. Only configuration tables are replicated between asterisk databases
and only event tables (cel and queue_log) are replicated to stats database.
.. figure:: images/db_connections.png
:scale: 100%
...@@ -171,8 +171,7 @@ In section **pool**, modify the options:: ...@@ -171,8 +171,7 @@ In section **pool**, modify the options::
range 172.30.8.10 172.30.8.200; range 172.30.8.10 172.30.8.200;
.. warning:: XiVO only answers to DHCP requests from `supported devices <https://documentation.xivo.solutions/projects/devices/en/latest/>`_. In case of
.. warning:: XiVO only answers to DHCP requests from :ref:`supported devices <devices>`. In case of
you need to address other equipment, use the option *allow unknown-clients;* in the you need to address other equipment, use the option *allow unknown-clients;* in the
:file:`/etc/dhcp/dhcpd_sites/` files :file:`/etc/dhcp/dhcpd_sites/` files
......
...@@ -64,12 +64,12 @@ Use your own certificate ...@@ -64,12 +64,12 @@ Use your own certificate
For this, follow these steps: For this, follow these steps:
1. Replace the following files with your own private key/certificate pair: #. Replace the following files with your own private key/certificate pair:
* Private key: :file:`/usr/share/xivo-certs/server.key` * Private key: :file:`/usr/share/xivo-certs/server.key`
* Certificate: :file:`/usr/share/xivo-certs/server.crt` * Certificate: :file:`/usr/share/xivo-certs/server.crt`
2. Change the hostname of XiVO for each XiVO component: the different processes of XiVO heavily use #. Change the hostname of XiVO for each XiVO component: the different processes of XiVO heavily use
HTTPS for internal communication, and for these connection to establish successfully, all HTTPS for internal communication, and for these connection to establish successfully, all
hostnames used must match the Common Name (CN) of your certificate. Basically, you must replace hostnames used must match the Common Name (CN) of your certificate. Basically, you must replace
all occurrences of ``localhost`` (the default hostname) with your CN in the :ref:`configuration of the all occurrences of ``localhost`` (the default hostname) with your CN in the :ref:`configuration of the
...@@ -94,10 +94,15 @@ For this, follow these steps: ...@@ -94,10 +94,15 @@ For this, follow these steps:
ln -s "/etc/xivo/custom/custom-certificate.yml" "$config_dir/010-custom-certificate.yml" ln -s "/etc/xivo/custom/custom-certificate.yml" "$config_dir/010-custom-certificate.yml"
done done
Also, you must replace ``localhost`` in the definition of your directories in the web interface #. Also, you must replace ``localhost``, in the definition of your directories in the web interface under :menuselection:`Configuration --> Directories`, by the hostname matching the CN of your certificate.
under :menuselection:`Configuration --> Directories`.
3. If your certificate is not self-signed, and you obtained it from a third-party CA that is trusted #. Then, when done, you must re-save, the CTI Directories definition:
* Go to :menuselection:`Services --> CTI Server --> Directories --> Definitions`
* Edit each directory to re-select the new URI
* And save it
#. If your certificate is not self-signed, and you obtained it from a third-party CA that is trusted
by your system, you must enable the system-based certificate verification. By default, by your system, you must enable the system-based certificate verification. By default,
certificate verification is set to consider ``/usr/share/xivo-certs/server.crt`` as the only CA certificate verification is set to consider ``/usr/share/xivo-certs/server.crt`` as the only CA
certificate. certificate.
...@@ -141,10 +146,10 @@ For this, follow these steps: ...@@ -141,10 +146,10 @@ For this, follow these steps:
machine, however, this is dangerous when XiVO services are separated by an untrusted network, machine, however, this is dangerous when XiVO services are separated by an untrusted network,
such as the Internet. such as the Internet.
4. Ensure your CN resolves to a valid IP address with either: #. Ensure your CN resolves to a valid IP address with:
* a DNS entry * a DNS entry
* an entry in :file:`/etc/hosts` resolving your CN to 127.0.0.1. Note that :file:`/etc/hosts` * and an entry in :file:`/etc/hosts` resolving your CN to 127.0.0.1. Note that :file:`/etc/hosts`
will be rewritten occasionally by xivo-sysconfd. To make the change persistent, you can: will be rewritten occasionally by xivo-sysconfd. To make the change persistent, you can:
#. modify :file:`/usr/share/xivo-sysconfd/templates/resolvconf/hosts` instead (which will be #. modify :file:`/usr/share/xivo-sysconfd/templates/resolvconf/hosts` instead (which will be
...@@ -153,9 +158,9 @@ For this, follow these steps: ...@@ -153,9 +158,9 @@ For this, follow these steps:
modification to :file:`/usr/share/xivo-sysconfd/templates/resolvconf/hosts` after each modification to :file:`/usr/share/xivo-sysconfd/templates/resolvconf/hosts` after each
``xivo-upgrade``. ``xivo-upgrade``.
5. Your X.509 certificate must have ``subjectAltName`` defined. See the example at `cacert.org <http://wiki.cacert.org/FAQ/subjectAltName>`_ #. Your X.509 certificate must have ``subjectAltName`` defined. See the example at `cacert.org <http://wiki.cacert.org/FAQ/subjectAltName>`_
or detailed documentation at `ietf.org <https://tools.ietf.org/html/rfc3280>`_. or detailed documentation at `ietf.org <https://tools.ietf.org/html/rfc3280>`_.
6. Restart all XiVO services:: #. Restart all XiVO services::
xivo-service restart all xivo-service restart all
.. _system_proxy:
******************* *******************
Proxy Configuration Proxy Configuration
******************* *******************
...@@ -10,43 +12,47 @@ it to work correctly. ...@@ -10,43 +12,47 @@ it to work correctly.
Instead you should configure the proxy on a per service basis as described Instead you should configure the proxy on a per service basis as described
below. below.
System Applications
===================
Installation and upgrade operations use different tools for which the proxy must be configured if any.
apt apt
=== ---
.. important:: This is needed because apt is used for installation and upgrade
Create the :file:`/etc/apt/apt.conf.d/90proxy` file with the following content:: Create the :file:`/etc/apt/apt.conf.d/90proxy` file with the following content::
Acquire::http::Proxy "http://domain\username:password@proxyip:proxyport"; Acquire::http::Proxy "http://domain\username:password@proxyip:proxyport";
curl
----
dhcp-update .. important:: This is needed because ``curl`` is used during installation and upgrade
===========
*This step is needed if you use the DHCP server of the XiVO. Otherwise the DHCP configuration won't be correct.*
Proxy information is set via the :file:`/etc/xivo/dhcpd-update.conf` file. Create the :file:`~/.curlrc` file with the following content::
Edit the file and look for the ``[proxy]`` section. proxy = http://proxyip:proxyport
proxy-user = "username:password"
docker docker
====== ------
.. important:: This is needed because docker images will be downloaded during installation or upgrade
When upgrading or installing XiVO it will attempt to download docker images. When upgrading or installing XiVO it will attempt to download docker images.
For the proxy configuration, you need to create a systemd configuration file. For the proxy configuration, you need to create a systemd configuration file.
See Docker documentation: https://docs.docker.com/config/daemon/systemd/#httphttps-proxy See Docker documentation: https://docs.docker.com/config/daemon/systemd/#httphttps-proxy
provd
=====
Proxy information is set via the :menuselection:`Configuration --> Provisioning --> General`
page.
wget wget
==== ----
*This step is needed because this tool is used by xivo-upgrade script.* .. important:: This step is needed because this tool is used by xivo-upgrade script and install scripts
Create the :file:`~/.wgetrc` file with the following content:: Create the :file:`~/.wgetrc` file with the following content::
...@@ -54,10 +60,35 @@ Create the :file:`~/.wgetrc` file with the following content:: ...@@ -54,10 +60,35 @@ Create the :file:`~/.wgetrc` file with the following content::
http_proxy=http://username:password@proxyip:proxyport http_proxy=http://username:password@proxyip:proxyport
XiVO Services
=============
Several XiVO services needs also the proxy to be configured, if any.
dhcp-update
-----------
.. important:: This is needed if you use the DHCP server of the XiVO. Otherwise the DHCP configuration won't be correct. It must be set before the wizard is run.
Proxy information is set via the :file:`/etc/xivo/dhcpd-update.conf` file.
Edit the file and look for the ``[proxy]`` section.
provd
-----
.. note:: This is needed to download plugins
Proxy information is set via the :menuselection:`Configuration --> Provisioning --> General`
page.
xivo-fetchfw xivo-fetchfw
============ ------------
*This step is not needed if you don't use xivo-fetchfw.* .. note:: This is needed to download firmwares
Proxy information is set via the :file:`/etc/xivo/xivo-fetchfw.conf` file. Proxy information is set via the :file:`/etc/xivo/xivo-fetchfw.conf` file.
......
...@@ -8,7 +8,7 @@ System ...@@ -8,7 +8,7 @@ System
DHCP Server <dhcp/dhcp> DHCP Server <dhcp/dhcp>
Mail <mail/mail> Mail <mail/mail>
Network <network/network> Network <network/network>
database Database <database/database>
backup_restore backup_restore
cli_tools/cli_tools cli_tools/cli_tools
https_certificate https_certificate
......
################# *****************
NGINX - proxy web NGINX - proxy web
################# *****************
Basic check Basic check
=========== ===========
......
*********
Reporting Reporting
========= *********
xivo_replic does not replicate call data xivo_replic does not replicate call data
---------------------------------------- ========================================
After experiencing a 'no space left on device' and restarting containers, it can sometimes happen that the data from XiVO is not replicated anymore. Container *xivocc_replic_1* logs show the following error:: After experiencing a 'no space left on device' and restarting containers, it can sometimes happen that the data from XiVO is not replicated anymore. Container *xivocc_replic_1* logs show the following error::
......
**********
PostgreSQL PostgreSQL
========== **********
Container keeps on restarting after upgrade Container keeps on restarting after upgrade
------------------------------------------- ===========================================
After upgrading Docker it can sometimes happen that the container *xivocc_pgxivocc_1* gets stuck in restarting mode. Logs show the following error After upgrading Docker it can sometimes happen that the container *xivocc_pgxivocc_1* gets stuck in restarting mode. Logs show the following error
......
.. _troubleshooting: .. _troubleshooting:
***************
Troubleshooting Troubleshooting
=============== ***************
Transfers using DTMF Transfers using DTMF
-------------------- ====================
When transfering a call using DTMF (\*1) you get an *invalid extension* error when dialing the When transfering a call using DTMF (\*1) you get an *invalid extension* error when dialing the
extension. extension.
...@@ -29,7 +30,7 @@ to be able to transfer the called person to another extension. ...@@ -29,7 +30,7 @@ to be able to transfer the called person to another extension.
.. _fax-detection: .. _fax-detection:
Fax detection Fax detection
------------- =============
XiVO **does not currently support Fax detection**. The following describe a workaround to use this XiVO **does not currently support Fax detection**. The following describe a workaround to use this
feature. The behavior is to answer all incoming (external) call, wait for a number of seconds (4 in feature. The behavior is to answer all incoming (external) call, wait for a number of seconds (4 in
...@@ -77,7 +78,7 @@ this example) : if a fax is detected, receive it otherwise route the call normal ...@@ -77,7 +78,7 @@ this example) : if a fax is detected, receive it otherwise route the call normal
.. _berofos-integration-with-pbx: .. _berofos-integration-with-pbx:
Berofos Integration with PBX Berofos Integration with PBX
---------------------------- ============================
You can use a Berofos failover switch to secure the ISDN provider lines You can use a Berofos failover switch to secure the ISDN provider lines
when installing a XiVO in front of an existing PBX. when installing a XiVO in front of an existing PBX.
...@@ -161,7 +162,7 @@ The following describes how to configure your XiVO and your Berofos. ...@@ -161,7 +162,7 @@ The following describes how to configure your XiVO and your Berofos.
Upgrading from XiVO 1.2.3 Upgrading from XiVO 1.2.3
-------------------------- ==========================
#. There is an issue with ``xivo-libsccp`` and ``pf-xivo-base-config`` during an upgrade from 1.2.3:: #. There is an issue with ``xivo-libsccp`` and ``pf-xivo-base-config`` during an upgrade from 1.2.3::
...@@ -191,7 +192,7 @@ Upgrading from XiVO 1.2.3 ...@@ -191,7 +192,7 @@ Upgrading from XiVO 1.2.3
.. _cti-ami-proxy: .. _cti-ami-proxy:
CTI server is unexpectedly terminating CTI server is unexpectedly terminating
-------------------------------------- ======================================
If you observes that your CTI server is sometimes unexpectedly terminating with the following If you observes that your CTI server is sometimes unexpectedly terminating with the following
message in :file:`/var/log/xivo-ctid.log`:: message in :file:`/var/log/xivo-ctid.log`::
...@@ -236,7 +237,7 @@ To disable the ami-proxy:: ...@@ -236,7 +237,7 @@ To disable the ami-proxy::
Agents receiving two ACD calls Agents receiving two ACD calls
------------------------------ ==============================
.. warning:: Procedure was removed since bug was fixed in asterisk version shipped in 2017.LTS1 (2017.03) .. warning:: Procedure was removed since bug was fixed in asterisk version shipped in 2017.LTS1 (2017.03)
...@@ -244,7 +245,7 @@ Agents receiving two ACD calls ...@@ -244,7 +245,7 @@ Agents receiving two ACD calls
.. _postgresql_localization_errors: .. _postgresql_localization_errors:
PostgreSQL localization errors PostgreSQL localization errors
------------------------------ ==============================
The database and the underlying `database cluster`_ used by XiVO is sensitive to the system locale The database and the underlying `database cluster`_ used by XiVO is sensitive to the system locale
configuration. The locale used by the database and the database cluster is set when XiVO is configuration. The locale used by the database and the database cluster is set when XiVO is
...@@ -269,7 +270,7 @@ When working with locale and PostgreSQL, there's a few useful commands and thing ...@@ -269,7 +270,7 @@ When working with locale and PostgreSQL, there's a few useful commands and thing
Database cluster is not starting Database cluster is not starting
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------------------------------
If the database cluster doesn't start and you have the following errors in your log file:: If the database cluster doesn't start and you have the following errors in your log file::
...@@ -292,7 +293,7 @@ Once this is done, restart your database cluster. ...@@ -292,7 +293,7 @@ Once this is done, restart your database cluster.
Can't connect to the database Can't connect to the database
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -----------------------------
If the database cluster is up but you get the following error when trying to connect to the If the database cluster is up but you get the following error when trying to connect to the
``asterisk`` database:: ``asterisk`` database::
...@@ -310,13 +311,13 @@ two choices to fix this issue: ...@@ -310,13 +311,13 @@ two choices to fix this issue:
Error during the upgrade Error during the upgrade
^^^^^^^^^^^^^^^^^^^^^^^^ ------------------------
Then you are mostly in one of the cases described above. Check your log file. Then you are mostly in one of the cases described above. Check your log file.
Error while restoring a database backup Error while restoring a database backup
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ---------------------------------------
If during a database restore, you get the following error:: If during a database restore, you get the following error::
...@@ -339,7 +340,7 @@ your system. You have two choices to fix this issue: ...@@ -339,7 +340,7 @@ your system. You have two choices to fix this issue:
Error during master-slave replication Error during master-slave replication
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------------------------------------
Then the slave database is most likely not using an UTF-8 encoding. You'll need to Then the slave database is most likely not using an UTF-8 encoding. You'll need to
:ref:`recreate the database using a different locale <postgres-change-locale>` :ref:`recreate the database using a different locale <postgres-change-locale>`
...@@ -348,7 +349,7 @@ Then the slave database is most likely not using an UTF-8 encoding. You'll need ...@@ -348,7 +349,7 @@ Then the slave database is most likely not using an UTF-8 encoding. You'll need
.. _postgres-change-locale: .. _postgres-change-locale:
Changing the locale (LC_COLLATE and LC_CTYPE) of the database Changing the locale (LC_COLLATE and LC_CTYPE) of the database
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------------------------------------------------------------
If you have decided to change the locale of your database, you must: If you have decided to change the locale of your database, you must:
...@@ -380,7 +381,7 @@ For more information, consult the `official documentation on PostgreSQL localiza ...@@ -380,7 +381,7 @@ For more information, consult the `official documentation on PostgreSQL localiza
Originate a call from the Asterisk console Originate a call from the Asterisk console
------------------------------------------ ==========================================
It is sometimes useful to ring a phone from the asterisk console. For example, if you want It is sometimes useful to ring a phone from the asterisk console. For example, if you want
to call the ``1234`` extension in context ``default``:: to call the ``1234`` extension in context ``default``::
...@@ -388,7 +389,7 @@ to call the ``1234`` extension in context ``default``:: ...@@ -388,7 +389,7 @@ to call the ``1234`` extension in context ``default``::
channel originate Local/1234@default extension 42@xivo-callme channel originate Local/1234@default extension 42@xivo-callme
WebRTC WebRTC
------ ======
* `http.conf` - asterisk's webserver must accept connection from outside, the listen address must be updated, for the sake of * `http.conf` - asterisk's webserver must accept connection from outside, the listen address must be updated, for the sake of
simplicity let's use 0.0.0.0, you can also pick an address of one of the network interfaces: simplicity let's use 0.0.0.0, you can also pick an address of one of the network interfaces:
......
################################### ***********************************
Xuc & Xucmgt (CC & UC applications) Xuc & Xucmgt (CC & UC applications)
################################### ***********************************
Basic checks
============
XUC overview page XUC overview page
----------------- =================
XUC overview page available at @XUC_IP:PORT, usually @SERVER_IP:8090. You have to check if the "Internal configuration cache database" XUC overview page available at @XUC_IP:PORT, usually @SERVER_IP:8090. You have to check if the "Internal configuration cache database"
contains agents, queues etc. contains agents, queues etc.
XUC sample page XUC sample page
--------------- ===============
XUC sample page available at @XUC_IP:PORT/sample, usually @SERVER_IP:8090/sample. You can use this page to check user login and other XUC sample page available at @XUC_IP:PORT/sample, usually @SERVER_IP:8090/sample. You can use this page to check user login and other
API functions. CCManager, agent and assistant web use functions available on the sample page. API functions. CCManager, agent and assistant web use functions available on the sample page.
XUC Internal Metrics
====================
Internal metrics are also available - see :ref:`xuc_jmx_metrics` page.
.. toctree::
:maxdepth: 2
:hidden:
jmx
Agent states after XUC restart Agent states after XUC restart
------------------------------ ==============================
Please see the note in :ref:`restarting <agent_states_after_xuc_restart>` XUC server with active calls. Please see the note in :ref:`restarting <agent_states_after_xuc_restart>` XUC server with active calls.
.. _xuc_jmx_metrics:
********************
XUC Internal Metrics
********************
.. contents::
Introduction
============
The XUC process exposes some metrics to troubleshoot or monitor the health of the process. Some of these metrics were previously exposed in a sub-page of the XUC overview page. The metrics are not exposed using the JMX technology available in java.
Configuration
=============
Enable JMX
----------
JMX is enabled by default in java but only available on the local machine running the process. Moreover as we are using docker, it's only available inside the docker container itself. To make it available from the outside of the container and host running the XUC process, you need to explicitely configure it to do so.
In the following configuration, replace
* JMX_PORT with the port number where you want to expose the JMX
* JMX_HOST by the docker host IP address (not the container one but the IP of the server running docker)
Edit your docker compose file (/etc/docker/compose/docker-xivocc.yml) and change the configuration of the xuc container:
::
xuc:
[...]
ports:
- JMX_PORT:JMX_PORT
[...]
environment:
- JAVA_OPTS=-Xms512m -Xmx1024m -DtechMetrics.jmxReporter=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=JMX_PORT -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=JMX_HOST -Dcom.sun.management.jmxremote.rmi.port=JMX_PORT
[...]
For example, if we have JMX_PORT=15701 and JMX_HOST=192.168.228.100, you should set
::
xuc:
[...]
ports:
- 15701:15701
[...]
environment:
- JAVA_OPTS=-Xms512m -Xmx1024m -DtechMetrics.jmxReporter=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=15701 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.228.100 -Dcom.sun.management.jmxremote.rmi.port=15701
[...]
Then restart the XUC process with the new configuration by running the command ``xivocc-dcomp up -d xuc``
Explore JMX
-----------
Once restarted you can then use tools to explore the metrics: jconsole, visualvm with MBeans plugin, eclipse,... For example, here are the steps to configure visualvm and explore the JMX metrics:
* Download and install visualvm https://visualvm.github.io/
* Enable MBeans plugin
.. figure:: jmx-plugins.png
:scale: 90%
* Add remote host
.. figure:: jmx-config.png
:scale: 90%
* Double click on process under the newly added host
* Click on the MBeans tab
* Explore tree
.. figure:: jmx-tree.png
:scale: 50%
Expose JMX through REST
-----------------------
Alternatively you could integrate a JMX plugin to your running process which allows to gather JMX metrics over HTTP. You need to download jolokia JVM agent from their website: https://jolokia.org/ and transfer the jar file on the server hosting the XUC container (for example in ``/etc/docker/jolokia/jolokia-jvm-1.6.2-agent.jar``).
Then you should change your docker compose configuration for the xuc process in ``docker-xivocc.yml``:
::
xuc:
[...]
ports:
- JMX_HTTP_PORT:JMX_HTTP_PORT
[...]
environment:
- JAVA_OPTS=-Xms512m -Xmx1024m -DtechMetrics.jmxReporter=true -javaagent:/opt/jolokia/jolokia-jvm-1.6.2-agent.jar=port=JMX_HTTP_PORT,host=JMX_HTTP_HOST
[...]
volumes:
- /etc/docker/jolokia:/opt/jolokia
Then restart the XUC process with the new configuration by running the command ``xivocc-dcomp up -d xuc``. The JMX metrics are now available over HTTP, see jolokia website for help on available endpoints: https://jolokia.org/documentation.html
Here are some example url to test:
* List all jmx metrics available: ``curl http://JMX_HTTP_HOST:JMX_HTTP_PORT/jolokia/list``
* Get metrics of a specific service: ``curl http://JMX_HTTP_HOST:JMX_HTTP_PORT/jolokia/read/services.calltracking:type=AsteriskGraphTracker``
Metrics description
===================
Historical metrics
------------------
These metrics were previously exposed in a sub-page of the XUC overview page.
* Xuc.CtiLink.*: Information on the link per user between XUC and ctid on the XiVO PBX
* Xuc.CtiRouter.totalClients: Total number of client connected to the XUC
* Xuc.CtiRouter.<username>.nbOfClients: Number of client connected to the XUC with the given <username>
* Xuc.global.ami.failures: Number of failure/lost connection to the asterisk AMI
New metrics
-----------
* services.CtiRouter.<username>CtiRouter: Information on the currently connected <username>
* services.calltracking.AsteriskGraphTracker
* GraphSize: Size of the call graph
* LoopDetected: Number of call loop detected
* Notifications: Number of Notifications published internally
* Watchers: Number of object monitoring the graph
* services.calltracking.ChannelTracker
* HangupEvents: Number of Hangup received since the process started
* NewChannelEvents: Number of channel created since the process started
* Notifications: Number of Notifications published internally
* Watchers: Number of object monitoring the channels
* services.calltracking.ConferenceTracker
* Conferences: Number of conferences
* Participants: Number of participants
* services.calltracking.DevicesTracker.Devices: Number of monitored device
* services.calltracking.SipDeviceTracker.<SIP_PEER_NAME>: Information about the SIP peer (Phone device)
* Calls: Number of active calls
* ChannelEvent: Number of channel event received
* PartyInformation: Number of event received from remote party
* PathsFromChannel: Number of event received from the AsteriskGraphTracker
* services.calltracking.TrunkDeviceTracker.<TRUNK_NAME>: Information about the trunk, same information as in SipDeviceTracker
* services.calltracking.CustomDeviceTracker.<CUSTOM_NAME>: Information about the custom device, same information as in SipDeviceTracker
* services.calltracking.UnknownDeviceTracker.<CUSTOM_NAME>: Information about other asterisk device, same information as in SipDeviceTracker
Other JVM metrics
-----------------
You may also find these metrics interesting when troubleshooting the process:
* java.lang.Memory.HeapMemoryUsage: Information about the java heap memory
* java.lang.GarbageCollector: Information about the java garbage collector process
...@@ -32,7 +32,7 @@ the notion of a primary and backup telephony server. ...@@ -32,7 +32,7 @@ the notion of a primary and backup telephony server.
* Trunk registration timeout (``expiry``) should be less than 300 seconds (5 minutes) * Trunk registration timeout (``expiry``) should be less than 300 seconds (5 minutes)
* The slave must have **no** provisioning plugins installed. * The slave must have **no** provisioning plugins installed.
The HA solution is guaranteed to work correctly with :ref:`the following devices <devices>`. The HA solution is guaranteed to work correctly with `the following devices <https://documentation.xivo.solutions/projects/devices/en/latest/>`_.
Quick Summary Quick Summary
......
...@@ -189,8 +189,7 @@ Behavior ...@@ -189,8 +189,7 @@ Behavior
* The key blinks on Snom and Yealink phone sets. It doesn't blink on Polycom phone sets. * The key blinks on Snom and Yealink phone sets. It doesn't blink on Polycom phone sets.
* To be able to terminate Wrapup via the key on Snom phones you must use correct version of plugin (see * To be able to terminate Wrapup via the key on Snom phones you must use correct version of plugin (see
:ref:`devices_releasenotes`). `devices releasenotes <https://documentation.xivo.solutions/projects/devices/en/latest/devices/devices.html#plugins-release-notes>`_).
Configuration Configuration
------------- -------------
......
...@@ -403,7 +403,7 @@ Agent State Event ...@@ -403,7 +403,7 @@ Agent State Event
:: ::
{"name":"AgentLogin","agentId":19,"phoneNb":"1000","since":1423839787,"queues":[8,14,170,4,1],"cause":""} {"name":"AgentLogin","agentId":19,"phoneNb":"1000","since":1423839787,"queues":[8,14,170,4,1]}
* AgentReady * AgentReady
...@@ -421,19 +421,19 @@ Agent State Event ...@@ -421,19 +421,19 @@ Agent State Event
:: ::
{"name":"AgentOnWrapup","agentId":19,"phoneNb":"1000","since":2,"queues":[8,14,170,4,1],"cause":"available"} {"name":"AgentOnWrapup","agentId":19,"phoneNb":"1000","since":2,"queues":[8,14,170,4,1]}
* AgentRinging * AgentRinging
:: ::
{"name":"AgentRinging","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1],"cause":"available"} {"name":"AgentRinging","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1]}
* AgentDialing * AgentDialing
:: ::
{"name":"AgentDialing","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1],"cause":"available"} {"name":"AgentDialing","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1]}
* AgentOnCall * AgentOnCall
...@@ -441,7 +441,7 @@ Agent State Event ...@@ -441,7 +441,7 @@ Agent State Event
{"msgType":"AgentStateEvent","ctiMessage": {"msgType":"AgentStateEvent","ctiMessage":
{"name":"AgentOnCall","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1], {"name":"AgentOnCall","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1],
"cause":"available","acd":false,"direction":"Incoming","callType":"External","monitorState":"ACTIVE"}} "acd":false,"direction":"Incoming","callType":"External","monitorState":"ACTIVE"}}
...@@ -449,7 +449,7 @@ Agent State Event ...@@ -449,7 +449,7 @@ Agent State Event
:: ::
{"name":"AgentLoggedOut","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1],"cause":"available"} {"name":"AgentLoggedOut","agentId":19,"phoneNb":"1000","since":0,"queues":[8,14,170,4,1]}
Agent Error Agent Error
...@@ -748,14 +748,19 @@ Cti.logoutAgent(agentId) ...@@ -748,14 +748,19 @@ Cti.logoutAgent(agentId)
------------------------ ------------------------
Un log an agent Un log an agent
Cti.pauseAgent(agentId) Cti.pauseAgent(agentId, reason)
----------------------- -------------------------------
Change agent state to pause Change agent state to pause.
* `agentId`: Id of the agent to set state for. Can be omitted to change current loggedin agent state.
* `reason`: Optional string to label the kind of pause to set.
Cti.unpauseAgent(agentId) Cti.unpauseAgent(agentId)
------------------------- -------------------------
Change agent state to ready Change agent state to ready
* `agentId`: Id of the agent to set state for. Can be omitted to change current loggedin agent state.
Cti.listenAgent(agentId) Cti.listenAgent(agentId)
------------------------ ------------------------
Listen to an agent Listen to an agent
......
...@@ -10,5 +10,5 @@ The reporting is composed of four packages: pack-reporting, xivo-full-stats, xiv ...@@ -10,5 +10,5 @@ The reporting is composed of four packages: pack-reporting, xivo-full-stats, xiv
These packages will feed the tables of the xivo_stats database: These packages will feed the tables of the xivo_stats database:
- xivo-db-replication feeds the tables cel and queue_log in real time, and the configuration tables (dialaction, linefeatures, etc...) every 5 minutes - xivo-db-replication feeds the tables cel and queue_log in real time, and the configuration tables (dialaction, linefeatures, etc...) every 5 minutes
- xivo-full-stats feeds in real time tha tables call_on_queue, call_data, stat_queue_periodic, stat_agent_periodic and agent_position - xivo-full-stats feeds in real time the tables call_on_queue, call_data, stat_queue_periodic, stat_agent_periodic and agent_position
- xivo-reporting-db and pack-reporting work together to feed the tables stat_queue_specific, stat_agent_queue_specific and stat_agent_specific every 15 minutes - xivo-reporting-db and pack-reporting work together to feed the tables stat_queue_specific, stat_agent_queue_specific and stat_agent_specific every 15 minutes
\ No newline at end of file
...@@ -62,7 +62,7 @@ master_doc = 'index' ...@@ -62,7 +62,7 @@ master_doc = 'index'
# General information about the project. # General information about the project.
project = u'XiVO Solutions' project = u'XiVO Solutions'
copyright = u'2016-2017, Avencall' copyright = u'2016-2019, Avencall'
# The version info for the project you're documenting, acts as replacement for # The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the # |version| and |release|, also used in various other places throughout the
......
...@@ -89,7 +89,7 @@ mobile phone it would usually be `0xxxxxxxxx@default`. ...@@ -89,7 +89,7 @@ mobile phone it would usually be `0xxxxxxxxx@default`.
Usage Usage
----- -----
Tha agent has to login using the custom line, the standard ccagent features are available. However, due to external line The agent has to login using the custom line, the standard ccagent features are available. However, due to external line
some phone control features are not available - the agent can't answer, put on hold or transfer calls from the ccagent some phone control features are not available - the agent can't answer, put on hold or transfer calls from the ccagent
interface. On the XiVO side, please ensure that the call distributed to the agent is canceled if the agent doesn't answer interface. On the XiVO side, please ensure that the call distributed to the agent is canceled if the agent doesn't answer
before the call is answered by for example the voicemail. before the call is answered by for example the voicemail.
This diff is collapsed.
.. _devices:
*******
Devices
*******
In XiVO, there are two kind of devices:
.. toctree::
:maxdepth: 1
official_devices
community_devices
The officially supported devices will be supported across upgrades and phone features are guaranteed
to be supported on the latest version.
The community supported devices are only supported by the community. In other words, maintenance,
bug, corrections and features are developed by members of the XiVO community. XiVO does not
officially endorse support for these devices.
The next topics lists the officially and community supported devices. For each vendor, a table shows
the various features supported by XiVO. Here's an example:
+--------------------------------------------+---------+---------+--------------+
| | Model X | Model Y | Model Z |
+============================================+=========+=========+==============+
| Provisioning | Y | Y | Y |
+--------------------------------------------+---------+---------+--------------+
| H-A | Y | Y | Y |
+--------------------------------------------+---------+---------+--------------+
| Directory XIVO | N | Y | Y |
+--------------------------------------------+---------+---------+--------------+
| Funckeys | 0 | 2 | 8 |
+--------------------------------------------+---------+---------+--------------+
| | **Supported programmable keys** |
+--------------------------------------------+---------+---------+--------------+
| User with supervision function | Y | Y | Y |
+--------------------------------------------+---------+---------+--------------+
The rows have the following meaning:
Provisioning
Is the device supported by the :ref:`auto-provisioning <provisioning>` system ?
H-A
Is the device supported by the :ref:`high availability <high-availability>` system ?
Directory XiVO
Is the device supported by the :ref:`remote directory <remote-directory>` ? In other word, is it
possible to consult the XiVO's remote directory from the device ?
Funckeys
How many function keys can be configured on the device from the XiVO web interface ?
The number of function keys that can be configured on a device is not necessarily the same as
the number of physical function keys the device has. For example, an Aastra 6757i has 12 physical
keys but you can configure 30 function keys because of the page system.
Inside a table, the following legend is used:
* Y = Yes / Supported
* N = No / Not supported
* NT = Not tested
* NYT = Not yet tested
Each table also contains a section about the supported function keys. In that section, the following
legend can also be used:
* FK = Funckey
* SK = SoftKey
* HK = HardKey
* MN = Menu
Function keys work using the extensions in :menuselection:`Services --> Extensions`. It is important
to enable the function keys you want to use. Also, the enable transfer option in the user
configuration services tab must be enabled to use transfer function keys.
.. _devices_releasenotes:
Plugins release notes
=====================
xivo-aastra-3.3.1-SP4-HF9
-------------------------
.. note:: Replaces xivo-aastra-3.3.1-SP4 plugin
:v1.8: Download links for firmwares update for Aastra/Mitel phones.
:v1.7: Firmware update for Aastra/Mitel phones.
Particularly these new firmwares support forwarding of Multiple Spanning Tree Protocol (MSTP) messages from the LAN port to the PC port.
This ensures issues regarding network loops are not created.
xivo-aastra-4.3.0
-----------------
.. note:: Replaces xivo-aastra-4.1.0 plugin
:v1.8: Download links for firmwares update for Aastra/Mitel phones.
:v1.7: Firmware update for Aastra/Mitel phones.
Particularly these new firmwares support forwarding of Multiple Spanning Tree Protocol (MSTP) messages from the LAN port to the PC port.
This ensures issues regarding network loops are not created.
xivo-cisco-spa8000-6.1.11
-------------------------
:v1.1: Fix download of firmware with procedure :ref:`Cisco SPA8000 download firmware <cisco-spa8000-fw-download>`.
xivo-patton-6.10
----------------
:v1.1: Plugin added which provision FXS patton gateways (SN411X and SN43XX)
xivo-patton-SN4120-6.10
-----------------------
:v1.2: Fix plugin installation (install rule for SN4120 firmware was wrong)
:v1.1: Plugin added which provision BRI patton gateway (SN4120)
xivo-polycom-4.0.11
-------------------
.. note:: Replaces xivo-polycom-4.0.9 plugin: *this plugin is required* for Polycom devices with MAC address in the range 64167F (instead of 0004F2)
:v2.2: fix URL for Updater file download
:v2.1: DND feature disabled
:v1.9: integrate XiVOCC required template configuration
xivo-polycom-5.4.3
------------------
:v2.1: DND feature disabled
:v1.8: integrate XiVOCC required template configuration
xivo-snom-8.7.5.35
------------------
:v2.4: Internal changes.
:v2.3: Change provisioning of :ref:`login_pause_funckeys` keys to support Wrapup indication.
:v2.2: Add support to SIP Auto-Answer Header (needed for CTI Transfer in Polaris)
:v2.1: DND feature disabled
:v1.9: update to use the new language pack
:v1.8: correction for provisioning if there is no DST
xivo-snom-8.9.3.80
------------------
.. note:: Replaces xivo-snom-8.9.3.60 plugin
:v2.6: Support for fw 8.9.3.80 and use check-sync NOTIFY event with reboot=false.
:v2.5: Change parameter to fix Switchboard answer
:v2.4: Change provisioning of :ref:`login_pause_funckeys` keys to support Wrapup indication.
:v2.3: Add support for D712 and upgrade firmware for 7XX serie.
:v2.2: Add support to SIP Auto-Answer Header (needed for CTI Transfer in Polaris)
:v2.1: DND feature disabled
:v1.8: correction for provisioning if there is no DST
xivo-yealink-v70
----------------
:v2.1.2: Replace broken firmware link
:v2.1: DND feature disabled
xivo-yealink-v72
----------------
:v2.1: DND feature disabled
xivo-yealink-v73
----------------
:v2.1: DND feature disabled
xivo-yealink-v81
----------------
.. note:: Replaces xivo-yealink-v80 plugin
:v2.5.0: add XiVO logo for T46G/S and T48G/S
:v2.4.3: fix firmware downloading
:v2.4.2: add provisioning of T27G in firmware v81
:v2.4.1: add provisioning of W52P in firmware v81
:v2.3: switch to default Yealink french translation to fix duplicate label for T48X
.. note:: It leads to several small differences in the labels, for example:
* *Attente* is changed to *Mtr Att*
* *Journal* is changed to *Historique*
* *Annuaire* is changed to *Répertoires*
:v2.2: add support to expansion module EXP40 for T46/T48 **S**
:v2.1: new version of Yealink plugin with support for T4XS family and T23G
.. warning::
To install firmware for T4XS family, the 'unrar' executable must be
present on the host system. If it is not, you'll have a runtime error while
trying to install any firmware.
Starting from Five.08 and 2017.08 unrar-free and unar will be installed as
a dependency of xivo-fetchfw package.
Otherwise you need to install them manually :
.. code-block:: bash
apt-get update
apt-get install unrar-free unar
Some older versions of unrar-free fail to decompress the firmware package.
In that case you will need to `enable non-free packages <https://wiki.debian.org/SourcesList#Example_sources.list>`_
in debian and install unrar-nonfree :
.. code-block:: bash
apt-get update
apt-get install unrar
xivo-yealink-v84
----------------
.. note:: Replaces xivo-yealink-v81 plugin for Yealink T4XS models (and others, see plugin info)
:v1.2: fix answering of second call from UC Assistant or CC Agent
:v1.1: first version of the plugin for fw v84
.. note:: What's new from v81 plugin:
* Small differences for some french labels, for example:
* *Mtr Att* is changed to *Attente*
* *Historique* is changed to *Récents*
* *Répertoires* is changed to *Annuaire*
* New *Station name* with first line display name and number
* XiVO logo for T46S and T48S
* Admin default password was changed
This diff is collapsed.
...@@ -7,8 +7,8 @@ Getting Started ...@@ -7,8 +7,8 @@ Getting Started
This section will show you how to create a user with a SIP line. This simple use case covers what a lot of people need to start using a phone. This section will show you how to create a user with a SIP line. This simple use case covers what a lot of people need to start using a phone.
You can use these steps for configuring a phone (e.g a softphone, an Analog-to-Digital switch or a SIP phone). You can use these steps for configuring a phone (e.g a softphone, an Analog-to-Digital switch or a SIP phone).
This tutorial doesn't cover how to automatically provision a :ref:`supported device This tutorial doesn't cover how to automatically provision a `supported device
<official-devices>`. For this, consult the :ref:`provisionning <https://documentation.xivo.solutions/projects/devices/en/latest/devices/official_devices.html>`_. For this, consult the :ref:`provisionning
section. <intro-provisioning>` section. <intro-provisioning>`
We first need to log into the XiVO web interface. The web interface is where you can administer the whole system. We first need to log into the XiVO web interface. The web interface is where you can administer the whole system.
......
...@@ -40,7 +40,7 @@ You may also have a look at our `development blog <http://xivo-solutions-blog.gi ...@@ -40,7 +40,7 @@ You may also have a look at our `development blog <http://xivo-solutions-blog.gi
contact_center/contact_center contact_center/contact_center
Centralized User Management <centralized_user_management/index> Centralized User Management <centralized_user_management/index>
usersguide/index usersguide/index
devices/devices Devices <https://documentation.xivo.solutions/projects/devices/en/latest/>
api_sdk/api_sdk api_sdk/api_sdk
contributing/contributing contributing/contributing
releasenotes/index releasenotes/index
......
...@@ -50,6 +50,36 @@ On *server1*: ...@@ -50,6 +50,36 @@ On *server1*:
* pass the Wizard * pass the Wizard
.. _xds_main_ami_configuration:
AMI configuration
-----------------
.. note:: Once a :ref:`media server is defined <xds_xivo-define_media_server>` in webi, Reporting Server will use
the VoIP interface for AMI connection to all media servers **and XiVO**. Here we authorize it on XIVO.
If XiVO CC is installed, do the following steps before adding media server.
Otherwise you can first define media servers and do these steps right after XiVO CC installation,
but before starting it to prevent problems with fail2ban.
#. Edit **existing** file :file:`/etc/asterisk/manager.d/02-xivocc.conf` to add permission for Reporting Server:
* ``permit`` to authorize the VoIP IP of the Reporting Server. E.g.:
.. code-block:: bash
...
deny=0.0.0.0/0.0.0.0
permit=10.32.5.9/255.255.255.255
permit=10.32.0.9/255.255.255.255
...
#. Apply the configuration::
asterisk -rx 'manager reload'
.. _xds_xivo-define_media_server: .. _xds_xivo-define_media_server:
Define Media Servers Define Media Servers
...@@ -217,6 +247,8 @@ On *server3*: ...@@ -217,6 +247,8 @@ On *server3*:
* install a XiVO CC (see :ref:`ccinstallation`) * install a XiVO CC (see :ref:`ccinstallation`)
* configure it * configure it
* before starting it, change the :ref:`AMI configuration <xds_main_ami_configuration>` on XiVO.
Known Limitations Known Limitations
================= =================
......
...@@ -68,6 +68,8 @@ The installed Debian must: ...@@ -68,6 +68,8 @@ The installed Debian must:
Installation Installation
^^^^^^^^^^^^ ^^^^^^^^^^^^
.. note:: If your server needs a proxy to access Internet, configure the proxy for ``apt``, ``wget`` and ``curl`` as documented in :ref:`system_proxy`.
Once you have your Debian stretch properly installed, download the XiVO installation script and make Once you have your Debian stretch properly installed, download the XiVO installation script and make
it executable:: it executable::
...@@ -76,7 +78,7 @@ it executable:: ...@@ -76,7 +78,7 @@ it executable::
And run it:: And run it::
./xivo_install.sh ./xivo_install.sh -a 2018.16-latest
At the end of the installation, you can continue by running the :ref:`configuration At the end of the installation, you can continue by running the :ref:`configuration
wizard. <configuration_wizard>` wizard. <configuration_wizard>`
......
...@@ -91,6 +91,19 @@ On XiVO PBX ...@@ -91,6 +91,19 @@ On XiVO PBX
* :ref:`https_certificate`: it is required to have ``subjectAltName`` defined in the HTTPS certificate. * :ref:`https_certificate`: it is required to have ``subjectAltName`` defined in the HTTPS certificate.
If you use the default HTTPS certificate, you must regenerate it. See :ref:`regenerating_certificate`. If you use the default HTTPS certificate, you must regenerate it. See :ref:`regenerating_certificate`.
* APT keyring lookup hashtable troubleshooting: this error can appear at the end of the upgrade before starting xivo services::
gpg: lookup_hashtable failed: Unknown system error
gpg: trustdb: searching trust record failed: Unknown system error
gpg: Error: The trustdb is corrupted.
gpg: You may try to re-create the trustdb using the commands:
gpg: cd ~/.gnupg
gpg: gpg --export-ownertrust > otrust.tmp
gpg: rm trustdb.gpg
gpg: gpg --import-ownertrust < otrust.tmp
If this error appears, follow the printed procedure to recreate the lookup hashtable.
On XiVO CC On XiVO CC
---------- ----------
......
...@@ -90,4 +90,6 @@ On MDS ...@@ -90,4 +90,6 @@ On MDS
apt-get purge '^dahdi-linux-modules*' -y apt-get purge '^dahdi-linux-modules*' -y
* Run ``xivo-remove-postgres-94`` after dist-upgrade to remove postgres 9.4.
* Postgresql: check :file:`/var/log/postgresql/postgresql-11-main.log` for specific upgrade steps * Postgresql: check :file:`/var/log/postgresql/postgresql-11-main.log` for specific upgrade steps
...@@ -96,8 +96,6 @@ User And Agent Configuration ...@@ -96,8 +96,6 @@ User And Agent Configuration
- When and agent is disassociated from its user, xuc server has to be restarted. - 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. - 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, Even so when an agent is deleted, xuc server has to be restarted,
- Restarting XUC server with active calls may result in :ref:`wrong agent's state <agent_states_after_xuc_restart>`.
Install from repository Install from repository
======================= =======================
...@@ -108,6 +106,8 @@ The installation and configuration of *XiVO CC* (with its *XiVO PBX* part) is ha ...@@ -108,6 +106,8 @@ The installation and configuration of *XiVO CC* (with its *XiVO PBX* part) is ha
Install process overview Install process overview
------------------------ ------------------------
.. note:: If your server needs a proxy to access Internet, configure the proxy for ``apt``, ``wget`` and ``curl`` as documented in :ref:`system_proxy`.
The install process consists of two parts: The install process consists of two parts:
#. The first part is to manually run the ``xivocc_install.sh`` script to install the dependencies (ntp, docker, docker-compose...) and which will trigger the *XiVO CC* installation. #. The first part is to manually run the ``xivocc_install.sh`` script to install the dependencies (ntp, docker, docker-compose...) and which will trigger the *XiVO CC* installation.
......
...@@ -101,10 +101,8 @@ Check the XiVO PBX ...@@ -101,10 +101,8 @@ Check the XiVO PBX
Check PostgreSQL configuration Check PostgreSQL configuration
------------------------------ ------------------------------
- Postgresql has to be configured to listen on all interfaces.
See `listen_addresses` in file :file:`/etc/postgresql/9.4/main/postgresql.conf`.
- Connection from the XiVO CC for user asterisk must be authorized. - Connection from the XiVO CC for user asterisk must be authorized.
See file :file:`/etc/postgresql/9.1/main/pg_hba.conf` which must contain a line:: See file :file:`/var/lib/postgresql/11/main/pg_hba.conf` which must contain a line::
host asterisk all 192.168.0.2/32 md5 host asterisk all 192.168.0.2/32 md5
- A user `stats` must exists. Use command ``\dg`` in psql. - A user `stats` must exists. Use command ``\dg`` in psql.
......
...@@ -21,7 +21,7 @@ It is *not* activated by default. ...@@ -21,7 +21,7 @@ It is *not* activated by default.
There's a few things to know about the peculiarities of the included DHCP server: There's a few things to know about the peculiarities of the included DHCP server:
* it only answers to DHCP requests from :ref:`supported devices <devices>`. * it only answers to DHCP requests from `supported devices <https://documentation.xivo.solutions/projects/devices/en/latest/>`_.
* it only answers to DHCP requests coming from the VoIP subnet (see :ref:`network configuration <network_configuration>`). * it only answers to DHCP requests coming from the VoIP subnet (see :ref:`network configuration <network_configuration>`).
This means that if your phones are on the same broadcast domain than your computers, This means that if your phones are on the same broadcast domain than your computers,
...@@ -120,10 +120,10 @@ officially supported devices. ...@@ -120,10 +120,10 @@ officially supported devices.
This can be changed in the :menuselection:`Configuration --> Provisioning --> General` This can be changed in the :menuselection:`Configuration --> Provisioning --> General`
page, by setting the :guilabel:`URL` field to one of the following value: page, by setting the :guilabel:`URL` field to one of the following value:
* ``http://provd.xivo.solutions/plugins/1/stable/`` -- :ref:`officially supported devices <official-devices>` "stable" repository (*default*) * ``http://provd.xivo.solutions/plugins/1/stable/`` -- `officially supported devices <https://documentation.xivo.solutions/projects/devices/en/latest/>`_ "stable" repository (*default*)
* ``http://provd.xivo.solutions/plugins/1/testing/`` -- officially supported devices "testing" repository * ``http://provd.xivo.solutions/plugins/1/testing/`` -- officially supported devices "testing" repository
* ``http://provd.xivo.solutions/plugins/1/archive/`` -- officially supported devices "archive" repository * ``http://provd.xivo.solutions/plugins/1/archive/`` -- officially supported devices "archive" repository
* ``http://provd.xivo.solutions/plugins/1/addons/stable/`` -- :ref:`community supported devices <compatible-devices>` "stable" repository * ``http://provd.xivo.solutions/plugins/1/addons/stable/`` -- `community supported devices <https://documentation.xivo.solutions/projects/devices/en/latest/devices/community_devices.html>`_ "stable" repository
* ``http://provd.xivo.solutions/plugins/1/addons/testing/`` -- community supported devices "testing" repository * ``http://provd.xivo.solutions/plugins/1/addons/testing/`` -- community supported devices "testing" repository
The difference between the stable and testing repositories is that the latter might contain plugins The difference between the stable and testing repositories is that the latter might contain plugins
......
...@@ -7,7 +7,7 @@ Remote directory ...@@ -7,7 +7,7 @@ Remote directory
If you have a phone provisioned with XiVO and its one of the supported ones, you'll be able to search in your XiVO directory and place call directly If you have a phone provisioned with XiVO and its one of the supported ones, you'll be able to search in your XiVO directory and place call directly
from your phone. from your phone.
See the list of :ref:`supported devices <official-devices>` to know if a model supports the XiVO directory or not. See the list of `supported devices <https://documentation.xivo.solutions/projects/devices/en/latest/devices/official_devices.html>`_ to know if a model supports the XiVO directory or not.
Configuration Configuration
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
Provisioning Provisioning
************ ************
XiVO supports the auto-provisioning of a large number of telephony :ref:`devices`, XiVO supports the auto-provisioning of a large number of telephony `devices <https://documentation.xivo.solutions/projects/devices/en/latest/>`_,
including SIP phones, SIP ATAs, and even softphones. including SIP phones, SIP ATAs, and even softphones.
.. toctree:: .. toctree::
......
...@@ -23,7 +23,7 @@ At this point you should have a fully functional DHCP server that provides IP ad ...@@ -23,7 +23,7 @@ At this point you should have a fully functional DHCP server that provides IP ad
phones. Depending on what type of CISCO phone you have, you need to install the plugin sccp-legacy, phones. Depending on what type of CISCO phone you have, you need to install the plugin sccp-legacy,
sccp-9.4 or both. sccp-9.4 or both.
.. note:: Please refer to the :ref:`Provisioning page <cisco-provisioning>` for more information on .. note:: Please refer to the `Provisioning page <https://documentation.xivo.solutions/projects/devices/en/latest/devices/official_devices.html#cisco-7900-series>`_ for more information on
how to install CISCO firmwares. how to install CISCO firmwares.
Once your plugin is installed, you'll be able to edit which firmwares and locales you need. Once your plugin is installed, you'll be able to edit which firmwares and locales you need.
......
...@@ -35,23 +35,11 @@ The supported phones for the switchboard are: ...@@ -35,23 +35,11 @@ The supported phones for the switchboard are:
+------------+----------+--------------+--------------------------------+ +------------+----------+--------------+--------------------------------+
| Brand | Model | XiVO version | Plugin version | | Brand | Model | XiVO version | Plugin version |
+============+==========+==============+================================+ +============+==========+==============+================================+
| Aastra | 6755i | >= 14.07 | >= xivo-aastra-3.3.1-SP2, v1.0 |
+------------+----------+--------------+--------------------------------+
| Aastra | 6757i | >= 14.07 | >= xivo-aastra-3.3.1-SP2, v1.0 |
+------------+----------+--------------+--------------------------------+
| Aastra | 6735i | >= 14.07 | >= xivo-aastra-3.3.1-SP2, v1.2 |
+------------+----------+--------------+--------------------------------+
| Aastra | 6737i | >= 14.07 | >= xivo-aastra-3.3.1-SP2, v1.2 |
+------------+----------+--------------+--------------------------------+
| Polycom | VVX 400 | >= 15.11 | >= xivo-polycom-5.3.0, v1.3 |
+------------+----------+--------------+--------------------------------+
| Polycom | VVX 410 | >= 15.11 | >= xivo-polycom-5.3.0, v1.3 |
+------------+----------+--------------+--------------------------------+
| Snom | 720 | >= 14.14 | >= xivo-snom-8.7.3.25.5, v1.0 | | Snom | 720 | >= 14.14 | >= xivo-snom-8.7.3.25.5, v1.0 |
+------------+----------+--------------+--------------------------------+ +------------+----------+--------------+--------------------------------+
| Snom | D725 | >= 14.14 | >= xivo-snom-8.7.5.17, v1.4 | | Snom | D725 | >= 14.14 | >= xivo-snom-8.7.5.17, v1.4 |
+------------+----------+--------------+--------------------------------+ +------------+----------+--------------+--------------------------------+
| Yealink | T46G | >= 15.01 | >= xivo-yealink-72.0, v1.22.1 | | Yealink | T54W | >= 2019.05 | >= xivo-yealink-v84, v1.4.0 |
+------------+----------+--------------+--------------------------------+ +------------+----------+--------------+--------------------------------+
......
...@@ -89,7 +89,7 @@ Behavior Changes ...@@ -89,7 +89,7 @@ Behavior Changes
* Version was upgraded to version 16: note that diaplan application ``Macro`` no longer works and needs to be updated to use ``GoSub`` dialplan application. * Version was upgraded to version 16: note that diaplan application ``Macro`` no longer works and needs to be updated to use ``GoSub`` dialplan application.
* Language now defaults to fr_FR. To change it to english, one should: * Language now defaults to fr_FR. To change it to english, one should:
* verify that the packages `asterisk-sounds-wav-en-us`, `xivo-sounds-en-us` are installed * verify that the packages `asterisk-sounds-wav-en-us`, `xivo-sounds-en-us` are installed
* and set, in file :file:`/etc/asterisk/asterisk.conf` the *defaultlanguage* parameter to `en_US` * and set, in file :file:`/etc/asterisk/asterisk.conf` the *defaultlanguage* parameter to `en_US`
...@@ -133,7 +133,7 @@ Table listing the current version of the components. ...@@ -133,7 +133,7 @@ Table listing the current version of the components.
+----------------------+----------------+ +----------------------+----------------+
| db | 2019.05.09 | | db | 2019.05.09 |
+----------------------+----------------+ +----------------------+----------------+
| outcall | 2019.05.08 | | outcall | 2019.05.10 |
+----------------------+----------------+ +----------------------+----------------+
| db_replic | 2019.05.00 | | db_replic | 2019.05.00 |
+----------------------+----------------+ +----------------------+----------------+
...@@ -157,11 +157,68 @@ Table listing the current version of the components. ...@@ -157,11 +157,68 @@ Table listing the current version of the components.
+----------------------+----------------+ +----------------------+----------------+
| xivo-full-stats | 2019.05.00 | | xivo-full-stats | 2019.05.00 |
+----------------------+----------------+ +----------------------+----------------+
| xuc | 2019.05.06 | | xuc | 2019.05.12 |
+----------------------+----------------+ +----------------------+----------------+
| xucmgt | 2019.05.08 | | xucmgt | 2019.05.12 |
+----------------------+----------------+ +----------------------+----------------+
Callisto.12
-----------
Consult the `Callisto.12 Roadmap <https://projects.xivo.solutions/versions/164>`_.
Components updated: **xucmgt**, **xucserver**
**XUC Server**
* `#2843 <https://projects.xivo.solutions/issues/2843>`_ - Cannot change pause reason when already on pause
Callisto.11
-----------
**CCAgent**
* `#2819 <https://projects.xivo.solutions/issues/2819>`_ - Chrome / Chromium crashes when agent misses a call and focus and browser has its focus on another tab
Callisto.10
-----------
Consult the `Callisto.10 Roadmap <https://projects.xivo.solutions/versions/152>`_.
Components updated: **xivo-config**, **xivo-manage-db**, **xivo-outcall**, **xivo-upgrade**, **xivocc-installer**, **xucmgt**
**CCAgent**
* `#2687 <https://projects.xivo.solutions/issues/2687>`_ - [C] - Cannot scroll to the end of content panel when receiving a call
* `#2758 <https://projects.xivo.solutions/issues/2758>`_ - Webrtc agent is still ringing after logged out on CC agent on login page callisto
**Desktop Assistant**
* `#2648 <https://projects.xivo.solutions/issues/2648>`_ - Autolog user using token
**WebRTC**
* `#2482 <https://projects.xivo.solutions/issues/2482>`_ - Double ringbacktone on api dial for WEB RTC
**XiVO PBX**
* `#2358 <https://projects.xivo.solutions/issues/2358>`_ - Doc - Enhance installation and upgrade behind a proxy
* `#2587 <https://projects.xivo.solutions/issues/2587>`_ - Logrotate configuration for /var/log/postgresql/ should be created on fresh install and upgrade
.. important:: **On media servers upgraded from Borealis** to Callisto.00, 01 or 02, ``xivo-remove-postgres-94`` must be **re-run**
after dist-upgrade to remove postgresql-common.
* `#2618 <https://projects.xivo.solutions/issues/2618>`_ - XDS - DB on MDS can't be connected through unix socket after upgrade from Borealis
* `#2686 <https://projects.xivo.solutions/issues/2686>`_ - Hostname change is not taken into account
* `#2721 <https://projects.xivo.solutions/issues/2721>`_ - CallerID doesn't work with an external PBX
* `#2728 <https://projects.xivo.solutions/issues/2728>`_ - Download of Docker GPG key does not work behind a proxy
* `#2766 <https://projects.xivo.solutions/issues/2766>`_ - xivo-webi cannot display routes if your are on Edge or Chrome < v69
**XiVOCC Infra**
* `#2291 <https://projects.xivo.solutions/issues/2291>`_ - XiVO UC Installer does not set correct pgxivocc address in xivo/custom.env for db_replic
* `#2589 <https://projects.xivo.solutions/issues/2589>`_ - XiVO CC installation breaks the main XiVO PBX install if FQDN entered as xuc host
Callisto.09 Callisto.09
----------- -----------
...@@ -212,7 +269,7 @@ Components updated: **asterisk**, **config-mgt**, **dahdi-linux**, **xivo-backup ...@@ -212,7 +269,7 @@ Components updated: **asterisk**, **config-mgt**, **dahdi-linux**, **xivo-backup
.. important:: When upgrading, it will install new ``dahdi-linux-dkms`` package with necessary dependencies. The removal of the old ``dahdi-linux-modules-*`` .. important:: When upgrading, it will install new ``dahdi-linux-dkms`` package with necessary dependencies. The removal of the old ``dahdi-linux-modules-*``
packages is handled during the upgrade on XiVO. packages is handled during the upgrade on XiVO.
However this removal is not handled automatically during upgrade on MDS. Therefore, *on a MDS*, you MUST remove However this removal is not handled automatically during upgrade on MDS. Therefore, *on a MDS*, you MUST remove
them manually after the upgrade by running the command:: them manually after the upgrade by running the command::
...@@ -318,7 +375,7 @@ Components updated: **xivo-config**, **xivo-db**, **xivo-manage-db**, **xivo-sys ...@@ -318,7 +375,7 @@ Components updated: **xivo-config**, **xivo-db**, **xivo-manage-db**, **xivo-sys
**Web Assistant** **Web Assistant**
* `#2416 <https://projects.xivo.solutions/issues/2416>`_ - write flashtext to other connected users * `#2416 <https://projects.xivo.solutions/issues/2416>`_ - write flashtext to other connected users
* `#2509 <https://projects.xivo.solutions/issues/2509>`_ - Display notification badge on callControl menu of UC Assistant and on Electron tray * `#2509 <https://projects.xivo.solutions/issues/2509>`_ - Display notification badge on callControl menu of UC Assistant and on Electron tray
* `#2511 <https://projects.xivo.solutions/issues/2511>`_ - Display multiple flashtext on callContol page * `#2511 <https://projects.xivo.solutions/issues/2511>`_ - Display multiple flashtext on callContol page
* `#2560 <https://projects.xivo.solutions/issues/2560>`_ - Make links clickable in flashtext * `#2560 <https://projects.xivo.solutions/issues/2560>`_ - Make links clickable in flashtext
...@@ -444,7 +501,7 @@ Components updated: **config-mgt**, **recording-server**, **xivo-agid**, **xivo- ...@@ -444,7 +501,7 @@ Components updated: **config-mgt**, **recording-server**, **xivo-agid**, **xivo-
**Reporting** **Reporting**
* `#2048 <https://projects.xivo.solutions/issues/2048>`_ - XDS - UC history should work * `#2048 <https://projects.xivo.solutions/issues/2048>`_ - XDS - UC history should work
* `#2424 <https://projects.xivo.solutions/issues/2424>`_ - Add scriplet to spagobi * `#2424 <https://projects.xivo.solutions/issues/2424>`_ - Add scriplet to spagobi
**Web Assistant** **Web Assistant**
......
...@@ -193,7 +193,8 @@ The *UC Assistant* can integrate with the phone to : ...@@ -193,7 +193,8 @@ The *UC Assistant* can integrate with the phone to :
\*) See :ref:`Known limitations <phone_integration_limitations>` \*) See :ref:`Known limitations <phone_integration_limitations>`
As these features are closely linked to the phone to work, you must check :ref:`phone_integration_support` and follow the :ref:`phone_integration_installation` page. As these features are closely linked to the phone to work, you must check `supported phones for UC Assistant <https://documentation.xivo.solutions/projects/xivo-nextlts/en/latest/devices/official_devices.html#phone-integration-support>`_
and follow the :ref:`phone_integration_installation` page.
Once, you're phone is properly configured and you are connected as a user, you know that your using SIP phone once you see the following logo in the header bar : Once, you're phone is properly configured and you are connected as a user, you know that your using SIP phone once you see the following logo in the header bar :
......