AlarmTemplate

Use the AlarmTemplate web service to retrieve information about available alarm types within your Remote Manager host.

URI

http://<hostname>/ws/AlarmTemplate

Formats

HTTP method Format Description
GET /ws/AlarmTemplate Get a list of all available alarm templates.

Elements

almtID

System-generated identifier for an alarm template. To get a list of available alarm template, use the AlarmTemplate web service.

almtName

Name of the alarm template.

almtDescription

Description of the alarm template.

grpId

Remote Manager identifier for the customer group.

almtTopic

Topic for the alarm template.

almtScopeOptions

Specifies the resource scope for the alarm template. Scope options include:

Scope Description
Group Applies the alarm to the specified group indicated by the full group path.
Device Applies the alarm to the specified device. For example, 00000000-00000000-00000000-00000000.
XbeeNode Applies the alarm to the specified XbeeNode, expressed as the XbeeNode extended address. For example, 00:13:A2:00:00:00:00:00.
Resource Applies the alarm to a data stream path or pattern. You can use the wildcard charater asterisk () to match any element in the data stream path. For example, dia/channel//lth/temp matches all the lth temperature reading for all devices.
Global Applies the alarm at the customer level to monitor all instances of an entity. For example, you can create an alarm to monitor the total number of web services calls for your account. This option is available for subscription usage alarms only.

See almtScopeOptions for the required XML structure for almtScopeOptions.

almtRules

Specifies the rule configurations for the alarm template:

Rule configuration Description
FireRule A list of variables that specify the condition for firing the alarm.
ResetRule A list of variables that specify the condition for resetting the alarm.

See almtRules for the required XML structure for almtRules.

See Alarm template types for a list of available fire and reset variables for each alarm template type.

© 2023 Digi International Inc. All rights reserved.

Template Types

The following table lists and describes all available alarm template types.

Alarm template type Description Scoping Options Fire variables Reset variables
Device offline Detects when a device disconnects from Remote Manager and fails to reconnect withint the specified time. Device Group reconnectWindowDuration none
XBeeNode offline Detects when an XBee node disconnects from Remote Manager and fails to reconnect within the specified time. Device Group XBeeNode reconnectWindowDuration none
Device excessive disconnects Detects devices with an excessive number of disconnects. Device Group disconnectCount disconnectWindow reconnectWindow
XBeeNode excessive deactivations Detects XBee nodes with an excessive number of deactivations. Device Group XBeeNode deactivationCount deactivationWindow activationWindow
DIA channel data point condition watch Detects when the specified DIA channel conditions are met. Device Group instanceName channelName type operator thresholdValue timeout timeUnit instanceName channelName type operator thresholdValue timeout timeUnit
Smart energy data point condition match Detects when the specified DIA channel conditions are met. Device Group XBeeNode endpointID clusterType clusterID attributeID type operator thresholdValue timeout timeUnit endpointID clusterType clusterID attributeID type operator thresholdValue timeout timeUnit
Data point condition match Detects when the specified data point usage conditions are met. Resource type operator thresholdValue timeout timeUnit type operator thresholdValue timeout timeUnit
Subscription usage Detects when subscription usage exceeds a specified threshold. Device Group Global svcID thresholdValue metric unit none
Missing data point Detects when one or more data points are not reported on within the specified time. Resource uploadInterval uploadTimeUnit readingInterval readingTimeUnit none
Missing DIA channel data point Detects when devices haven not reported DIA channel data within the specified time.Note The alarm will not be registered until the first data point is sent after the alarm is created or edited. Device Group instanceName channelName uploadInterval uploadTimeUnit readingInterval readingTimeUnit none
Missing smart energy data point Detects when devices have not reported smart energy data within the specifed time.Note The alarm will not be registered until the first data point is sent after the alarm is created or edited. Device Group XBeeNode endpointID clusterType clusterID attributedID uploadInterval uploadTimeUnit readingInterval readingTimeUnit none

© 2023 Digi International Inc. All rights reserved.

almtScopeOptions

Use the following XML structure for almtScopeOptions.

<almScopeConfig>
    <ScopingOptions>
        <Scope name="Resource" value="Weather/USA/*/Minneapolis"/>
    </ScopingOptions>
</almScopeConfig>

