OpenACD Setup

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

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.

Install OpenACD

yum install sipxopenacd
service mongod start
service sipxecs restart

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. A table listing locations where OpenACD is installed is shown on the main page:

OpenACD to FreeSWITCH SIP communication

You need to configure OpenACD to be able to contact FreeSWITCH when calling agents registered on sipXecs. Navigate to System > Servers > Services > Call Center service.

FreeSWITCH Enabled: Must be checked

C Node: freeswitch@toor
Dial String: {ignore_early_media=true}sofia/toor.mydomain.org/$1
where you replace:

toor.mydomain.org with your FQDN
toor with your host name.

NOTE Make sure your FQDN that you enter as dial string matches your domain name (sipXconfig UI > System > Domain > Domain name). If it doesn't you will get an DESTINATION_OUT_OF_ORDER from Freeswitch.

NOTE For sipXecs 4.2 and 4.4 versions you have to enable FreeSWITCH module using openACD interface.

Log into http://your-server-name:9999/ with default user name adminstrator and password Password123.

Go to Modules tab, select freeswitch_media_manager node

FreeSWITCH Enabled: Must be checked

C Node: freeswitch@toor
Dial String: {ignore_early_media=true}sofia/toor.mydomain.org/$1
where you replace:

toor.mydomain.org with your FQDN
toor with your host name.

NOTE Make sure your FQDN that you enter as dial string matches your domain name (sipXconfig UI > System > Domain > Domain name). If it doesn't you will get an DESTINATION_OUT_OF_ORDER from Freeswitch.

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).

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.

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. 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.

NOTE Please check the values for erlang_sendmsg and erlang actions and specify your OpenACD configured node name (by default sipXconfig suggest testme as a value for OpenACD node)

After adding / editing a line you will be warned that Freeswitch configuration should be reloaded so the changes to take effect (by a message saying One or more services need to be reloaded. For details click: here)

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.

An agent cannot be assigned to multiple agent groups.

Upon creation, all Call Center agents are assigned a random password (used to log in OpenACD UI). An user with admin rights can change this password by clicking the name of the agent:

If you want to move agents from an agent group to another you have to select targeted agents and choose the new destination group from "More Actions > Move to:" combobox:

NOTE Please mind that in 4.4 version agent gets created with no skills assigned. In order to assign skills should access openACD UI.

User Portal - password change

 An user configured as Call Center agent can also change his password from 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 System > Servers > Services > Call Center service and check Dialplan Listener.

NOTE For sipXecs 4.4 version you have to enable Dialplan Listener using openACD interface.

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 testme@fedorabox agent_login ${sip_from_user} pstn ${sip_from_uri}

Available:

edit erlang_sendmsg action and specify data as:

agent_dialplan_listener testme@fedorabox agent_available ${sip_from_user}

Logout:
edit erlang_sendmsg action and specify data as:

agent_dialplan_listener testme@fedorabox agent_logoff ${sip_from_user}

Release:

edit erlang_sendmsg action and specify data as:

agent_dialplan_listener testme@fedorabox agent_release ${sip_from_user}

Please make sure that testme@fedorabox is replaced with your node name and sip domain

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

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

Still to come

As previously mentioned the aim of Call Center integration is to give the option of managing all OpenACD features from sipXconfig web UI.