Skip to main content

Usage

Alarm Pipeline

Add a Notification Block with a Telegram profile in your Alarm Pipeline.

Notification Block Parameters

ParameterTypeDefaultDescription
MessageExpressionSee belowContent of the message to send
Throttled MessageExpressionSee belowMessage when multiple alarm events are batched
AcknowledgeBooleanfalseAdd inline button for alarm acknowledgment
Test ModeBooleanfalseLog messages instead of sending (for debugging)

Message Templates

Expression Syntax

Message fields support Ignition's expression syntax, allowing dynamic content based on alarm properties.

Default Message:

At {eventTime|hh:mm:ss}, alarm "{name}" at "{displayPath}" transitioned to {eventState}.

Default Throttled Message:

{alarmEvents.Count} alarm events have occurred.

Available Variables

VariableDescriptionExample
{name}Alarm nameHigh Temperature
{displayPath}Alarm source pathFurnace/Zone1/TempSensor
{eventTime|format}Event timestamp with format{eventTime|hh:mm:ss}
{eventState}Alarm stateActive, Cleared, Acknowledged
{alarmEvents.Count}Number of throttled events5
{priority}Alarm priorityHigh, Medium, Low
{label}Alarm labelTemperature Alarm

HTML Formatting

Telegram messages support HTML formatting:

<b>ALARM:</b> {name}
<i>Path:</i> {displayPath}
<code>State: {eventState}</code>

Supported tags: <b>, <i>, <u>, <s>, <code>, <pre>, <a href="...">

Message Examples

Simple notification:

ALARM: {name} is {eventState} at {eventTime|HH:mm}

Formatted notification:

<b>[{priority}]</b> {name}
<i>{displayPath}</i>
State: <code>{eventState}</code>
Time: {eventTime|yyyy-MM-dd HH:mm:ss}

Interactive Acknowledgment

When Acknowledge is enabled, an inline button is added to each notification message.

How It Works

  1. User receives Telegram message with "Acknowledge" button
  2. User taps the button
  3. The module acknowledges the alarm in Ignition
  4. The button updates to show "Acknowledged by [username]"
  5. A popup confirms the action

Acknowledgment Details

  • Buttons remain active for 24 hours after notification
  • The acknowledging user is recorded in Ignition's alarm journal
  • Only single-alarm notifications show the acknowledgment button (not throttled messages)
  • No webhook configuration required - uses long-polling

Throttled Notifications

When multiple alarms trigger in quick succession:

  • Alarms are consolidated into a single message
  • The Throttled Message template is used
  • Acknowledgment buttons are not shown for throttled messages
  • Use {alarmEvents.Count} to show the number of events

Test Mode

Enable Test Mode to validate your configuration without sending actual messages.

Behavior in test mode:

  • Messages are logged to the gateway console
  • No Telegram API calls are made
  • Useful for debugging message templates

Log output example:

THIS PROFILE IS RUNNING IN TEST MODE. The following WOULD have been sent:
Message: ALARM: High Temperature is Active at 14:32:15
With Acknowledgment Button: true

Audit Logging

When an audit profile is configured, all notification events are logged.

Logged information:

  • Action: "Telegram Message"
  • Actor: Ignition username receiving the notification
  • Target: Alarm event path with ID
  • Value: "SUCCESS" or "FAILURE"
  • Timestamp

Troubleshooting

IssuePossible CauseSolution
Messages not receivedInvalid Chat IDVerify Chat ID in user contact info
Messages not receivedBot not startedUser must send /start to the bot first
Messages not receivedTest mode enabledDisable Test Mode in notification block
Acknowledgment not workingButton expiredButtons expire after 24 hours
Acknowledgment not workingPoller stoppedCheck gateway logs for errors
HTML not renderingInvalid tagsUse only supported HTML tags

Best Practices

  1. Test first - Use Test Mode to validate templates before going live
  2. Start the bot - Ensure all users have started a conversation with the bot
  3. Use groups wisely - For team notifications, create a dedicated Telegram group
  4. Enable auditing - Configure an audit profile for compliance and troubleshooting
  5. Keep messages concise - Telegram has a 4096 character limit per message
  6. Use HTML sparingly - Complex formatting may not render on all clients