Call us: +1 (716) 989 6531 or email at:

Forecasting Software for sales, demand and call volumes

RSS RSS

Navigation





Search the wiki
»

PoweredBy

Call Center adapter editor for the Call Center Calculator

RSS
Products » Call Center Calculator » Here

Editor for L3C call center adapters

Click the image for more screenshots

Click the image for more screenshots


L3C Editor is a utility application bundled with L3C. This editor lets you edit and test SQL queries that are used to plug database-based applications into L3C.

Key target application:
  • Call center software
  • Contact center software
  • Staff management software
  • Ticketing systems

Big picture

L3C is a workload reporting application. It helps call center managers to optimize their staff levels. L3C includes an extensible framework to import data from 3rd party applications.

This framework is based on a XML format, named L3C-XML, that wraps SQL queries. Those queries are used to import historical call activity data into L3C. Thus, any database-based 3rd party application can be supported by L3C if the corresponding L3C-XML file is provided.

Key features

  • easy integration of customer apps into L3C.
  • open and save L3C-XML files.
  • edit the SQL queries.
  • test the SQL queries against your database.
  • add meta-data for documentation.

User guide


L3C Editor includes the following panels:

  • General: meta-data about the L3C-XML file.
  • Queue names: select the calling queue names.
  • Call logs: select the historical call activity.
  • Staff logs: select the historical staff levels.
  • Events: select event information for queues.
  • Export staff levels: send your optimized staff level back to the app.

Only the panels indicated in bold are required, all the other queries are optional.

The first step consists in selecting a database type and then entering the database connection string. This connection string will not be stored in the L3C-XML file. It is only provided to enable live query validation against your database.

General panel

This panel contains meta-data. We suggest to include precise information about the environment such as the application version and the database version that you are currently using.

(not implemented yet) The connection option is not used in L3C at this point. We strongly suggest to leave the connection option box empty at that point.

Queue names panel

Your call center might contains several distinct calling queues. Typically, each queue will be assigned its own staff.

This panel includes a query to retrieve a list of pairs (QueueId, QueueName). The expected query should return two fields:

SELECT
  QueueId,
  QueueName
FROM
  Queues

Some applications may not support the notion of queue. In such case, we suggest to return a single pair with an arbitrary queue identifier and queue name.

The if there is no way to distinguish queue identifiers from queue names, then the very same field can be returned twice (both as identifier and name).

Call logs panel

This panel is used to retrieve all the past call logs. The main issue with call logs retrieval is the potentially very large amount of data to be retrieved. If we were trying to retrieve all the data at once, the query would be very likely to encounter a database timeout, even if there was not that much data to be retrieved.

Thus, L3C adopts a classical query paging scheme where an index and a page size are specified. In addition, the query includes two date constraints: start time (inclusive) and end time (exclusive).

The Call logs panel is slightly more complicated than the previous one, indeed, there are 4 query parameters. The expected query must return 3 fields:

SELECT
  QueueId,
  CallTime,
  CallCount
FROM
  CallLogs
WHERE
  CallTime >= ?startDate AND
  CallTime < ?endDate
LIMIT
  ?index, ?pageSize

Those parameters are input parameters, they will be provided by L3C to retrieve the data in an incremental fashion. Those parameters should be consumed by the specified query. If those parameters do not appear in your query, then the query will not pass validation.

The SQL queries parameters are usually prefixed with a special character that depends on the database type:
  • MySQL parameters are prefixed with ?
  • MSSQL parameters are prefixed with @
  • Oracle parameters are prefixed with :

Performance tip: quarter-hour aggregation of call logs. A way to significantly improve the retrieval performance of L3C consists in pre-aggregating the call logs. Basically, all the calls from the same quarter-hour interval can be summed. Quarter-hour aggregation has no side effect on L3C, because the first operation after the call logs retrieval is precisely quarter-hour aggregation.

Staff logs panel

This panel is used to retrieve past staff levels associated to call queues. This query is optional, if your call center app does not contain such data, you can leave this query empty.

The expected SQL query is:

SELECT
  QueueId,
  CallTime,
  AgentCount
FROM
  CallLogs
WHERE
  CallTime >= ?startDate AND
  CallTime < ?endDate
LIMIT
  ?index, ?pageSize

It must be noted that the 4 input parameters startDate, endDate, index and pageSize are identical to the ones used in for the call logs retrieval (see previous section).

Events panel

Introduced in version 2.0

This panel configures event information retrieval. Although this information is optional (you can leave the panel blank), providing it will allow Lokad to further improve forecast results.

Any event can be described by following properties:

  • Name - identifier or description for the event.
  • Time - time at which this event took place.
  • Duration - duration of the event in days (could be 0).
  • Known Since - optional argument to identify unexpected events like force-major situations.

