The new telephony server now supports a heartbeat functionality. Every 20 seconds a heartbeat is exchanged with the SIP stack, and a timestamp is set. If the difference between the set timestamp and the current timestamp in seconds exceeds 60 seconds, then the call will be refused with a SIP 503 - Service not available.
Resetting the password from the login page can now be prevented with a system parameter “ACD.Login.PasswordReset.Enabled“. This parameter should be 1 or 0. If this parameter is set to 1, the password reset link will be displayed.
IMAP Mail Connector - now supports OAUTH2 authentication
OAUTH2 authentication for the IMAP mail connector has been implemented.
Note - since Microsoft 365 no longer supports OWA / Exchange Mail Services, replacement of the exchange mail connector will be necessary on systems which use older style access to Microsoft email services in the cloud. If you require assistance with this, please contact your jtel partner or check out this link:https://wiki.jtel.de/x/PQA0Bw
Transaction Codes - Possibility to undo transaction codes in Agent Home and Mini Client
It is now possible to undo transaction codes for calls in Agent Home and the Mini Client. Clicking on “Reset” or the checkbox for the transaction code will perform this action.
NOTE: it is not possible to reset the following:
Transaction codes which are associated with a tarif wave file. This is because tarif wave files are used to inform the caller of a change, for example, in the charge for the current call or a transaction which has been executed on the current call. This information cannot be “taken back”.
If the call is associated with a dialler contact, and setting the transaction code causes the relevant dialler contact to be moved through the dialler workflow, this action cannot be taken back. For example, if setting a transaction code is associated with closing the dialler contact, then the contact will remain closed even if the transaction code is reset.
Post Call and Mandatory Transaction Code Handling - New Features
A new optionMandatory Transaction Code - Manual Post Call Statushas been added to ACD Standalone and ACD Configuration Groups, which allows the selection of an ACD Agent Status for manual post call after the popup is closed.
When configured, an additional checkboxChange to Manual Post Callis displayed in the mandatory transaction code popup window.
If the agent checks this option, then when the popup is closed either automatically, because automatic post call ends and the option to set a transaction code automatically at the end of automatic post call is configured in the ACD Group, or the popup is closed manually by the agent, then a status change to the configured ACD Status is performed.
An optionMandatory TAC popup time is booked as automatic post callhas been added. When configured, the time for which the mandatory transaction code popup is opened is booked as automatic post call interval on the previous call. This is performed even if the automatic post call interval expires whilst the popup is opened.
A third optionClosing mandatory TAC popup ends automatic post callcauses the automatic post call interval to end, as soon as the mandatory transaction popup window is closed (whether automatically, or by the agent).
A SAP ICI connector has now been implemented for the jtel system. This enables screen popups within SAP and status changes from the SAP application. Call hold / retrieve and hangup are supported, and on supported PBXs call answer is also supported.
New telephony server - support for SRTP and TLS added
The new telephony server now supports SRTP and TLS connections. A variable %CALLSECURE_TYPE% has been added which reports the type of security being used, for example: srtp:sdes:AES_256_CM_HMAC_SHA1_80
A new feature to copy settings from one Service Number to another is implemented.
To do this, edit Service Number, on the top left there is a new button “Copy Settings” click and in the new page, select the Service Number to copy the settings from.
The copy will exclude the data within the Master Data Tab and the Video Settings Tab, however the Parameters Tab settings are copied, which can be particularly helpful when configuring several service numbers with a similar service.
SalesForce - URLs in MiniClient which are inside salesforce are now opened as tabs in Salesforce
If the MiniClient was embedded in Salesforce, previously links to data in salesforce would be opened in a new tab. This behaviour has now been changed so that:
If the link is within the current Salesforce instance, it is opened by Salesforce using the screenpop function
If the link is external, it is opened in a new tab as previously
Chat distribution - Option "Redistribute seen chat after agent logout"
If an agent chats with a customer and logged off, the chat session will remain active for that agent. A new option "Redistribute seen chats after agent logout" has been added in AcdGroups - Offline Parameters to allow distribution of the existing chat to another available agent when the option is enabled.
TTS in IVR - SSML can now be used within texts without providing a complete SSML document
SSML can now be used within texts of the TTS and related objects without providing a complete SSML document. For example, previously the following was required:
Previously the input would have to have been complete SSML, for example:
<speak xmlns="http://www.w3.org/2001/10/synthesis"
xmlns:mstts="http://www.w3.org/2001/mstts"
xmlns:emo="http://www.w3.org/2009/10/emotionml"
version="1.0">
<voice name="en-GB-LibbyNeural">
Your next appointment is on <say-as interpret-as="date" format="dm">21/03</say-as> at 09:00
</voice>
</speak>
Now, the system creates this automatically using a template, so the only part which needs specifiying is the content:
Your next appointment is on <say-as interpret-as="date" format="dm">21/03</say-as> at 09:00.
User master data - capability to prevent user changing their password
A user can edit their password inUser Master Dataif the following resource is activated: "portal.UserData.User.ChangePassword" (activated by default). If deactivated, the user can no longer change their password. The same applies to editing the PIN using the resource "portal.UserData.User.ChangePIN".
A new report New Report ACD-A-016 - Agent Status Report Sums has been added. This sums ACD agent status over the selected time period. Seehttps://wiki.jtel.de/x/eYDoBgfor details.
Single Sign On with OAUTH2 (for example Okta) - Misleading "azurelogin" redirect URI
The misleading "azurelogin" redirect URI has been replaced with “ssologin“. Note: the functionality is the same, this change was made with respect to questions received from customers when configuring.
In agent home in the full web client it is now possible to integrate AI modules to aid in the processing of the conversation.
The following features are available:
Live transcription of the call using a supported ASR engine is displayed in agent home
A chain of AI modules can be attached to the transcription process including:
Sentiment analysis which displays “smilies” and angry faces in agent home as the conversation proceeds and emotions are detected in either the agent or the customer side of the conversation.
Extraction and display of useful “entities” using custom AI models based on the business processes, such as:
Automatic generation of links to the CRM or ticket system based on the ticket number or customer number
Suggestion of the transaction code which might apply to the call
Extraction and display of a summary of the call
Any AI which supports a REST endpoint can be integrated, even your own AI module for example from Microsoft Copilot or an existing bot
The AI chain is “unlimited” - several AIs can form a chain, with one providing the input for the next, and several AIs can be all called in parallel
This means that AIs which take a long time to respond (like chat GPT) can still be integrated as the results will be displayed as they become available, no matter which AI produces them
The supervisor can watch the live transcription and post comments / tips to the agent.
In addition the existing functions to attach to and listen to the call are available.
All data, including the transcription and the results of all of the AIs are available in the statistics
NOTE: This feature requires special activation by jtel and may require additional licenses. Please contact jtel for details.
ACD Events - capability to hide send to agent and send to group
The following resources can be used to display or hide the capability for agents and supervisors to send ACD events to other agents and other ACD groups.
portal.Acd.AcdEvent.SendAgent
portal.Acd.AcdEvent.SendGroup
Note: the following exising resource is used to hide the capability to send an event by email:
Agent Home and Mini Client - New option to play sound when media event is received
A new option has been added to play a sound when a media event is received. This can be toggled in the mini client footer, or in the user master data settings.
When a call is made from a callback event associated with an Agent Group, the ACD group used to make the call (i.e. set the outbound telephone number) now can be selected from the call dialog – a configuration or standalone group can be selected.
AcdEvents - Extended Functions for Appointment and Priority
It is now possible to create ACD events with a priority and an optional date for an appointment. The following changes have been made:
Priority
Events in the queue are now sorted according to priority, highest first, then according to the received date, oldest first.
If no priority is specified (or for old existing events) then a value of 50 is used.
Appointment Date & Time
An appointment date / time can be specified. Events are not distributed before this date and time if specified.
When an event is created, the following rules apply regarding the date and time:
If both are empty or not provided, no appointment is set. The event will be distributed as soon as possible.
If only a date is provided, the time is set to 00:00. The event will be distributed at the earliest on the date specified, distribution will be tried immediately if this is in the past.
If only a time is provided, the date will be set to the next possible instance of that time. Example:
If it is currently 15:30, and the time is set to 10:00, the date will be set to the next day.
If it is currently 15:30 and the time is set to 18:00, the date will be set to the same day.
If both a date and time are provided, the appointment is set exactly to this. The event will be distributed at the earliest on the date specified, distribution will be tried immediately if the date is in the past.
Note: the actual distribution depends on the agents logged in and the distribution requirements (skill, priority etc.).
Features Updated to Support New Functionality
Agent Home / Mini Client
When creating a manual callback, the date / time can be specified by agents. The priority 50 is always used.
Agents can see (but not change) the priority of the event.
Agents can see and change the date and time of the appointment for the event. Since the event has already been distributed (the agenthasthe event) it is not redistributed. The agent can see the new appointment in his list and use this as a reminder. The new appointment will apply if:
The agent logs out and the system is configured to redistribute events from logged out agents.
The agent forwards the event to an ACD group
Supervisors can see and change the date and time of the event and the priority.
A change to the date / time and priority will only actually immediately affect the event if it has not yet been distributed.
IVR Object Create Callback and Create Callback Variable
The fields Priority, Appointment Date and Appointment Time have been added.
IVR Object AcdEvents Create Advanced
The fields Priority, Appointment Date and Appointment Time have been added.
REST API
The fields nPriority, dtAppointmentDate and dtAppointmentTime can optionally be specified when an event is created.
Call Recording - Override call recording mode after opt-out by caller possible
In some scenarios, it is desirable for agents to be able to activate call recording manually even if a caller has opted out of the recording previously in the IVR or ACD by pressing a DTMF in the appropriate menu.
A new option has been added to the ACD group configuration for call recording:
Manual recording after caller opt-out
This enables manual call recording, after the caller opts out of the variant of call recording configured in the ACD group.
The agent can now see whether an opt-in or opt-out has been performed by the caller clearly in agent home and in the mini client.
The following WIKI page details the call recording options and processing:
Outbound Calls - Run IVR Application after Agent Call
It is now possible to run IVR applications after a dialler call or click to dial outbound call.
To use this feature, the following must be done:
In the service number, set the new option RunRouting Application after Agent Call (Outbound)(Tab Routing)
This will cause the same configured application to run as is configured for inbound calls after the agent call has ended if:
Agents hangup the call on their phones
Agents press the “Hangup” button in agent home
Note, if the service number is configured to directly enter the ACD, then this would be a nonsensical configuration. The service number should be configured to run an IVR application when this option is set. Then the following modifications should be made to the IVR application:
Near the start of the application (shortly after the Start object, but in principle as soon as possible so directly after the Start object)
Insert a Comparison object, and check the value of the variable$outbound
If $outbound is equal to 1, then jump to the relevant application or part of the application which should be executed after outbound calls
Manual Callback - Add custom variables to manual callback body text
It is now possible to add custom data to the body of a manual callback, which may come from an external system or user inputs in the IVR.
This is performed in two steps:
Define JSON Data and add this to the call using the object “Save additional Info and Userdata” - in the JSON field. NOTE: be careful to format the JSON correctly. Updating the JSON Data attached to the call will result in variables being provided in the form:$jsonData.XYZwere XYZ is the name of the field provided in the json.
Update the Long Text for the manual callback ”*Acd.AgentHome.Callback.Body*”, and use the JSON data variables.
For example: saving the following JSON Data to the call:
Voicebot - Timeout between words should be between 100 and 5000 ms
The voicebot does not accept a value greater than 5000 ms in the timeout between words. This problem has been fixed by having a new select items between 100 ms and 5000 ms.
jrest - Accepts parameters which are too large when running a routing application
jrest accepted parameters which were too large when running a routing application. A limit has been added at 64000 characters - the server will return “413 - Request entity too large” if this is exceeded.
New Telephony Server - UDP Receive Buffer is too small for very large packets
In the new telephony server, UDP packets which were > 16384 bytes in size, would only be received partially. This could affect in particular the running of applications via REST when sending large amounts of data to the running process. This problem has been fixed.
Users Profiles - Login profile is still run even if user is removed from profile
If a user executed a profile which was defined as a login profile, and then logged out, and the user was subsequently removed from the profile, then the profile would still be executed at login but the current profile was not visible in agent home. The behavior has been changed so that the profile is no longer run once the user has been removed from the profile.
Agent Home/MiniClient - Exception when selecting User Profile where no Active Tel is configured.
An exception occurs in Agent Home and Miniclient when the user selects a user profile for which no active phone is configured. This issue has been resolved.
Outbound Calls from Acd Event - Shows missing ACD Group error.
When the defaultACD-Groupis empty in Agent Home, making an outbound call from an Acd Event will show an error “Missing ACD Group“, however the Acd group is correctly set in the Outbound call popup. this has been fixed.
On an inbound call, the dialler will overwrite the CRM URL and UserData if it finds a contact, even if the CRM URL generated by the Dialler Campaign is empty. The behaviour has been changed so that:
The CrmURL from the Dialler Contact is used, if present
The CrmURL is generated from the dialler campaign, if present
The non empty value is preserved, if present
And for UserData:
The UserData from the Dialler Contact is used, if present
Mini Client - Mandatory Transaction Code Window impossible to use when pager count is too large
The mandatory transaction code popup was impossible to use if a lot of TACs were configured, and the pager setting was too high. Now, a scroller appears in the table to fix this problem when the window is too small.
Also, in the popup, any fields summarizing the previous call which are empty (because no value was available) will no longer be shown.
Chat distribution - Missing option Redistribute seen chat after agent logout.
If an agent chats with a customer and logged off, the chat session will remain active for that agent. A new option "Redistribute seen chats after agent logout" has been added in AcdGroups - Offline Parameters to allow distribution of the existing chat to another available agent when the option is enabled.
The CRM+ REST endpoint could return an empty array which was not considered to be an empty result. This problem has been fixed - now if the result array is like this:
{
result : []
}
the exit from the object evaluates to an empty result.
Call Recording - Missing announcement when caller opt out by DTMF is enabled.
If the caller has the option to Opt-Out via DTMF he will hear the same announcement that would be played if that option were disabled. To remedy this, a new option "Announcement when caller opt out by DTMF is enabled" has been added."
MiniClient EXE - Okta login page damaged (user name field is missing)
This problem was due to the mini client caching the octa login pages. The problem has been solved by clearing the CEF cache during start of the MiniClient executable. Note: cookies are not cleared, so any saved login information, including that for a jtel login, should still be valid.
Workflow Objects AcdEventsCreate Advanced and AcdEventsCreate Advanced Variable - Sending to a user directly would not distribute the event correctly
When using the workflow objects AcdEventsCreate Advanced and AcdEventsCreate Advanced variable - Sending to a user directly would not distribute the event correctly. This problem has been fixed.
Agent Home - Encoding problem while creating manual callback during a call.
During a call, the manual callback popup was showing the callback message (or subject) with an encoding problem if it has special characters. This problem has been fixed.
Outbound calls - Add error messages if there is misconfiguration.
When there is a misconfiguration in the host file of the 8-server machine or if “dialler.8Server.IPs” parameter is set incorrectly, an outbound call (Click to dial or dialler) could not be executed, but no error message was shown. this problem has been fixed and the following error messages are now shown:
Host file not correct:Network error.
“dialler.8Server.IPs” parameter is not set correctly:No outbound line available.
TAC - Agent is able to set TAC when the supervisor connect via Monitor/Silent call
When the supervisor monitors the call and connects to the agent, the TAC is gone and the agent cannot set a TAC. This issue has been fixed and only the agent could see the available TACs and set them.
NOT CRITICAL - log4j-1.2.14.jar was present in the deployment package for the web application
log4j-1.2.14.jarhas been removed from deployment package for the web application. Note: it was never loaded by the webserver, so no potential security risk was present.
In some cases the reporting of “ringing” when receiving an incoming call in agent home cloud be delayed more than necessary before the agents could see the information that the calls were being delivered to them. This problem has been fixed.
Manual callbacks created with Configuration Groups are not distributed correctly.
Creating a manual callback using a Configuration Group should distribute it to the Primary configured Agent Group. This was not always the case. The problem has been fixed.
The IVR object ‘AcdEventsCreate Advanced’and ‘AcdEventsCreate Advanced Variable’are not saving skill 1, 2 and 3 into the database. This problem has been fixed.
Azure Login - No information about login configuration problems.
No information is showed in case of a login error when the configuration is not correct. This problem has been fixed by displaying the full exeption message in the login dialog.
Task Scheduler - error in server process (no effect on actual running of the tasks)
An error was produced in the server console when a task was scheduled and the error task was to be run. If not configured, this would result in an error in the telephony server console. Note: the rescheduling of the task would proceed as normal so there was no impact produced. This problem has been fixed.
Chat - Send chat event to Agent or Group does not remove the event from the first agent.
When sending a chat event to another Agent or Group, the event remains open in the first agent and he can still send messages to the client, close, hangup and do all actions. This has been fixed, the event now disappears from the first agent and the view is redirected back to the previous page.
JSESSIONID in the URL should be ignored by the webserver
In some cases, the session ID could be added to the URL by the browser. The server incorrectly included this in redirects causing an ajax exception. This problem has been fixed.
When an anonymous caller created a callback twice, the first created callback would erroneously be commented with “Caller requested another callback” when using request callback variant 1 and 3. This problem has been fixed.
Voice Mail Transcription - did not add transcription to voice mails sent by email
The Voice Mail Transcription did not add transcription to voice mails sent directly by email (distribute via ACD was set to false). This problem has been fixed.