Release notes
GoContact
See whats New in our CCaaS Software
Feedback form
Could you send us your feedback so that we can improve our documentation on the release notes, please send us your suggestions here
Introduction
Overview
This release includes:- New features
- Enhancements
- Bug fixes
- Technical tasks
- Other tasks
1. New features
SSO – Add generic SAML SSO capabilities- Generic SAML SSO support: Added support for SAML-based SSO, enabling integration with a wide range of identity providers and customizable login button labels.
2. Enhancements
Analysis Generation on QA Module- AI Analysis generation from QA Module: Users can now generate AI Analytics directly from the call list in the QA module, removing the need to access the call detail page.
- Tracks active Agent Assist usage by counting agents using this feature on calls in enabled campaigns, updating peak usage data every minute.
- Improved Agent Assist handling in Call Transfers: Better manages call ownership and session continuity during transfers by detecting the “talking” state and passing interaction IDs to providers.
- WebRTC configuration in Users CSV report: The Users CSV report now includes a WebRTC configuration field, allowing managers to view each user’s WebRTC setting.
- Username validation for WebRTC compatibility: Usernames are now validated during creation to prevent conflicts with existing WebRTC or SIP Mobile App extensions.
- Usernames added to Agent selector in CRM: Usernames now appear next to agent names in the CRM “Agents” selector to help distinguish between users with the same name.
Introduction
Overview
This release includes:
- New Features and Enhancements
1. New features
GoContact mobile app
Call transfer to queue – assisted mode
- Added the option transfer to queue when selecting a transfer destination.
2. Enhancements
WebRTC- Allow activating WebRTC at cloud level
- A new configuration was added at cloud level, which allows WebRTC to be activated for all the domains in that cloud.
Script Builder- Stop playing audio when a general rule for API request is executed
- When the source of the notification is a general rule that calls an API, the sound from notifications was removed.
Agent Assist- Enable segmented agent assist flows by sending owner_id & owner_type as SIP headers in streamed call
A dedicated agent assist workflow was built, so that campaigns and queues can have their own dedicated knowledge bases. This task involved adding two custom SIP headers (sip_h_X-Owner-Id and sip_h_X-Owner-Type) to the FreeSWITCH originate eavesdrop request, where X-Owner-Id identifies the campaign or queue ID and X-Owner-Type specifies whether it’s a “campaign” or “queue.” The implementation required modifying the originate command’s generation logic to include these headers while maintaining compatibility with existing functionality.
Report DesignerAPI- Apply Restricted Owner Access
- A fix was applied to enforce the correct permission of Restricted Owners Access checks on the affected endpoints for the Report Designer (PHP).
Ticket Attachments- Blocked Extensions
- The extension-blocking mechanism has been updated to prevent the upload of potentially malicious files. The platform now restricts the upload of files with the following extensions: .exe, .com, .dll, .bat, .vbs, .scr, and .pif.
Profile Manager- Added Checkbox to enable Read-Only Access to Tickets Outside Assigned Queues [GO-16810]
- A checkbox called “View tickets from other queues” has been added to the Profile settings to enable read-only access to these tickets.
Profile Manager- Rename Ticket Permissions
- It was renamed ticket permissions. For example, the “Is Ticket Supervisor” permission was changed to “Manage other user’s.” Additionally
Introduction
Overview
This release includes:
- New features
- Enhancements
- Bug fixes
- Technical tasks
- Other tasks
Release Version – 25.04
1. New features
Generate a TTS message with NTTS voices []
Neural voices for several languages were added to the platform for campaigns, queues, IVR menus, and IVR campaigns. The “Voice” selector will now group the voices into “Neural” and “Standard” voices.
List of the voices found in GoContact
Neural
- Austrian German: Hannah
- Australian English: Olivia
- Belgian Dutch: Lisa
- Belgian French: Isabelle
- Brazilian Portuguese: Camila, Thiago, Vitória
- British English: Amy, Arthur, Brian
- Canadian French: Gabrielle, Liam
- Cantonese: Hiujin
- Castilian Spanish: Lucia, Sergio
- Catalan: Arlet
- Chinese Mandarin: Zhiyu
- Czech: Jitka
- Danish: Sofie
- Dutch: Laura
- Finnish: Suvi
- French: Léa, Rémi
- German: Daniel, Vicki
- Gulf Arabic: Hala, Zayd
- Indian English: Kajal
- Irish English: Niamh
- Italian: Adriano, Bianca
- Japanese: Kazuha, Takumi, Tomoko
- Korean: Seoyeon
- Mexican Spanish: Andrés, Mia
- New Zealand English: Aria
- Norwegian: Ida
- Polish: Ola
- Portuguese: Inês
- South African English: Ayanda
- Swedish: Elin
- Swiss Standard German: Sabrina
Standard
- Turkish: Burcu
- US English: Danielle, Gregory, Joanna, Kevin, Ruth, Stephen
- US Spanish: Lupe, Pedro
- Welsh English: Ivy, Joey, Justin, Kendra, Kimberly, Matthew, Salli
- Arabic: Zeina
- Australian English: Nicole, Russell
- Brazilian Portuguese: Camila, Ricardo, Vitória
- British English: Amy, Brian, Emma
- Canadian French: Chantal
- Castilian Spanish: Conchita, Enrique, Lucia
- Chinese Mandarin: Zhiyu
- Danish: Mads, Naja
- Dutch: Lotte, Ruben
- French: Céline, Léa, Mathieu
- German: Hans, Marlene, Vicki
- Icelandic: Dóra, Karl
- Indian English: Aditi, Raveena
- Italian: Bianca, Carla, Giorgio
- Japanese: Mizuki, Takumi
- Korean: Seoyeon
- Norwegian: Liv
- Polish: Ewa, Jacek, Jan, Maja
- Portuguese: Cristiano, Inês
- Romanian: Carmen
- Russian: Maxim, Tatyana
- Swedish: Astrid
- Turkish: Filiz
- US English: Ivy, Joey, Joanna, Justin, Kendra, Kimberly, Matthew, Salli
- US Spanish: Lupe, Miguel, Penélope
- Welsh English: Geraint
- Welsh: Gwyneth
2. Enhancements
Voice – Send the new “correlated_participant_id” on the remote transfer originate headers and on “member_transfer_to_remote” event
When making the call to the remote’s destination, the hash of the call is updated with the correlatedParticipantId property. The sip_h_X-Participant_ID header has the value of the correlatedParticipantId. And when the transfer is made, an member_transfer_to_remote event is sent to the synthesizer with the correlatedParticipantId.
CRM- Update call outcome mapping for “CALL_REJECT” hangup cause
Calls with hangup cause “CALL_REJECTED” now receive the call outcome “NETWORK_FAILURE” and they are not counted towards the total calls of the contact.
Broadvoice as a SMS Provider-Broadvoice as Default Provider
When creating a new channel, the SMS option will always be available because the new provider, Broadvoice SMS, is enabled by default. In the Webchat Manager, when creating a new SMS channel, the Provide selector now defaults to “Broadvoice SMS”.
Broadvoice as a SMS Provider- Account’s DDI’s Automatic Lookup
When ‘Broadvoice SMS’ is selected, an autocomplete ‘Account’s DDI’ selector appears. When opened, the selector displays DIDs associated with Broadvoice’s SMS. The selector is disabled if no DDIs are available for the account.
Broadvoice as a SMS provider – Opt-Out information
A system message was added to the Webchat UI to inform agents/supervisors when a message is blocked due to the customer’s opt-out status.
Solve the discrepancy between the values in the Elastic Dashboard and in License Manager
The dashboard showed fluctuating administrators counts when multiple records existed for the same peak. The report displayed the last value instead. Per billing policy, the peak administrators count should be used. Both have been corrected accordingly, and date/time values now match peak times.
3. Bug fixes
WebRTC GET /extensions does not contain domain filters. to develop
We passed the domain to the RTC Core API to filter by domain when requesting an extension.
Voice- Invalid input syntax for type uuid
The fix involved validating if the call uuid had the transfer suffix and involved removing the suffix before saving the call uuid to the database.
Voice – Contact info not correct when the call follows the flow ‘outbound -> ivr menu -> inbound queue’
The fix involved getting the correct phone number from a Redis auxiliary key (hash:call:transfer:<call_uuid>). That way we were able to get the correct contact information.
Recordings – Inbound queue excludes audio during call recording scenarios it doesn’t work
The fix involved passing the correct leg that we intend to record to the Freeswitch. In this scenario we were passing the customer’s leg but we wanted the agent’s leg.
Recordings – Campaign excludes audio during call recording scenarios it doesn’t work
The fix involved passing the correct leg that we intend to record to the Freeswitch. In this scenario we were passing the customer’s leg but we wanted the agent’s leg.
Search API- startDate and endDate are not being required in /search/{ownerType
A condition was added to enforce the use of dates (begin and end date) when leadid, phonenumber, or ticketid are omitted in the Swagger documentation for the relevant endpoint.
Bugsnag- TypeError in /index.php
The code that processes the auto scroll in a conversation is now protected against the not existence of the DOM element container of the conversation.
CRM- Accessing the CRM menu from a search details result page, instead of returning to the search, does not work
The system now allow users to return to the search results when accessing the CRM menu.
Channel Interface- Channel interface breaks when ms-conversations service is stopped
The interface no longer breaks when the service is stopped.
Broadvoice’s SMS- When the user switches from Broadvoice’s SMS to an external provider, the Account’s DDI selector is replaced, but the previous number stays the same
This would ensure that the Broadvoice number is not selected when switching to the new provider.
Post-Call AI – Does not show Display AI Analytics column header
When users apply the filtering and activate the “Instant Search”, they will immediately see the calls with the AI Analytics information displayed.
Post-Call AI -When we don’t have go lifecycle /audio, the message must be different
The tooltip displays now the correct message: “AI Analytics are temporarily unavailable due to a service outage. Please try again later or contact support for more information.”
4. Technical tasks
Whatsapp- Whatsapp integration should use domain name and not the cloud DNS
DNS Correction on the WhatsApp Webhook. This update fixes the issue, ensuring that the webhooks always use the correct domain, preventing message delivery failures.
5. Other tasks
External Scripts – Update settings for the External Script Afiliacion to develop
The External Script had to be fixed to support the access by domain DNS. This was done fixing a configuration setting in the script and the change was persisted in the project repository (GitHub).
Voice – Connection to pub sub gets broken after a reconnect to develop
After receiving an error event, the Redis client should automatically reconnect and resubscribe but some Redis clients are not receiving/processing the messages as expected. The solution was to do the “manual” reconnection by calling the Redis commands quit, connect and subscribe again when receiving an error event.
Edit Database with Contact ID match fails Extra Fields update to develop
In Database Manager, the code responsible for updating the Extra Fields was changed to cast the value of the column in the “fscontact.contact” table (used to match the contact to be updated) to “TEXT” because the column is now of numeric type.
Facebook- Not possible to “Close ticket” after closing a webchat conversation to develop
A fix has been implemented, ensuring that the ticket is successfully closed without errors.
Update external provider translations for better understanding to develop
The tooltip has been updated to make it more accessible and understandable, explaining that it’s not possible to delete the provider as it’s associated with a channel.
When Using transfer assistance interactionID is not updated to develop
When a client transfers a call from one queue to another, the information from the original call is passed by default. A fix has been implemented to ensure that the interactionID is updated on the transfer target and used in that variable.
Re-build WebChat Triggers only when necessary to develop
In WebChat Manager, when the “Save” button is clicked, a request updates all WebChat channel configurations, including the triggers, even if the trigger configuration hasn’t changed. The code was changed to only rebuild the triggers if, in fact, the user changed the triggers of the WebChat. Otherwise, they are left as they were.
Correct WebChat event registering when on break to develop
When an agent goes on break in the WebChat channel, events continue to be registered as usual. The code was changed to register the go to break as an event and to not register events while the user is on break.
[ Strengthen event registration in the WebChat Agent Dashboard to develop
When registering WebChat event during the logout process, the WebChat Agent Hash could be recreated incompletely. The fix ensures that when attempting to register an agent event in the WebChat Agent Dashboard Hash, if the WebChat Agent Hash is incomplete, the request is ignored.
Stories with more impact on customers
Introduction
Overview
This release includes:
- New features
- Enhancements
- Bug fixes
- Technical tasks
- Other tasks
Release Version – 25.02
2. Enhancements
[Voicemail detection] Allow for custom mapping of call outcomes using Voicemail detection provider
[Voicemail detection] Allow for custom mapping of call outcomes using Khomp GO-16315
- Clients can now customize call outcomes based on the call event passed by the voicemail detection provider.
[CRM] Remove the outcome NEW when searching for calls
- When searching for calls it’s no longer possible to chose the outcome “new”.
3. Bug fixes
[Audio Manager] TTS audios – “Save” button enabled with invalid characters on the input field
- No longer allows invalid characters in the input field
[User Management] Groups & Users – Inactive user does not go to pending when recovered from removed
- When removed users are recovered, they go to the pending state. In the ”pending” state, if the users are approved, they will return to the ”Active” state.
[Quality and CRM] Dates accept text or any type of character
- This fix ensures that referred date pickers only accepts dates inputted through it.
[Webchat] When logout from platform with open webchat, after closing the webchat and saying no to logout
- The fix ensures that when logout is canceled, both the modal and its backdrop are properly removed, restoring the screen to normal.
[Voice] Response change in POST /voice/login Endpoint
- The fix was to update the swagger route by removing the values that are no longer present on the hash.
4. Other tasks
[Script Builder] – Script External Service randomly fails to copy the variable value to develop
- Written values are now properly stored.
[Database Manager] Database download shows duplicated contact to develop
- If transferred calls scnario the downloaded DB only shows the data from the last call.
[External Script] Ticket External Script error “There was an error building the External Script URL” to develop
- There was an implementation already in place in the Voice channel which was now applied to the other channels (Tickets and Webchat) regarding how we ask for the External Script URL to the backend.
[Outcomes] Fix SUP-3352 – Call registered in GoContact with the outcome from another call to develop [[CRM] CRM shows the incorrect User = “inbound-Queue” when “Search type” = “contact” to develop
- Issue: The contact’s last call was an inbound call that first went through a checkpoint queue, that is, it was transferred to another queue because there were no agents logged in or because it was outside the business hours and we ended up having 2 calls with the same call start and in these situations we were showing the user of the first call (Inbound-Queue) instead of the last one. In transferred calls scenario the query now returns the last call user.
- Stories with more impact on customers
Enhancements:
Voice
- Offer the contact details to agent when receiving an assisted transfer call: The “Voice->preview Agent OnHook” event was sent when an agent received an incoming queue call, but not when receiving an assisted transfer. The contact details is now being sent before the event that triggers the agent to move to on-hook-ringing in the assisted-transfer scenario, just like it happens in the queue call scenario.
Webchat
- File upload in web chat is no longer working :The system was fixed to allow users to upload attachments in web chat conversations without any issues.
Technical tasks:
Voice Dialers
- Reduce the LIMIT in dialer build queries: Improved efficiency for hopper build for outbound campaigns.
Breaks
- Concurrency break requests fixed.
Tickets
- Event month in Ticket Timeline :The event object for the Timeline plug-in now uses the correct value for the month.
Webchat
- Update Webchat Auto Close feature flag to develop: Added automatically closed for unassigned abandon chat feature in settings.
- Do not go to break while working on conversations:Fixed break request while in chat conversation.
Dashboards
- Fixed duplicated entries in webchat dashboard.
- Fixed automatic conversation closing after sending files in conversation.
CRM
- Call records :Calls that go through IVR are now showing the client’s phone number on CRM instead of DID of the IVR.
- Contact overview does not show Call outcome: Fixed outcome and contact outcome group information when a call has passed from multiple queues.
Callback Manager
- Fixed call back manager while deleting callbacks.
Voice
- Agent stuck talking on a hung-up call: Fixed agent getting stuck in talking state.
Overview
Release Version – 24.22
This release includes:
- Enhancements
- Bug fixing
Enhancements
Databases endpoint
- Integrators are now able to set a database as exclusive when creating an outbound campaign database via API so that they can programmatically enforce the exclusive behavior.
Updates
WebChat messages
- The option to close a conversation will only be available if there are no outbound messages waiting to be processed.
Tickets counters
- The API can now block any changes that would set a ticket to any new, open, or pending status when it is in the merged state.
Bug Fixing
Propagations
Validation Error
- Fixed an issue where the API endpoint failed to retrieve ticket information when an auto-reply was triggered.
Scripts
- Resolved an issue where the script failed to load due to math formulas referencing unavailable elements.
Scripts Call recording
- Users can now reliably trigger the ‘Record Call’ function in automatic campaigns (Power Dial or Predictive) using script logic.
CRM
- Outcome filters now return results from all campaigns or queues that use the same outcome.
Dialer
- The service query timeout has been increased to 60 seconds to prevent errors during Hopper build.