Sentiment Analysis Troubleshooting Guide<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Sentiment Analysis – Overview What is Sentiment Analysis? Sentiment Analysis is a Now Assist (NAA) skill that uses ML predictions to automatically evaluate the emotional tone of a record (Case, Incident, etc.) based on configured inputs. It helps agents and managers proactively identify dissatisfied customers and prioritize their workload accordingly. Sentiment is displayed as:- Positive- Neutral- Negative Along with a score (-5 to +5) and a trend (improving, stable, declining). --- How It Works 1. When a configured input field (e.g., short description, description, comments) is updated on a record, sentiment calculation is triggered.2. The ML model analyzes the inputs and generates a sentiment score and label.3. Results are stored in the sys_sentiment_details table.4. The sentiment card is displayed in Workspace and UI16 for records matching the Define Availability condition. --- Scheduled Jobs Sentiment Analysis Batch Job - Runs sentiment calculation in bulk for existing records that haven't been evaluated yet Sentiment Trend Recalculation Job - Periodically recalculates the EMA-based sentiment trend for active records Note: Sentiment recalculation is not triggered by updates to related table records (e.g., SLA table). It only triggers on direct field updates configured in the Choose Input var set. --- Configuration Options 1. Define Availability (Var Set)Controls which records are eligible for sentiment analysis.- Default condition: "Task type is Email"- Can be set to "Skill is always available" to evaluate all records- Also controls visibility of records in sys_sentiment_details 2. Choose Input (Var Set)Defines which fields are used as input for sentiment calculation:- Short Description- Description- Comments Updating any of these fields triggers a new sentiment calculation. 3. Define AccessControls who can view sentiment-related fields. Used to restrict visibility for non-fulfiller users. Does not restrict impact on sentiment value. 4. Select DisplayControls which sentiment fields are displayed on the record form or workspace card (e.g., score, trend, label). 5. Fulfiller RolesDifferentiates between fulfillers and requestors for sentiment attribution. Roles added here are treated as fulfillers and excluded from being identified as the requestor impacting sentiment. 6. Sentiment Score Factors | Factor | Impact ||---|---|| Latest Comment | Tone of most recent comment || Task Priority Level | Higher priority = greater impact || SLA Status | Breached SLA lowers score || Initial Response Time | Slow response lowers score || Issue Complexity | Factored into evaluation || Frequency of Updates | Low update frequency = negative signal || Requestor's Feedback History | Historical pattern considered | 7. Sentiment Trend (EMA)- Positive → +10, Neutral → 0, Negative → -10- EMA calculated over time and compared with previous EMA to determine trend direction --- Key Tables sys_sentiment_details - Stores sentiment results per record NAA Skill Config - Stores skill configuration (availability, inputs, access, display) --- Important Notes- The Sentiment Analysis Case skill must be explicitly activated in NAA for sentiment to appear on cases.- Sentiment reflects a point-in-time snapshot — related table changes (e.g., SLA breach) do not auto-trigger recalculation.- Role-based customer identification is not available OOTB and is a candidate for future enhancement. --- Issue 1 – Not seeing sentiment for cases Issue:Sentiment is not displayed for cases in Workspace or UI16 after enabling Sentiment Analysis. Cause:The Sentiment Analysis case skill in NAA has a Define Availability condition configured on the var set. The default condition is set to "Task type is Email", which means sentiment is only evaluated and displayed for records that match this condition. Cases that do not meet this condition will not show the sentiment card. Resolution:This is expected behavior. To verify:1. Navigate to NAA (Now Assist Admin) and open the Sentiment Analysis case skill.2. Go to the Define Availability var set.3. Review the condition applied — by default it is "Task type is Email".4. Sentiment card will only appear for records that match this condition. If you need sentiment displayed for additional record types, update the Define Availability condition accordingly. --- Issue 2 – Record data is hidden in sys_sentiment_details table Issue:Records are not visible in the sys_sentiment_details table even though Sentiment Analysis is enabled. Cause:The sys_sentiment_details table also honors the Define Availability condition configured on the Sentiment Analysis skill. It only stores and displays details for records that match the defined condition. Records that do not satisfy the condition will not appear in the table. Resolution:This is expected behavior. To view all records in sys_sentiment_details:1. Navigate to NAA >> Sentiment Analysis skill.2. Change the Define Availability condition to "Skill is always available".3. All records will now be visible in the sys_sentiment_details table. Note: Changing this condition to "always available" will also affect which records display the sentiment card in Workspace/UI16. --- Issue 3 – Sentiment Analysis for incidents shows SLA breached even if the attribute is turned off Issue:Sentiment Analysis for incidents displays "SLA Breached: true" even when the SLA breached attribute appears to be off/false on the record. Cause:Sentiment is calculated at a point-in-time snapshot. When the sentiment was initially calculated for the incident, the SLA's "Has Breached" value was false. The SLA subsequently breached (true), but sentiment recalculation is not triggered by updates to related table records (e.g., the SLA table). As a result, the sentiment data reflects the stale state from the time of the original calculation. Resolution:Currently, there is no automatic mechanism to trigger sentiment recalculation when a related table record (such as an SLA record) is updated. The only supported way to trigger a fresh sentiment calculation is to update one of the fields configured in the Choose Input var set on the incident itself, such as:- Short Description- Description- Comments Updating any of these fields will trigger a new sentiment calculation, which will then reflect the current state of all configured attributes including the updated SLA breached status. Note: Enhancement to support sentiment recalculation on related table record updates is not available out-of-the-box. This would require a custom trigger to be evaluated as a future enhancement. --- Issue 4 – Enabling Incident Sentiment Analysis results in error Issue:Activating the Sentiment Analysis skill for incidents results in an error, preventing successful enablement. Cause:The root cause was not definitively identified. The error was likely caused by one of the following:- A misconfiguration on the instance- A pending instance update- A plugin update that introduced or resolved a conflict Resolution:The issue resolved itself after an instance update or plugin update was applied, or a configuration correction was made. No explicit fix was required. If you encounter this error:1. Verify that all required plugins for Sentiment Analysis are activated and up to date.2. Check for any pending instance or plugin updates and apply them.3. Review the instance configuration for Sentiment Analysis skill setup.4. Retry activating the Sentiment Analysis skill after updates are applied. Note: If the error persists after updates, raise a support case with instance and plugin version details along with the full error message for further investigation. --- Issue 5 – Logic behind Sentiment Analysis Score and Sentiment Trend Calculation Issue:Users want to understand how the Sentiment Analysis score and trend are calculated. Cause:N/A – This is an informational/how-it-works query, not a defect. Resolution: 1. Sentiment Score Calculation Sentiment scores are calculated on a scale of -5 to +5:- -5 → Very Negative- 0 → Neutral- +5 → Very Positive The score is determined by analyzing the following key factors: | Factor | Description || Latest Comment | Tone and content of the most recent comment || Task Priority Level | Higher priority negatively impacts score if unresolved || SLA Status | SLA breached status influences the score || Initial Response Time | Delayed responses contribute to a lower score || Issue Complexity | Complex issues factor into sentiment evaluation || Frequency of Updates | Update cadence reflects engagement level || Requestor's Feedback History | Historical feedback pattern of the requestor | 2. Sentiment Trend Calculation Sentiment trend is calculated using the Exponential Moving Average (EMA) method:1. Sentiments are converted to numerical values: - Positive → +10 - Neutral → 0 - Negative → -102. EMA is calculated for the current and previous sentiment values.3. The current EMA is compared against the previous EMA to determine whether the trend is improving, stable, or declining. --- Issue 6 – Role Restriction is not working in OOTB Now Assist Sentiment Analysis Issue:Role restrictions configured in the Sentiment Analysis skill do not prevent non-fulfiller users from impacting the sentiment value by updating the record. Cause:The "User Access (in Define Access)" and "Select Display" options are designed solely to control visibility of sentiment-related fields for users. They are not intended to prevent non-fulfiller users from influencing the sentiment value through record updates. Role-based customer identification is not available as an OOTB feature. Resolution:This is expected behavior. The current role-based options work as follows:- User Access / Select Display → Controls who can view sentiment-related fields.- Fulfiller Roles → Differentiates between fulfillers and requestors. If a specific role should be excluded from impacting sentiment, that role can be added under "Fulfiller Roles" in the skill configuration. To configure this:1. Navigate to NAA >> Sentiment Analysis skill.2. Locate the Fulfiller Roles attribute.3. Add any role that should be identified as a fulfiller and excluded from impacting sentiment as a requestor. Note: Full role-based customer identification is not available OOTB and should be considered as a future enhancement request. --- Issue 7 – Cannot see Sentiment Cases ML Predictions Issue:Sentiment ML predictions are not visible for cases in Workspace or UI16. Cause:The "Sentiment Analysis Case" skill was not activated. Without activating this skill, sentiment predictions are not generated or displayed on any UI. Resolution:1. Navigate to NAA (Now Assist Admin).2. Locate the Sentiment Analysis Case skill.3. Activate the skill.4. Sentiment predictions will now be visible on both Workspace and UI16. Note: Always ensure the Sentiment Analysis Case skill is in an active state after initial setup or following any instance upgrade, as upgrades may reset skill activation status. ---