QueueMetrics 21.04

The release 21.04 of QueueMetrics includes a large number of fixes that build on the new report pages that were relased in 20.11 and make working with them easier and smoother.

  • "Throw-away" reports and links from the Real-time page

  • Improved exports to PDF and XLS

  • Improved accessibility

  • Improved wallboard

  • Improved Synchronizer

  • Improved WebRTC soft-phone

  • Cache-aware web data upload

  • User auth over JSON and LDAP

  • Bonus: Introducing AudioVault - Recordings for cloud systems

QueueMetrics 20.11 is immediately available for all CentOS based distros as an RPM package, for Gentoo as ebuild, for Docker as image on DockerHub and as a TGZ file for manual installation for any OS.

Uniloader was also updated to support the latest features.

It supports 23 distinct languages/locales, including the recent addition of Turkish.

When the new reports page was released, every report had to be saved in order to exist. This led to the creation of too many reports on busy systems, most of which are used just once.

Now this is not true anymore - reports will start their lives in an unsaved state (as shown in the report title, that will have a different color when the report is not saved) and you are free to explore them and only save them when you find it useful. The same thing happens when you clone an existing report - you can edit the clone, and then save it if you need it.

qm2104 unsaved report

Of course, if you try exiting without saving, QueueMetrics will ask for an explicit confirmation of what you want to do.

Direct links from the Real-time page are active again - you will be sent to a special report called RT that you can modify as you see fit, to have a different view of the same data you are seeing on the Real-time page.

Improved exports to PDF and XLS

When you export your reports to Excel, reports are now formatted in a way similar to the one that appears on screen, but number cells are now actually usable - you can sum, average, divide them, as a part of any calculation you need to perform.

PDF exports also keep your formatting style and look like they do on the screen. They now support Arabic ligatures, so Arabic users will be able to read them more easily.

The amount of memory used in exporting data was significantly reduced, and a number of small but annoying issues with data exports have been fixed.

Improved accessibility

The new Reports Page and Home Page are now more accessible - this benefits everyone, not just users running assistive devices. For example, power users who love their keyboard will be able to zip through menus and choices by pressing the Tab and Return keys to navigate very quickly.

Just try pressing Tab in the Home Page and see what happens!

qm2104 accessibility

Also, download bundles have been significantly reduced to make the experience snappier on all devices, especially if you are connected to QueueMetrics over an unreliable/slow link.

Improved wallboard

The wallboard had some significant technical changes to uniform tables to the ones that are used in reports. This leads to a smoother experience (things work the same way) and significantly reduced the number of components QueueMetrics uses.

A lot of small changes were made on the wallboard to make it easier to use and fix many small annoyances.

Improved Synchronizer

The layout of the Synchronizer page was made more uniform, making it more usaable and immediately offering the option to sync to an external system (that’s what you want to do in there, don’t you?)

A number of bugs were fixed to make remote synchronization rock-solid - you can now import the configuration automatically from FreePBX, FusionPBX, MiRTA and Enswitch, and you can save and restore existing configuration.

Improved WebRTC soft-phone

Auto Answer

The WebRTC Softphone is now able to automatically answer incoming calls. This option can be set for each agent individually, and can only be enabled/disabled by users that hold the appropriate security key. If the softphone is set up to allow multiple sessions at the same time, the Auto Answer feature will only activate if there are no active sessions, to avoid automatically answering a second call while already on the phone.

This is an important feature to allow agents to instantly pick up any incoming calls, and cut down on waiting time for callers on your queues.

Pause Change/Amend

Up to now, QueueMetrics allowed agents to amend their pause code in case of mistakes or changes in the nature of their break. This however has the effect of retroactively changing the pause code in the history of the agent session, which is not always the best solution for Call Center Supervisors.

Now administrators can decide if agents can retroactively change their current pause code or not, by substituting that ability with the "Change" button, that instead will end the current pause and start a new break automatically with the newly selected pause code.

Better PJSIP Support

