Patch Release CX4.10.8

Release Name

CX4.10.8

Release Date

Release Summary

Delivers several fixes across channel connectors, dashboards, platform stability, and the customer chat widget, including restored X (formerly Twitter) functionality, Twilio MMS support, corrected reporting metrics and agent display issues, improved system performance under high load, and multiple chat widget improvements for mobile usability and session handling.

Upgrade Guide

CX4.10.7 to CX4.10.8

Resolved Issues

Channel Connectors

Fixes

Description

Restore View Full Post in X (formerly Twitter)

Issue: Clicking "View Full Post" in the X (formerly Twitter) returned an internal server error, making the feature completely unusable for agents managing X interactions.

Resolution: The API response handler now correctly processes all fields returned by X, including the field that was triggering the error. Agents can view the full post content directly from the connector.

Add MMS support in Twilio Connector

Issue: When APISIX authentication was enabled, the Twilio connector did not support MMS or SMS messages, preventing agents from receiving multimedia messages from Twilio customers.

Resolution: The Twilio connector now handles MMS and SMS messages correctly when APISIX authentication is active.

Dashboard & Reporting

Fixes

Description

Restore the agent name after queue transfer

Issue: After a queue transfer, the agent name column on the Ongoing Conversations dashboard appeared blank instead of showing the name of the agent who received the conversation.

Resolution: The dashboard now correctly reads and displays the receiving agent's name following a queue transfer.

String “null” disposition values in reports

Issue: The disposition's null values were not being saved correctly. The disposition field in reports stored the literal text "null" instead of storing it as type null, making disposition-based reporting unreliable.

Resolution: The system now correctly writes the null disposition value to the report record instead of storing it as the string “null”.

Restore AHT and AWT metrics on dashboards

Issue: A schema update in the reporting database removed columns that the Average Handle Time (AHT) and Average Wait Time (AWT) dashboard panels depended on, causing those panels to stop displaying data.

Resolution: The updated dashboard queries now read from the correct database columns; AHT and AWT metrics display correctly again.

Queue name display for inactive conversations

Issue: Inactive conversations on the Ongoing Dashboard incorrectly showed "NO QUEUE" as the queue name instead of the actual queue the conversation belonged to.

Resolution: The dashboard now correctly reads and displays the queue name for conversations in an inactive state.

Conversations stuck as "Queued" on the Queued Stats Dashboard

Issue: Following a performance improvement to real-time reporting, a regression was introduced where conversations already picked up by agents continued to appear as queued on the Queued Stats Dashboard.

Resolution: The conversation state tracking now correctly reflects when an agent accepts a conversation, moving it out of the queued view immediately.

Restore the agent name on the Unified Agent Dashboard

Issue: The Unified Agent Dashboard displayed only the employee ID instead of the agent's full name and surname, making it difficult to identify agents at a glance.

Resolution: The Unified Agent Dashboard now reads and displays the agent's full name and surname from the user profile instead of the employee ID.

Platform Stability

Fixes

Description

Optimize system configuration for high-load stability

Issue: Default ActiveMQ settings caused unnecessary disk sync operations that slowed the system significantly under peak load. Additionally, closed conversations continued to trigger redundant data persistence operations, adding further overhead.

Resolution: Disk sync has been disabled for improved throughput, and the system no longer processes state changes for conversations that are already closed.

Improve real-time reporting performance at scale

Issue: With 10,000 or more active chats, the real-time reporting component re-processed the entire active chat list for every incoming event, causing memory spikes and progressively slower dashboard updates.

Resolution: Event processing now uses direct lookups instead of full-list scans, significantly reducing memory usage and update latency at scale.

Errors in agent data processing

Issue: A missing constructor in the agent data model caused the system to throw errors when processing agent-related events, resulting in occasional failures in agent state handling.

Resolution: The missing constructor has been added; agent data is now processed reliably.

Prevent gaps in conversation history at agent disconnect

Issue: When an agent disconnected, the system could close the conversation before all agent activity events were fully recorded, leaving gaps in the conversation history and audit trail.

Resolution: The system now waits for confirmation that all agent activity has been recorded before closing the conversation.

Improve certificate management in Historical Reporting

Issue: The Historical Reporting component could only import one SSL certificate at a time, making it cumbersome and error-prone to configure environments that require multiple certificates or certificate chains.

Resolution: The component now uses OpenSSL for certificate management, enabling multiple certificates to be imported in a single operation.

Customer Widget & Bot

Fixes

Description

Chat window obscured by keyboard on iOS

Issue: On iOS devices, opening the soft keyboard while in a chat caused a large portion of the chat window to be hidden behind the keyboard, making it difficult for customers to read the conversation and type their messages.

Resolution: The widget layout now dynamically adjusts its height when the iOS keyboard appears, keeping the full chat window visible.

Chat input becomes unresponsive after app switch on mobile

Issue: In mobile browsers, switching to another app or locking and unlocking the phone during a chat caused the input field to become unresponsive, preventing customers from continuing the conversation.

Resolution: The widget now detects when the user returns to the chat and automatically restores focus to the input field.

Chat session lost on subdomain redirect

Issue: When a customer started a chat on one subdomain and clicked a link redirecting to a different subdomain, the chat session was lost and a completely new session was started, disrupting the ongoing conversation.

Resolution: Session handling now preserves the chat session identifier across subdomain navigation, ensuring conversation continuity.

Fixes incorrect bot icon in chat widget

Issue: The bot's icon in the chat widget was displaying incorrectly, affecting the visual consistency of the interface.

Resolution: The correct bot icon is now shown in all bot messages.

Fixes font and widget styling

Issue: Text in the chat widget appeared less bold and slightly blurry compared to the established design; message bubbles and buttons had rectangular corners and insufficient padding instead of the intended rounded styling.

Resolution: The widget's styling now applies the correct font weight, bubble corner radius, and button padding to match the established design.

Fixes stale "session expired" message on chat reopen

Issue: After 15 or more minutes of inactivity, customers who reopened the chat were shown a stale session-expired message from the previous session and had to manually dismiss it before starting a new conversation — creating unnecessary friction.

Resolution: The expired session is now automatically replaced with a new one when the customer reopens the chat; no manual action is required.

Fixes the widget iFrame expanding over the page content

Issue: When the chat widget's call-out message was active, the widget iFrame expanded beyond its intended boundaries, covering other page elements and preventing customers from interacting with the rest of the webpage.

Resolution: The iFrame sizing logic now calculates its dimensions based on the widget content area, preventing the call-out message from expanding the frame boundary.

Add YouTube video rendering in chat widget

Issue: YouTube video messages sent through bots appeared as empty bubbles in the chat widget instead of rendering the video, making the content completely inaccessible to customers.

Resolution: The widget's message renderer now supports the YouTube video message type, displaying embedded videos inline within the chat.

Make button and bubble shapes configurable

Issue: Chat widget button and message bubble shapes were Fixesed and could not be customized, making it impossible for organizations to align the widget's styling with their brand guidelines.

Resolution: Button and bubble corner radius and padding are now configurable through widget settings.

Show visual feedback when a single chatbot button is clicked

Issue: When only a single button was displayed in the chatbot, clicking it gave no visible indication that the click was registered — the button stayed the same color, leaving customers uncertain whether their selection was recorded.

Resolution: The button interaction logic now applies a visual state change to the clicked button regardless of how many buttons appear in the response, giving customers clear confirmation of their selection.