11. Payroll data in QueueMetrics

Starting from QueueMetrics version 1.6.0. QueueMetrics is able to produce payroll information, suitable to be exported to a third party application. QueueMetrics is able to extract most of the data required for payroll generation from the agent sessions information found in the queue log. Through some ad hoc pages a supervisor is able to modify some of that information, in order to better match their needs.

11.1. How it works

Payroll is based on agent sessions and is displayed a as separate "micro-application" within QM, available only to agents holding a special key. Each agent could have a specific payroll code associated through the agents configuration page. This payroll code identifies the agent in the payroll generated data file. To Supervisors that can access to payroll subsection will be shown all "punch times", for a given period of time, with the opportunity to zoom in, display incomplete sessions and display sessions for one specific agent. Supervisors holding a second special key are allowed to correct - enlarge or restrict - agent sessions, given a set of rules that avoids overlaps with other agent activities, to be further specified. A third key allow "enlarging" agent sessions, i.e. causing the cost to be more for the call center. Payroll extraction is just manual: the user should inspect payroll data and download payroll trace files, to be loaded into external WR Timetracker for further processing. Supervisors are able to see all punches and/or to filter out some of them by agent group and/or location. All activity is logged into the QueueMetrics log subsystem.

Payroll information generated by QueueMetrics is based on a specific output file format:

  • ADP "punch files", that basically handle the time an agent has been available under ACD

but the underlying structure let us able to expand the file format selection by implementing a specific file writer.

To summarize, here are the keys that limit user’s permissions when working with Payroll:

  • Users allowed to check the payroll page will be marked by the key PAYROLL
  • Users allowed to edit the queue_log records will be marked as QLOG_EDIT
  • Users allowed to edit session data by making it longer will be marked by QLOG_LNGR (they must hold QLOG_EDIT as well). All queue_log editing will be tracked and logged.

11.2. Payroll web pages

The payroll process happens on the following web pages:

./Pictures/image300.png

The Search page is linked from the main QM page.

./Pictures/image301.png

11.2.1. The search page

The search page lets a supervisor search for session activity.

./Pictures/image302.png

The page lets you select a time interval, or choose one of the pre-selected time intervals. It also lets you filter by one criteria of the following ones:

  • Location
  • Agent group
  • Supervisor (a button "me" is available if the user is a knows supervisor, and will pre-select the current supervisor)

11.2.2. The Sessions page

The payroll extraction page lets you preview the data that will be downloaded in the "punch" format. If you click on an agent’s name, then you will be lead to a page where all sessions for that agent will be shown for the specified time interval.

./Pictures/image303.png

Next to the agent name, if present, is an icon that displays the current Agent group. The tables can be exported as Excel/CSV/XML, as all other QM tables.

The button "Export now" lets you able to generate the "punch" data file.

11.2.3. The Agent detail page

On the Agent detail page all sessions for that agent will be shown for the specified time interval. Next to the agent name, if present, is an icon that displays the current Agent group.

./Pictures/image304.png

If you have the grants to edit a session, by clicking on the icon placed before the duration field, you will be able to edit that session. The table can be exported as Excel/CSV/XML, as all other QM tables.

11.2.4. The Session editor page

The page displays the information about the selected agent session, and it searches the maximum/minimum values allowed for starting and ending the session.

./Pictures/image305.png

It will be able to change the agent session on a statement like: Change [session start/session end] to be [earlier/later] by XXX seconds

If this would make the session longer, you need a special key.

If the period is invalid, an error will be displayed. When the changes are applied, the page will reload with the new data

11.3. Editing the system queue_log file

When the user asks for changes on a specific agent session statement, QM will try and see if it can find that session and it is "well-formed". This means that some sessions might not be updateable though they work fine in QM. Not well-formed sections are, for example, sections where a log-on event is not present, or overlapped with other events. This could be caused by a not corrected queue log, following some pbx unavailability or something other. If the target session is "well-formed", QueueMetrics will try to detect whether the change causes some havoc with other calls/sessions. If it does, the change is rejected. If the target section is well-formed but causes a growing cost for the call center, and so requires the key QLOG_LNGR, that key is checked; if not found, the change is rejected.

11.3.1. Well-formed agent sessions

An agent session is considered well-formed if:

  • At least one line with one of the Agent logon verbs is present at the time stamp that is given as the start of the session
  • A line with one of the logoff verbs is present at the time stamp that is given at the end of the session, with same partition ID as at least one starting line found

11.4. The editing log

All activity details are logged to the master QM log, where they will be available for inspection though SQL instruments.

The trace log contains:

  • A description of the changes, the time and the user who requested them
  • A sequence of SQL that generates the new session timing
  • A sequence of SQL that is able to restore the records as they were before the change