Easy Call Website

Motivation

A long time ago we decided to unity all of our PBX solutions of many of our call centers or offices. The idea was simple, develop a new PBX solution which allow local IT administrator performs simple configuration independently. It means that these local administrators should be able to do simple tasks as adding new routes, creates new extensions, add operators to queue… without help of any VOIP/PBX specialist.

Another requirement was that this PBX solution should aim on “outgoing like PBX” with strong help of dialer automat. Based on these motivations the first version of Easy Call PBX has been introduced.

If we say before that that PBX should be easy to configured, it doesn’t mean that the PBX itself will be simple. Easy Call PBX also provide advance feature like: REST API for connection with company CRM system,  HLM socket for online monitoring/managing or the dialer module itself and others. 

Easy Call Overview

Dashboard

The dashboard page is the first page after login. Its provides general system information and two graphs covers average system load and calls per trunk over time.

Operators module

  • Agents page describes operators as peoples (=Agents), it means that the agent page provides operators name, nickname and others optional and fully changeable personal information like address, division, office numbers etc. These personal information are not strictly given, can be freely changed with option to automatically upload them from central database. Another feature is relationship agent with extensions. On this page you can assign one (or many) extension numbers to single agent.
  • Extensions page contains SIP extension number and its configuration, i.e. configuration like codecs (including g729), dialplan settings, recording options, many different timeouts, CID number or advance setting for WebRTC extensions and others. It is possible to use SSL client certificate instead user name and password, in case the SIP communication or audio stream is also encrypted.

Queues module

  • Settings, a common queue setting can be found on this page like Ringing Strategy, Music on Hold, Announcements, some timing options, fail over destination and many, many others. I would like to mention one feature here which is “dialer queue”. It is a queue which can be assign only to dialer as a destination. Such a feature do not allow mix normal and dialer calls together which is better for cleaner diaplan setup, i.e. better dialer performance and cleaner statistics data.
  • Queue rules, This page is adding Asterisk queue rules options and parameters like minimum/maximum queue member penalty.

Routes module

  • Inbound/Outbound/Clients Routes Routes are designed as drag and drop list. Where the first line represents the first route in dialplan to check. If not pass then the second line is checked and so on. We believe that such design is very intuitive for administrators. Common dialplan logic is based on two telephone numbers, callers ID (CID) and destination ID (DID), i.e. who is calling and to where is calling. Easy Call is adding another ID which is Client ID. This ID can be used during click 2 call (calls from CRM) for specific client. It means, that you can assign some telephone number for your clients and then Easy Call use this tel. number for all calls. This feature is one of many features which provides better connection between PBX and the external CRM system.
  • Call Routing Check Provides a tool to check all routes with options to export to CSV file. It is handy tool because it provides fast and simple check if dialplan is working well. You can select CID, DID and type of call, let say incoming call, and then you can find a destination for this call. This simulation tool is perfect tool for local admin (or manager) to find dialplan path for some let say old (maybe lost or forgotten) DID. The CSV file contains list of all dialplan paths on the PBX. We are using it during regular Easy Call updates to ensure that failed update never damage the dialplan. We export it before and after udpate and then compare results, it must be same. Based on our experience we know that without such tool is very difficult to find a mistake in longer dialplans, dialplan in moderns CC can be really big.

Trunks module

  • Account and Peer Trunks, these two pages contain configuration section for SIP trunks. Accounted trunks are used for authentication with user name and password and peer trunks are used for auth. based on IP. 
  • Pool-trunk groups, Easy Call PBX allow groups different trunks to one entity, which we called as Pool-trunk group. Pool means a pool of CIDs for selected trunks here. This feature can be used for example for GSM gateways (GW), where each GW has usually 32 channels capacity and such capacity can be low for dialer campaign. Dialer campaign require usually hundreds of channels. With this tool we can easily group several GWs together to one logical trunk and as results create a trunk with much bigger capacity.

Clients Profiles module

  • These two pages contains configuration for creating a pool of CID and Client ID. For example, you can assign some tel. number (CID) to some of your clients. It can be just one CID or even many (i.e. pool) of CIDs. If you do it then many statistics data (like CDR) also contains client name. That is handy in case that one client has many (let say hundreds) of randoms CIDs – this is pretty common on dialer campaign. Client ID can be also used for calls routing which belong to specific client, in manual calls or even dialer calls.

Time settings module

  • Contains setting for time groups and time conditions. Both can be used in call routing which is based on time or date. Most typical use is for working time or holidays. In case of working time calls are forwarded to some queue, otherwise to IVR or playback with information about working hours.

Records module

  • Playbacks is used for playing custom audio file as destination in others modules.
  • Music on Hold (MoH) module creates a custom MoH for queues.   
  • Operator to Voice Mail, It is  an advance feature which allow to deals with voice mail on caller side. This feature can be useful on dialer calls. If dialer hits too many calls which are connected to voice mail then operator can play prerecorded audio message and hangup the call. The advantage is the fact that operator can not waste his time with repeating the same message again and again, but just hit a button and the call is finished for him. EasyCall continue play the message and after the message finish then hangup the call finally. At this time operator can talk with another person.

Advanced module

  • Forwarding-destinations module allow forward a call to different destination.
  • Custom Destinations, allows to use an Asterisk dialplan programing code in EasyCall. We are allowing only selected Asterisk app or commands which can be used due to security reason.
  • Emergency mode can be used for disabling PBX during some unstable phase. Let say that local laws permit only one call per one customer per day. The logic which manage it works well UNTIL some network problem appears. If it happen then EasyCall enable the emergency mode which disable the calling. 
  • IVR module for creating multi layers IVR menu. IVR configuration allows an option to setup a default destination (when a caller click to  not specified digit) or define a number of allowed cycles/timeout. IVR menu can be even used for dialer calls and create some very interesting calling scenario.
  • Blacklist, this module provides an option to block selected tel. numbers. Informing calls are auto hanged, calling data are removed from all statics data, except one table with blacklist calls.

Setting module

  • These last pages contains several advanced or global setting options for the Easy Call PBX itself, as transport setting or HLM socket and others. As an example we can mention a unity format of tel. number across whole PBX. As everyone know, the same tel. number can be written in several different format, i.e. a symbol + can be replace with 00. Or prefixes for local countries/regions are not mandatory inside a region, but they mandatory for calls outside a local region. The Easy Call PBX provides a tool which allow that all tel. numbers will be stored in DB with united (i.e. uniform) format. These rules are always individual for each PBX, once symbol + can be removed and once it can be replaced with 00 etc.
    Another interesting feature is HLM (High Level Messages). Easy call can be (in limited way) monitored or managed via connection over web socket in json format, typically between CRM and PBX. The communication can be ACKed in and case of communication is lost then PBX goes to emergency mode. Also this communication is using SSL.