OpenACD Setup for sipXecs 4.6

This set of instructions are for sipXecs 4.6 or newer. For older versions of sipXecs see OpenACD Setup. For an overview see OpenACD.

openACD in sipXecs 4.6 update 7 is being depreciated.  Support for queueing functionality will be through the new Call Queueing feature. This feature is built on top of FreeSwitch's mod_callcenter.

Environment Notes

For simplicity I've not configured domain name resolution of sip addresses (i.e. DNS does not have SRV records) so in my example i use either hostname or FQDN, never the domain name.

Enabling OpenACD role

For enabling OpenACD Call Center role navigate to System > Servers page and choose the location you want Call Center to run on. On the Server Role tab enable Call Center option - the service will be listed under Services tab in Running status.

After enabling Call Center role one can access OpenACD configuration pages by navigating to Features > Call Center.

Clients Configuration

For configuring a new Call Center client go to Clients tab and access Add new Client link. You have to provide a name and a identity.
Demo Client is already configured at startup and cannot be edited or removed.

Lines Configuration

For configuring a new Call Center line go to Lines tab and access Add Line link. You will be asked to configure the line by providing a name, line extension, queue, client and additional options. It is strongly recommended not to use default client and default queue to configure a line. You also have to specify the welcome message to be played when line is called. Advanced users familiar with Freeswitch project could manage lines by adding / removing actions.

Queues and Queue Groups Configuration

Managing Call Center Queue Groups can be done from Call Center > Queue Groups tab and access Add new Queue Group link. Default queue group is already configured at startup and cannot be edited or removed. You have to provide a name, sort and select the desired skills (multiple selections are allowed).

For configuring a new Call Center queue go to Queues tab and access Add new Queue link. default_queue is already configured at startup and cannot be edited or removed. You will/be asked to configure the queue by providing a name, queue group, weight and select the desired skills (multiple selections are allowed).

Agent and Agent Groups Configuration

Managing Call Center Agent Groups can be done from Call Center > Agent Groups tab. Default group is already configured at startup and cannot be edited or removed.

To add agents into a agent group go to Agents tab and access Add new Agents link. You should select an agent group, a type of security (agent, supervisor or admin) and select the desired skills for all the agents that will be added into agent group (multiple selections are allowed). An agent cannot be assigned to multiple agent groups.

Then select users to be assigned as agents in Call Center. Go to the Add Users link and select the desired users.

Passwords for Call Center agents are randomly generated (Administrators should let the agents know that they have to change the default password). An user with admin rights can change this password by editing the agent:

An user configured as Call Center agent can change the default password from User portal > My Information > Call Center tab:

Commands Configuration

Sipxecs / OpenACD integration address also commands configuration, that is the ability to define short codes for agents to login, logout, go, available or release by dialing from their phone. A prerequisite for this feature is to enable the Agent Dial Plan Listener feature.
Navigate to Call Center > Settings tab or by click on Call Center service name in Server > Services tab and check Dialplan Listener.

For adding a new command navigate to Call Center > Commands tab - all short codes configured will be list in the table

You can add commands by accessing Add Command link or you can edit an existing one by clicking its name:

NOTE: In next releases the usual commands like login, logout, go avaialable and go released will be preconfigured (and user will have the ability to choose a predefined command to create), however for this release they should be manually configured as follows:

Login:

edit erlang_sendmsg action and specify data as:

agent_dialplan_listener openacd@toor.mydomain.org agent_login ${sip_from_user} pstn ${sip_from_uri}

Available:

edit erlang_sendmsg action and specify data as:

agent_dialplan_listener openacd@toor.mydomain.org agent_available ${sip_from_user}

Logout:
edit erlang_sendmsg action and specify data as:

agent_dialplan_listener openacd@toor.mydomain.org agent_logoff ${sip_from_user}

Release:

edit erlang_sendmsg action and specify data as:

agent_dialplan_listener openacd@toor.mydomain.org agent_release ${sip_from_user}

Please make sure that openacd@toor.mydomain.org is replaced with openacd@your_FQDN

For an agent you cannot use phone commands and OpenACD client interface at the same time.

CallCenter Settings

In sipXecs 4.6 there is no need to explicitly configure OpenACD advanced settings (as previously required in 4.4). Settings like contacting FreeSWITCH when calling agents or using a dialplan listener are enabled by default (and applied to OpenACD when Call Center role is added). C_Node and Dial String are already filled with data collected from system.

OpenACD settings page can be accessed by navigating to Features > Call Center > Settings tab or by clicking on Call Center service name in Server > Services tab.

Settings displayed in this page are considered to be advanced configuration (that are not often changed). sipXecs creates the default configuration without requiring any action from administrators. If you really need to change these settings please be aware that any misconfiguration could break Call Center.

There are two modules that can be configured at this moment: FreeSWITCH Media Manager and Agent dial plan listener.

  • FreeSWITCH Media Manager: these settings are used by OpenACD to contact FreeSWITCH when calling agents registered on sipXecs. Change the default values only if you really know what you're doing.
    As Default this command

    {ignore_early_media=true\}sofia/Host.Domain.com/$1

    will be in the FreeSWITCH Media Manager. When the above command is used, the call will route to VM and not to the next available agent when agent disconnect or don't answer the call.
    If the call should be routed to other agent instead of going to VM, then you want to add the line

    ;sipx-noroute=VoiceMail;sipx-userforward=false

    after the

    {ignore_early_media=true}sofia/Host.Domain.com/$1

    .So command should be

    {ignore_early_media=true}sofia/Host.Domain.com/$1;sipx-noroute=VoiceMail;sipx-userforward=false

Note:
FreeSWITCH Media Manager command will be updated in future release.

  • Agent dial plan listener: if this option is enabled then codes defined in agent dial codes page become available for agents. Such codes can be used by an agent to login / logout, go available / go released directly from cell phone.

Logging Levels

Logging levels for OpenACD logs (/usr/local/sipx/var/log/sipxpbx/openacd/console.log and full.log) can be changed by navigating to System > Logging Levels and by selecting the desired value in Advanced Section > Call Center drop down (default level is NOTICE)

Backup and Restore

Starting with sipXecs version 4.6, OpenACD configuration database is included in backup archives and automatically restored.

sipXecs snapshot

Starting with sipXecs version 4.6, OpenACD logs (/usr/local/sipx/var/log/sipxpbx/openacd) and runtime configuration (/opt/OpenACD/etc and /opt/OpenACD/run) are included in sipXecs snapshot