Our WebRTC SoftPhone has been tested against the PJSIP protocol, to ensure that it can work perfectly with modern Call Centers. The world of WebRTC development is ever changing, so make sure to keep an eye out for our latest configuration tutorials.

Cache-aware web data upload

When receiving data from the web interface, QueueMetrics is now able to understand when data is already present - and skip it - or whether it is out of order, and process it correctly. This means that it is now possible to change the past on a running system, and QueueMetrics will always offer a "correct" picture.

This makes it possibe to handle multiple back-end PBXs (or other data sources) even when their clocks are incorrectly aligned, or when the data upload from one of the sources stalls for some reason.

Please note that we recommend that all existing systems use HTTP data upload, instead of direct database access or deprecated flat file storage.

User auth over JSON and LDAP

QueueMetrics can rely on an external authentication source. By using a simple JSON/XML-RPC/LDAP interface, it is possible to write third party scripts that are able to authenticate against your chosen identity system (e.g. Kerberos, a Microsoft domain server, etc).

When an user logs into QueueMetrics, QM checks to see if there is an auth source defined. QueueMetrics will execute a query to that third-party server passing along the user-id and the password given for authentication, plus a given service-id that will be defined in the configuration file.

The JSON format is especially handy, because it is very easy to write an auth source that QueueMetrics can use - so you can implement and enforce your own policies.

Bonus: Introducing AudioVault - Recordings for cloud systems

QueueMetrics has always searched for recordings on local file systems - this sometimes made the deployment of recordings quite annoying, especially if said recordings were on a remote system that needed to be mounted as a local volume. With QueueMetrics Live, it was also impossible to access the recordings that were on your own local PBX.

With AudioVault, you can now run an Uniloder instance to give QueueMetrics - or QueueMetrics Live - access to your recordings, and you can do it in a secure way. You need no new license and no third-party service either.

Deprecations

No new features were deprecated.

For an up-to-date list of features that are currently deprecated, see https://manuals.loway.ch/QM_UserManual-chunked/apg.html

Bug Fixes

A large number of bugs (180+) were fixed in the release. The most important ones are documented here:

AGENT PAGE

  • 5089: Agent page won’t update agent presence

  • 4955: Softphone Auto Answer

  • 5115: Switching off pause amends

  • 5065: Agent page not updating correctly

API

  • 4979: Query too long for HWM breaks Uniloader web

  • 4917: "Custom Dial" API call not working correctly with Hotdesking mode.

  • 5041: ptUsers JSON editor not working as intended

  • 5195: JSON, XML-RPC and LDAP auth drivers

  • 4932: API Dial out with hot-desking agents

SYNCHRONIZER

  • 4942: Synchronizer: Usability review

  • 4605: Synchronizer accepts broken JSON ation

  • 4686: Synchronizer won’t update agent levels

  • 4091: User classes should appear with the name instead of the number in the Synchronizer CFG files

  • 5143: Synchronizer: small graphics improvemeents

  • 5128: Export Reports play button should not appear for export jobs that refer to deleted reports

  • 4374: Synchronizer is unable to rename agents correctly

  • 4981: Wrong security key needed to edit QM objects

  • 5068: Reminder on server-side logging

  • 4273: NullPointerException in Synchronizer, is PBX array is null

ENGINE

  • 5101: Multi-stint mode ignores intermediate calls

  • 5100: Cache-aware web data upload

  • 5091: Alias ending in space not being recognized

GRAPHICS / WHITELABELING

  • 4947: Whitelabeling: remove URLS if non-Loway

  • 4633: Import basic graphical components from shared library Loway-js-gui

  • 4812: Themes: load just once

  • 5155: Whitelabel: remove Queuemetrics from the login page

  • 5033: Screen reader support for Home Page

  • 4759: Color.js uses wrong method of importing colors

  • 5011: Resizee the Reports and Wallboards infoboxes.

  • 4295: Screen-reader support

  • 4851: Hide everything on Licensing pge

