Howto:Simple Linear ACD with Voicemail XML Script

From innovaphone-wiki

Jump to: navigation, search

This article describes how to setup a simple automated call distribution by using custom voicemail XML script.


Applies To

This information applies to

  • innovaphone PBX, V7 hotfix 1

More Information

In most cases it is possible to distribute incoming calls on innovaphone PBX as desired by using PBX features like a broadcast call, waiting queue and user groups. But some scenarios require more complex call routing between user objects. For this purpose a custom XML voicemail script can be used to implement a desired call distribution scenario.

This script is based on an example for a simple call flow:

  • route incoming call to agents one by one
  • try next agent if
    • agent is away(CFU is enabled) or not registered
    • agent is busy
    • agent is not responding after 15 sec.
  • at the end, when all agents have been tried
    • route call to VM if no busy agents
    • disconnect with cause code "busy", if busy agents available

The call distribution is intentional designed so that the first free agent gets the most calls.

Image:Call Distribution Diagramm.png

To make the script somewhat generic the numbers of agents and mailbox number are stored in separate files:


Please note, that this script is exemplary and free and can be modified to fulfill your special requirements.


The outline for the following configuration scenario shall be as follows:

  • Create a new folder on the compact flash card e.g. "acd".
  • Place a files provided in the download section in this folder.
  • Additionally place the text files with numbers of agents and voicemail box in this folder.
  • Create a new voicemail object in the PBX with URL$_pbxfwd=true.
  • In case an innovaphone voicemail is used instead of an external voicemail box:
    • Create a dummy user with a CFU to <VM-Number>+<Box-Number>

Known Problems

  • Don't forget to provide additional option to the script URL, since it is required for the executing of call forwards: ?$_pbxfwd=true
  • Make sure there are no administrative CFUs (using boolean, "only not for" etc.) configured on the PBX users/agents.
  • Make sure the CFNR Timeout is longer than timeout defined in the ACD XML Script. CFNR defined on User Objects with no registered device are executed immediately.
  • If "No Answer" on Trunk Object is configured, configure a CFNR on the ACD VoiceMail Object with "-" (minus sign) as number (see Reference7:Administration/PBX/Objects/Edit CFs for more information).


Related Articles

How to Configure the innovaphone Voicemail

Personal tools