Spotfire Alerting Extension
By:
Last updated:
7:27am Jul 10, 2017

 

Note: the Alerting Extension has been demonstrated at the on-line TIBCO Analytics Meetup of December 1st, 2016. You can find the video on the TIBCO Community Analytics Meetup page.

Overview

Alerting based on TIBCO Spotfire® Analyses is an area of discussion that occurs frequently in the community. The TIBCO Alerting Automation Services Projectware for Spotfire® solution is an extension for TIBCO Spotfire. This extension allows you to leverage your existing Spotfire analyses to Register and Monitor alerts. It provides seamless integration with Automation Services via an Alerting Task. Following are a few features of the Alerting extension:

  • Easy GUI-configuration of alerts
  • Alerts triggered from a rules-based engine
  • Various methods of triggering rules (visualization/threshold, IronPython, Data Function)
  • Alert based on existing Spotfire analyses
  • User-customized, personalized and targeted alerting
  • End-user subscription to alerts

Watch a presentation and demo of this alerting extension.  (Starts at 4:10 on the video.)

This extension is available to purchase from TIBCO - please see the contact information at the bottom of this page.

Leveraging APIs for Alerting Capability

Spotfire is a flexible and extensible platform that exposes APIs in IronPython, JavaScript and C# (through Spotfire Software Development Kit). C# API gives access to analytic objects in Application (like visualizations, filters), Data Model, or the Framework (eg. library). Ironpython on the other hand, helps create complex user interfaces and work flows including:

  • Combining multiple actions
  • Calling a web service
  • Writing data to database

Learn more about Extending TIBCO Spotfire

TIBCO Spotfire users and customers have expressed the need for a solution within Spotfire that would cater to the following:

Requirement

The custom extension has been developed in C# to address the above requirements. The add-on is distributed and deployed by means of automated scripts that include installing necessary packages on the Spotfire server. The design of the tool allows configuration of alerts from Spotfire Analyst and alerts are configured to use existing Spotfire analyses. These alerts are triggered using an Alerting Task within Automation services. This enables the extension to combine with existing Automation Services jobs pipeline including:

Automation Services jobs
 

Alert Registration High-Level Design

Alerts Hierarchy

Each Spotfire file can have several alerts registered to it.  Each alert in turn can contain several rules. The user can decide to trigger the alert based on whether all rules are matched (AND condition) or if any rules are matched (OR condition). The Rules are set up based on their triggering mechanism. If the conditions specified by the rule have been met (e.g. a threshold has been exceeded), the rule is said to be triggered and a notification will be sent if it is due.

Types of rules 


 

Additional Features

Notifications

When the Alert condition(s) are met, a notification will be sent to the recipient(s) of the alert, if the alert is due. It is possible to specify the frequency of alert notifications using the tool. The notification can be an e-mail and/or any other notification method - the tool is extensible to meet other needs, such as SMS notification, calling a web service or similar.

Configuring Row Level Security

The Alert Registration methods described above allow user to set up Personalized Information links for enhanced personalization or row-level security. The list of recipients can be iterated over, retrieving data for each user in return. When the data is retrieved for a user, the alert rules engine is run. If the alerting conditions are met, the user is notified of the alert conditions.

Alert Subscriptions

Once an alert has been configured within the tool, it can then be subscribed to (or unsubscribed from) by any user permitted to do so. The alert subscription tool is available within the Spotfire Professional (Analyst) client and the Spotfire web-based clients.

Sample UI Walkthrough

To configure each Alert:

Click on New Alert and give it a name. In the Email Template section defaults are populated for your convenience including variable such as Spotfire analysis title, personalized recipient name, etc.

Alert Tan

  1. Email Subject uses Title of the dxp (Spotfire file) as %%Title%% variable.
  2. Message Header consists of the default text for the email including personalized recipient name, and webplayer link to analysis.
  3. Message Footer is commonly used for legal disclaimers, do not reply declarations, etc.
  4. Alerting Frequency section is an inbuilt mechanism into the tool to avoid being spammed by the same alert. When the alert is run, the tool checks against this section to see if an alert is due and only then sends out an email. By default it is set to ‘Always’ but it can be set to a few minutes up to years.   
     

To configure each Rule:

Click on the Rules tab in the same dialog box.

Rules Tab

  1. Based on the mechanism to trigger the Rules, choose the type of rule to be configured and give it a name eg. ‘Test Rule’. Add details of visualization to be used for Threshold and Delta rules otherwise choose respective scripts for the other rules.
  2. Trigger ANY Rule acts like logical OR of the rules, Trigger ALL acts like logical AND of the rules.
  3. Message for selected rule with be the customized message displayed when that particular rule is triggered, not that this will be placed after the Message body of the generic alert message configured in the previous section. 
  4. Add any visualization to the email from analysis file

Recipients can be configured using an Excel file of recipient names and contact information, distribution lists or through prompted or Parameterized information links.

User Subscription/Unsubscription:

To subscribe/unsubscribe to or from an alert, it's as simple as making the appropriate selection from the alert subscription tool:

 

Popular Use Cases

1. In Manufacturing and Process Control alert based on Control Limit violations

Note that here a TERR script determines whether the point passes (0) or fails (1) the rule, this then can be used to generate alerts.

Process Control Scenario

2. In Fraud Detection send alerts for suspected intrusions, fraud and Anomalies

Fraud Scenario

3. In Finance send Real-Time Alerts based on Stock Prices, % Returns and Market Risk

Finance Case

Other Examples include:
4. In Clinical Trials alert based on Success rate
5. In Retail and Customer Analytics send alerts for product affinity scores
6. In In Operations and Logistics alert for anticipated delays and supply shortages
7. In Internet of Things and Connected Vehicles trigger alerts for sensor failures

Version Details

Version 4.0:

  • Compatible with Spotfire versions 7.5+; Spotfire versions 7.7+ for full functionality
  • New Feature: Recipient Lookup from LDAP using query strings
  • New Feature: Recipient Subscribe & Unsubscribe to Alert from Web Panel
  • New Feature: Compatible with Oracle as back-end data source
  • Improvements & Fixes: Corrected email from multiple rules, Improved support for Calculated Columns for Threshold Rule

Version 3.0:

  • Compatible with Spotfire versions 7.0+
  • New Feature: Personalized Alerts through parametrized Information Links
  • New Feature: Extended list of Variables available dynamicaaly with %%_%% syntax for Alerts
  • New Feature: Added Preferences for root Information Model Folder
  • New Feature: Execute IronPython Script on Alert fulfillment
  • Deprecated: Configure Recipients for each rule
  • Improvements & Fixes: Improved UI, Support for Alert deletion and Multiple Alerts in DXP, Fixed Alerting Task save settings

Version 2.0:

  • Compatible with Spotfire versions 7.0+ 
  • Base Version. Provides User ability to configure Alerts, Rules and Recipients in a DXP
  • Allows User ability to create Automation Services Alerting Task used to schedule Alerts

 

Contact for more details

Europe, Middle East and Africa:

Americas and Other:

Feedback (3)

So is this available for download ?

shlewis 7:37am Apr. 27, 2017

非常好,期待!

806075419 1:19am Apr. 06, 2017

Is this available as a community extension or is it a for-pay extension?

It is similar in approach to one I developed internally, as the functionality should be embedded in Spotfire natively.

This is nicer however, and would be good to have community support.

dave.williams 7:58am Dec. 02, 2016