© 2023 Digi International Inc. All rights reserved.

almtRules

Use the following structure for almtRules.

<almRuleConfig>
    <Rules>
	<FireRule>
	  <Variable name="variableName" value="value"/>
	  ...
	  </FireRule>
	  <ResetRule>
	  <Variable name="variableName" value="value"/>
	  ...
	  </ResetRule>		
    </Rules>
</almRuleConfig>

© 2023 Digi International Inc. All rights reserved.

List All Templates

The following sample request retrieves a list of all alarm templates for your Remote Manager host.

Request

GET ws/AlarmTemplate

Response

<?xml version="1.0" encoding="ISO-8859-1"?>
<result>
   <resultTotalRows>11</resultTotalRows>
   <requestedStartRow>0</requestedStartRow>
   <resultSize>11</resultSize>
   <requestedSize>1000</requestedSize>
   <remainingSize>0</remainingSize>

Alarm template ID 2: Device offline

  <AlarmTemplate>
    <almtId>2</almtId>
    <almtName>Device Offline</almtName>
    <almtDescription>Detects when a device disconnects from Remote Manager and fails to reconnected</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.DeviceOffline</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">          
          <Variable name="reconnectWindowDuration" type="int"/>
        </FireRule>
        <ResetRule name="resetRule1">          
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DeviceCore,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 3: XBeeNode offline

  <AlarmTemplate>
    <almtId>3</almtId>
    <almtName>XBeeNode Offline</almtName>
    <almtDescription>Detects when an XBee Node disconnects from Remote Manager and fails to reconnect</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.XBeeNodeOffline</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
        <Scope name="XbeeNode"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">          
          <Variable name="reconnectWindowDuration" type="int"/>
        </FireRule>
        <ResetRule name="resetRule1">          
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>XbeeCore,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 4: Device excessive disconnects

  <AlarmTemplate>
    <almtId>4</almtId>
    <almtName>Device Excessive Disconnects</almtName>
    <almtDescription>Detects devices with an excessive number of disconnects.</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.DeviceExcessiveDisconnect</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">          
          <Variable name="disconnectCount" type="int"/>
          <Variable name="disconnectWindow" type="int"/>
        </FireRule>
        <ResetRule name="resetRule1">          
          <Variable name="reconnectWindow" type="int"/>
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DeviceCore,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 5: XBeeNode excessive deactivations

  <AlarmTemplate>
    <almtId>5</almtId>
    <almtName>XBeeNode Excessive Deactivations</almtName>
    <almtDescription>Detects XBeeNodes with an excessive number of deactivations.</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.XBeeNodeExcessiveDeactivation</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
        <Scope name="XbeeNode"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">          
          <Variable name="deactivationCount" type="int"/>
          <Variable name="deactivationWindow" type="int"/>
        </FireRule>
        <ResetRule name="resetRule1">          
          <Variable name="activationWindow" type="int"/>
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>XbeeCore,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 6: DIA channel data point condition match

  <AlarmTemplate>
    <almtId>6</almtId>
    <almtName>Dia channel data point condition match</almtName>
    <almtDescription>Detects dia channel condition</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.DiaChannelDataPoint</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">          
          <Variable name="instanceName" type="string"/>
          <Variable name="channelName" type="string"/>
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">          
          <Variable name="instanceName" type="string"/>
          <Variable name="channelName" type="string"/>
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 7: Smart energy data point condition match

  <AlarmTemplate>
    <almtId>7</almtId>
    <almtName>Smart energy data point condition match</almtName>
    <almtDescription>Detects smart energy data point condition</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.XbeeAttributeDataPoint</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>				
        <Scope name="XbeeNode"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">
          <Variable name="endpointId" type="string"/>
          <Variable name="clusterType" type="string"/>
          <Variable name="clusterId" type="string"/>
          <Variable name="attributeId" type="string"/>
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">
          <Variable name="endpointId" type="string"/>
          <Variable name="clusterType" type="string"/>
          <Variable name="clusterId" type="string"/>
          <Variable name="attributeId" type="string"/>
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 8: Subscription usage

  <AlarmTemplate>
    <almtId>8</almtId>
    <almtName>Subscription Usage</almtName>
    <almtDescription>Fires when subscription usage exceeds a certain threshold</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.SubscriptionUsage</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Global"/>
        <Scope name="Device"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1" uiView="SubscriptionFireRule">
          <Variable name="svcId" type="int"/>
          <Variable name="thresholdValue" type="numeric"/>
          <Variable name="metric" type="string"/>
          <Variable name="unit" type="string"/>
        </FireRule>
        <ResetRule name="resetRule1">
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>SubscriptionUseCore,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 9: Data point condition

  <AlarmTemplate>
    <almtId>9</almtId>
    <almtName>DataPoint condition</almtName>
    <almtDescription>Fires when data point usage conditions given below is met</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.DataPointConditionMatch</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Resource"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <FireRule name="fireRule1">
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">
          <Variable name="type" type="enum">
            <Value desc="Numeric" value="numeric"/>
            <Value desc="String" value="string"/>
          </Variable>
          <Variable name="operator" type="enum">
            <Value desc="&gt;" value="&gt;"/>
            <Value desc="&gt;=" value="&gt;="/>
            <Value desc="&lt;" value="&lt;"/>
            <Value desc="&lt;=" value="&lt;="/>
            <Value desc="=" value="="/>
            <Value desc="!=" value="&lt;&gt;"/>
          </Variable>
          <Variable name="thresholdValue" type="string"/>
          <Variable name="timeout" type="int"/>
          <Variable name="timeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 10: Missing data point

  <AlarmTemplate>
    <almtId>10</almtId>
    <almtName>Missing DataPoint</almtName>
    <almtDescription>Fires when a data points are not reported within the specified time</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.MissingDataPoint</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Resource"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <Description>Note: Alarm will not be registered until the first DataPoint is sent after the Alarm is created or edited.</Description>
        <FireRule name="fireRule1">
          <Variable name="uploadInterval" type="int"/>
          <Variable name="uploadTimeUnit" type="enum">
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
          <Variable name="readingInterval" type="int"/>
          <Variable name="readingTimeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 11: Missing DIA channel data point

  <AlarmTemplate>
    <almtId>11</almtId>
    <almtName>Missing DiaChannel DataPoint</almtName>
    <almtDescription>Fires when devices have not reported DIA channel data within the specified time</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.MissingDiaChannelDataPoint</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <Description>Note: Alarm will not be registered until the first DataPoint is sent after the Alarm is created or edited.</Description>
        <FireRule name="fireRule1">
          <Variable name="instanceName" type="string"/>
          <Variable name="channelName" type="string"/>
          <Variable name="uploadInterval" type="int"/>
          <Variable name="uploadTimeUnit" type="enum">
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
          <Variable name="readingInterval" type="int"/>
          <Variable name="readingTimeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>