Expected query is:

SELECT
  QueueId,
  EventName,
  EventTime,
  EventDuration,
  EventKnownSince
FROM
  QueueEvents
WHERE
  EventTime >= ?startDate AND
  EventTime < ?endDate
LIMIT
  ?index, ?pageSize

4 input parameters startDate, endDate, index and pageSize are identical to the ones mentioned in the previous sections.

Export staff levels panel

L3C reports optimized staff levels based on call volume forecasts. This panel lets you export those optimized staff levels toward your call center app. This query is optional, thus you can leave this query blank. In such a situation, the L3C user will not be able to click on Export to get the staff level out of L3C (cut and paste through Excel being still available as an alternative solution).

The query is typically an UPDATE following the pattern:

UPDATE StaffPlanning
SET
  AgentCount = ?agentCount
WHERE
  QueueId = ?queueId AND
  CallTime = ?callTime

where AgentCount is expected to be a numerical field.

At this point, the editor can execute a sample UPDATE, but cannot check that the update is correct. Thus, you have to make sure, for example through the GUI a 3rd party application, that the data has been correctly updated.

Importing the adapter into L3C

Now that you have created an L3C-XML file, you need to reference this adapter into the L3C application settings in order to make it available within the application.

Importing the adapter in L3C version 2.2 and after

Step 1: Open extensions folder by clicking "Tools | Locate Extensions Folder" from the L3C Menu.

Step 2: Copy your L3C-XML file to that folder. Let's say it was named MyFirstAdapter.xml.

Step 3: Locate CallCenterAdapters.ladx file and open it with your favorite XML editor. You can use Notepad or Notepad++ which is a free editor with XML editing capabilities.

Note: LADX file is a simple header file with custom XML format. It lists L3C-XML files that should be loaded by L3C when it starts up. You can have as many LADX files as you want. L3C will automatically find and load all files from the Extensions folder.

Step 4: Add following XML element between the l3c-adapters elements and then save:

<adapter 
    id="MyFirstAdapter" 
    definition="MyFirstAdapter.xml" 
    factory="{XmlFactory}" />

You only need to change values of id and definition attributes to match your adapter, where:

  • id - unique string without spaces (it should be unique for every adapter);
  • definition - a relative path to the L3C-XML file.

Step 5: Restart the L3C application. Your new adapter should now be visible within the adapters list. Should there be any errors or warnings while loading this adapter, they will be displayed in the separate window.

Optional Step 6: in order to redistribute L3C adapters you need to copy LADX file and L3C-XML (and other, if applicable) files that it references to Extensions folder on another machine.

Importing the adapter in L3C version 2.1 and before

Open the installation folder of L3C (usually it's C:\Program Files\Lokad Call Center Calculator, and look for the file named Lokad.CallCenter.Windows.exe.config. This configuration file is an XML file that contains the list of available L3C-XML adapters.

Open Lokad.CallCenter.Windows.exe.config within a text editor (you can use Notepad or Notepad++ which is a free editor with XML editing features).

Tip: If you happen to break the config file by mistake, you can re-download the file at this location. This should be easier as opposed to reinstall the whole application.

The first important section is /configuration/castle/components which contains a componentwith id="adapterRepository". The XML section contains an array that lists all the adapters

<array>
  <item>${TSV}</item>            
  <item>${vicidial}</item>
  ...
</array>

Just add your own <item>${myAdapterId}</item> line. Then, below you can insert a new component block such as

<component id="myAdapterId"
  service="Lokad.CallCenter.CallLogsAdapter.ICallLogsAdapterFactory, Lokad.CallCenter.CallLogsAdapter"
  type="Lokad.CallCenter.CallLogsAdapter.XmlCallLogsAdapterFactory, Lokad.CallCenter.CallLogsAdapter">
  <parameters>
    <UniqueIdentifier>myAdapterId</UniqueIdentifier>
    <DefinitionFilePath>xml\myAdapter.xml</DefinitionFilePath>
  </parameters>
</component>

Note that id="myAdapterId" must match the line <item>${myAdapterID}</item>; and obviously xml\myAdapter.xml must correctly reference your L3C-XML file (we suggest to put this file into the \xml directory).

The value <UniqueIdentifier>myAdapterId</UniqueIdentifier> is not required to exactly match the component id="myAdapterId" identifier. This UniqueIdentifier value is used within L3C (the main application, not the editor) as an adapter identifier when recording the report settings. Consequently, if you were to change this identifier, previously saved L3C reports would have to be reconfigured because the adapter would be considered as a different adapter.

Download Free trial

Lokad News


Supported App.

  • Asterisk
  • Avaya
  • Excel
  • QueueMetric
  • WhenToWork (*)
  • Vicidial
  • Viev (*)

App. marked with (*) are already planned.