PACKAGING / SETUP

  • 5035: Display commit-id on builds

  • 5175: Export JSON stack traces

  • 5132: Remove System.out.println() calls

  • 4931: Improve bundling / reduce sizes

  • 4966: MySql 8 treats privileges grant as a syntax error

  • 4956: DB JSON field for wallboard definition should be larger

PBX PLATFORMS

  • 4984: Finding correct spy extension for Enswitch with switchboard

  • 5193: Enswitch: find calls on queue even if queue is dtype not stype

  • 5137: AMI tester error message not very clear

QA

  • 5203: QA Form is not working properly

  • 5020: Grader’s page: cannot open QA pop-up

  • 5099: Cannot click on Pencil item in QA

REAL-TIME

  • 4951: Quick Agent Report from Realtime view not working after update 20.11

  • 4669: Cannot delete saved real-time query from home-pag

  • 5043: Default queue for realtime page ignores visibility keys

  • 5079: Cell for queue "00 All" is broken in RT

  • 5173: Exports from Realtime View not available.

REPORTS

  • 5081: Agent levels not working properly

  • 4535: Quick Agent report from the Realtime view uses the incorrect "Period end date"

  • 4333: Datablock "OU08 – Call results by feature code" not working as intended

  • 4321: PDF exported reports not paged correctly

  • 4395: Timezone offset filter not working in custom reports

  • 4994: Synchronizer: won’t fail on invalid input

  • 4362: CRM URL not showing in Call Details

  • 4336: Skills description not showing in reports.

  • 5073: Audio recordings don’t play in Safari

  • 4688: Unable to delete or edit Saved real-time queries

  • 4976: Inconsistent sort in Datablocks

  • 5023: NPE on agent sessions

  • 5080: Wallboard does not obey realtime.members_only=true

  • 5022: Error with Skill filter

  • 4958: Filter breaks client

  • 5009: Hidden datablocks columns are exported when exporting a report.

  • 5107: Max. Attempt filter does not accept 0 as a value

  • 5005: Expored reports might have different DataBlock Order

  • 5088: DetailsDO Executive Summary not exporting correctly

  • 5141: Throw-away reports: names

  • 5027: Wrong sorting in data blocks

  • 5123: Report exporting fails on formatted numbers or times longer than 24 hours

  • 4946: Finding columns issues in reports

  • 5148: Large memory allocation in exporting XLS reports

  • 5039: New Feature: Temporary Reports

  • 5191: Button (+) loses all changes without asking

  • 5097: Code issues on ExportColumn

  • 4953: Re-activate direct links into reports from RT

  • 5094: No pie chart if there is only one item

  • 4864: Replace editors with ReportsStorage

  • 5086: SLA Report not showing correctly, for the Spanish and other languages

  • 5124: HomePage: display news text as a hovering tooltip

  • 5066: Report Exports show HTML

  • 5190: Filter editor: min and max filter should be close to each other

  • 5199: SSAR Reports not being saved correctly

  • 5114: Report page does not process query when deleting a report

  • 4960: Client should be able to handle filters written in Server Side Format

  • 5000: Shape Arabic letters for PDF export

  • 5117: Autosave toggle should be placed in settings menu

  • 5171: Max row check for excel export

  • 4943: XLS: Workbook already contains a sheet of this name

  • 5145: OOM exporting data: creates regexps

  • 4975: When export name is too long, XLS exporting does not work

  • 5189: Block appears in Edit Mode within the selection bar

  • 4983: Charts are broken if datapoints are formatted strings

  • 5197: Add note panel of QA Forms is not aligned correctly

  • 4934: Wallboard crashes if call is present on Live_Calls table

  • 4967: XLS report exporter is skipping column headers

  • 5206: Variable filters takes 2 parameters

  • 4992: new report does not create new page in firefox

  • 5116: Autosave should be deactivated even for autosaving reports clone

  • 5042: Report Exports should support typgraphy, alignment, hidden columns and column sort order

  • 5168: Show in frontpage does not affect queue menu in report page

  • 4809: Filters should be addable with ENTER key

  • 5084: Disconnection cause not localized in the Reports

  • 4941: Wand icon in realtime page does not appear

  • 4973: Missing localization for default All Reports tabs on mouse-over

  • 5121: Localize missing strings

  • 5064: Too many styles in excel export

  • 5188: Wrong DayOfWeek

  • 4898: Invite text in block editor

  • 5142: Auto-save toggles

  • 5078: Export fails if blocks have two columns with same name

  • 5196: Broken Histograms in QA Report

  • 4933: Redux code cleanup and documentation

  • 5205: Missing Filter CODA_F_shortcall_attempt

  • 5028: Improve coolness of the sort image in report tables.

  • 5164: Report default title should be already populated

  • 5202: Call markers don’t work

  • 5136: DetailsDO.AgentSessions not exported correctly in excel

  • 4972: Column sorting and editing in the datablocks unusable if there are not enough calls.

  • 5120: Some Icons are not aligned

  • 5182: Reports don’t work when report with no queue is loaded

  • 4896: XLS export: strings too long

  • 5019: Missing Grader’s Page, PerfTracker and Coaching links

  • 5204: Report share link does not set report id parameter correctly

  • 4988: Missing localization labels clok_% / clok_chart

  • 5163: Auto Save small issues

  • 5201: incorrect records in table pager

  • 4971: Magnifying glass icon missing from the "Detail of unanswered calls" datablock

  • 5003: Error on export key-protected items

  • 5119: Report title should indicate report status

  • 5059: Reports add a new empty page when cloned

  • 4871: Extract tests from Filters

  • 5087: Days of the week showing with the # symbol

  • 4978: Export of call detail dates

  • 5067: Report Exports do not format new data types

  • 5098: Private reports work as though they were public

  • 5024: Export to Excel with too many rows

  • 5162: Report Settings Toggles formatting issues

  • 5200: SSAR Reports not being listed correctly

  • 4961: New page does not load when created

  • 5134: Previous Week time-frame not calculated correctly

  • 5002: Disconnection reason for lost call is decoded incorrectly

  • 5118: Report title should be first in report recap panel

  • 5046: Most numbers are left-aligned

  • 4944: If empty report, no graph

  • 5093: Swap axes on SLA reports

  • 4987: React warning: Cannot update a component

  • 4954: Display block ID for JSON access of AG09/AG18

  • 4945: Missing localization for DOW