Alarm template ID 12: Missing smart energy data point

  <AlarmTemplate>
    <almtId>12</almtId>
    <almtName>Missing Smart Energy DataPoint</almtName>
    <almtDescription>Fires when devices have not reported Smart Energy data within the specified time</almtDescription>
    <grpId>1</grpId>
    <almtTopic>Alarm.MissingSmartEnergyDataPoint</almtTopic>
    <almtScopeOptions>
      <ScopingOptions>
        <Scope name="Group"/>
        <Scope name="Device"/>				
        <Scope name="XbeeNode"/>
      </ScopingOptions>
    </almtScopeOptions>
    <almtRules>
      <Rules>
        <Description>Note: Alarm will not be registered until the first DataPoint is sent after the Alarm is created or edited.</Description>
        <FireRule name="fireRule1">
          <Variable name="endpointId" type="string"/>
          <Variable name="clusterType" type="string"/>
          <Variable name="clusterId" type="string"/>
          <Variable name="attributeId" type="string"/>
          <Variable name="uploadInterval" type="int"/>
          <Variable name="uploadTimeUnit" type="enum">
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
          <Variable name="readingInterval" type="int"/>
          <Variable name="readingTimeUnit" type="enum">
            <Value desc="Seconds" value="seconds"/>
            <Value desc="Minutes" value="minutes"/>
            <Value desc="Hours" value="hours"/>
          </Variable>
        </FireRule>
        <ResetRule name="resetRule1">
        </ResetRule>
      </Rules>
    </almtRules>
    <almtResourceList>DataPoint,AlarmStatus</almtResourceList>
  </AlarmTemplate>