Introduction
Overview
This release includes:
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 correlated ParticipantId.
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