WALLBOARD

  • 5129: Supervisors cannot change queues in Wallboard

  • 5085: Pause description not showing on the Wallboard

  • 5152: Call Action on the Wallboard not behaving as expected.

  • 4950: "Avg. Queue Info" and "Live Agent Counters" not updating properly after 20.11 update.

  • 5082: Wallaboard not sortable

  • 4963: Wallboards cannot be deleted

  • 5147: Cannot change queues in wallboard if in read only mode (not kiosk)

  • 5017: Wallboard not updating if agent is part of a group

  • 5153: Wallboard Hotkeys need a modifier

  • 4969: Wallboards are not deletable in QM 20.11

  • 5010: Wallboard not updating when changing queue for the Supervisor.

  • 4913: WebRTC softphone with FreePBX15 support PJSIP

  • 4549: "Agents Ready" widget displaying a copy of the queue, when only one queue is selected as a filter

  • 5113: Transpose method fails in JsTable

  • 5151: Missing arrow icons from wallboard widget sorting.

  • 4990: Wallboard: missing oDec?

  • 5083: Remove "W:INSPECTOR" debug widget.

  • 5126: Agents Ready widget won’t count agents on ALL queue

  • 4361: Wallboard page keeps polling with server error if too many agents

  • 5063: Wallboard not decoding agents and queues in tables in wallboard

  • 4962: Missing Icons in Softphone

  • 4741: Remove Tabulator component

  • 5135: Wallboard queue selection not allowed for users without the Wallboard edit key.

  • 5018: Counters on the wallboard go to zero after 1000

  • 5150: First row of the wallboard Widgets not sticky