Pipeline - Filter on Alarm Associated Data

This section assumes you have certain objects configured

The examples in this section assume you have a configured alarm, alarm associated data, a notification profile, and an existing on-call roster.

Once associated data is added to an alarm, you can easily filter for associated data in an alarm pipeline. It’s possible to add associated data that can be either static or dynamic.

Below is an example of how to filter a notification pipeline based on associated data we added to an alarm.

For this example, the WriteableFloat1 tag is used and has 2 alarms setup; High Alarm and Low Alarm. You can see the 'High Alarm' configuration has Associated Data called 'Group,' and a value of either Group A or Group B. We are going to use this associated data to filter the alarm notification pipeline.

images/download/attachments/6034568/Pipeline_Filter_on_Alarm_AssData_-_Alarm_Data_1.png

The next example shows how to create a pipeline filters on associated data.

  1. There are two blocks that can be used for filtering, either the Switch Block or the Expression Block. The Switch Block allows you to switch on a value and do something different for Group A and Group B. The Expression Block does the same thing, but only returns values of ‘True’ or ‘False.’ This example uses the Switch Block.

    Drag in the Switch Block to your pipeline, and connect the Start to the IN of the Switch block.

    images/download/attachments/6034568/Pipeline_Filter_on_Alarm_AssData_-_SwitchBlock_2.png

  2. In the Pipeline Property Editor, you have to manually enter the Expression because you will not find any of the associated data properties in the dropdown list using the curly brace icon. Enter the name of the associated data property in curly braces as follows, ‘{Group}.’ The 'Group' associated data property acts as a placeholder for the real values.

    images/download/attachments/6034568/Pipeline_filter_on_Alarm_AssData_-_Group_3.png

  3. Next, you need to add some values to the Expression Block. You can add as many values that you have values for. Click on the green plus icon and add 2 values: ‘Group A’ and ‘Group B.’

    Once you enter both values, you will have outputs in the Switch block for Group A, Group B, and Catch-all. So now you can notify a different list of people based on each Group.

    images/download/attachments/6034568/Pipeline_filter_on_Alarm_AssData_-_Group_AB_4.png

  4. Drag a Notification Block on to your pipeline, and connect the output of Group A in the Switch block to the IN of the Notification block.

    In the Pipeline Block Editor under the Notification tab, choose your notification type. In the Contacts tab, under the On-call Roster icon, select the roster you want to notify.

    images/download/attachments/6034568/Pipeline_filter_on_Alarm_AssData_-_Ciritical_5.png

  5. Drag a second Notification Block to your pipeline, and connect Group B from the Switch block to the IN on the second Notification block.

    Choose your notification type and specify a different On-call Roster to notify a different group of people.

    images/download/attachments/6034568/Pipeline_filter_on_Alarm_AssData_-_All_6.png

So, what we have successfully done here, is notify people on the 'Critical' list based on Group A, and the 'All' list based on Group B by filtering on alarm associated data.