Recording configuration

This page describes how to configure the recording feature.

Configure recording

To configure recording there are two steps to follow on XiVO PBX:

  1. Add link towards Recording Server,
  2. and then enable recording, which can be done either:
  • in the Queue configuration
  • or via subroutines

2. Enable recording

Enable recording in the Queue configuration


Steps to be done on XiVO PBX

To enable recording on a queue, go to Services -> Contact Center -> Queues and edit the queue.


Then, in the recording section:

  • Recording mode set it to Recorded or Recorded on demand
    • Recorded: call will be recorded
    • Recorded on demand: recording starts in paused state and can be activated by the agent (see agent recording configuration)
  • Activate check it for the recording mode to be active
    • You need to check the Activate parameter for the recording to be enabled. When Activate is checked, the recording will be enabled according to the mode selected.

Enable recording via subroutines


Steps to be done on XiVO PBX

To enable the recording you have to configure one of the shipped subroutines.

The package xivocc-recording (see recording installation section) ships the following dialplan subroutines :

Subroutine Description
xivocc-incall-recording Records incoming calls
xivocc-incall-recording-paused Records incoming calls, but record starts in paused state and can be activated by the agent (see agent recording configuration)
xivocc-outcall-recording Records outgoing calls
xivocc-outcall-recording-paused Records outgoing calls, but record starts in paused state and can be activated by the agent (see agent recording configuration)

These subroutines are to be configured on the following XiVO PBX objects (either globally or per-object):


They MUST be configured only on the following objects. Other configuration are not supported.

  • Incalls,
  • and/or Users,
  • and/or Outcall


Here is an example if you want to enable recording for:

  • All outbound calls but started in pause state,
  • And only on incoming call 0123456789

Then you would have to:

  1. Create a custom_global_subr.conf file in the /etc/asterisk/extensions_extra.d directory

  2. If not already defined elsewhere define the global subroutine:

    exten = s,1,NoOp(=== Recording outbound calls in pause ===)
    same = n,Gosub(xivocc-outcall-recording-paused,s,1)
    same = n,Return()
  3. Enable the call recording for incall 0123456789 by editing it via the XiVO PBX web interface and set the field Pre-process subroutine to xivocc-incall-recording

Stop recording upon external transfer

By default recording is stopped when both parties of the call are external.

This can be deactivated by adding STOP_RECORDING_UPON_EXTERNAL_XFER environment variable to the xuc section of your docker-xivocc.yml file:

  image: ...

  - ...

and STOP_RECORDING_UPON_EXTERNAL_XFER=false value to your custom.env.


and then relaunch the xivocc services with xivocc-dcomp up -d command.

Recording filtering configuration


Steps to be done on XiVO CC

After having followed above paragraphs, you can also configure the recording filtering.

  1. Add a user with Administrateur rights for Recording Server:
    1. Connect to the Config Management interface : http://<XIVO_CC_IP>:9100 (login avencall/superpass),
    2. Add one of the XiVO PBX user giving him Administrateur rights,
  2. Configure excluded numbers on Recording Server
    1. Then, connect with this user to the Recording Server interface : http://<XIVO_CC_IP>:9400
    2. Navigate to the page Contrôle d'enregistrement and add the numbers to be excluded from the recording.

In list Destinataire de l’appel (Numéro entrant, File d’attente, Utilisateur) declare the:

  • XiVO Incalls numbers,
  • XiVO Queues numbers,
  • or XiVO Users numbers

to be excluded from the recording on incoming or internal call. These numbers will be checked by the xivocc-incall-recording subroutines.


numbers must be entered as they first appear in dialplan (check is made against XIVO_DSTNUM dialplan variable).

In list Emetteur ou destinataire d’un appel sortant (Utilisateur ou numéro appelé externe) declare the:

  • XiVO Users internal numbers

to be excluded from recording on outgoing calls. These numbers will be checked by the xivocc-outcall-recording subroutines.


check is made against XIVO_SRCNUM dialplan variable.