Serial data transmission from Tyco MX4000 to evalink talos

Serial Data from Tyco MX4000 panel to evalink talos using ipTNA4i transmitter


In this article we will describe how to interpret the serial data from a Tyco MX4000 panel in evalink talos and how to extract the useful information for further actions.



The panel we have is a Tyco MX4000 which provides serial data to evalink talos. The particularities here are:
- the panel is sending an initial message with an ID and then the next three messages include more alarm details
- each message is one line (one CR LF at the end)
- different events with the relevant information are not separated with four CR LF characters, as usual in other panels
- information messages arrive as different messages during some seconds (in a form of different alarms)

What we need to do, is to identify the initial message and then read the following alarms to extract the useful information.


Triggering the Workflow

As a first step, we need to trigger a Workflow to handle the incoming data. The alarm-code used is "DATA". Since the panel is sending serial data quite often, we need to filter the incoming alarms and handle only those that contain the information useful to us.
For this, we use the Alarm Expression Syntax. More specifically, as an "Incoming Alarm" condition in our Workflow we use Expression with value "DATA { payload = *Message-ID* }"

  1. DATA : the alarm code we use
  2. payload = *Message-ID* : the alarm's payload should contain the message "Message-ID"
More information on Alarm Expression Syntax in the evalink documentation here: https://documentation.evalink.io/talos/admin/advanced-features-in-evalink-talos/alarm-expression-syntax


Retrieving Alarms

After the workflow is triggered, we need to wait some seconds and then retrieve similar "DATA" alarms in order to access their payload.
The placeholder {{ alarm.alarmStoredTimestamp }}  contains the timestamp of the initial alarm. In order to wait two more seconds, we need to add 2 times of 1000 milliseconds.
The result is {{ alarm.alarmStoredTimestamp + 2 * 1000 }} .




Searching for the information inside the retrieved alarms

Next step is to Check Condition of the alarms retrieved. We use a Regular Expression for that:
  1. retrieveAlarms.alarms | get("$[0:4]") | get("$[?(@.payload =~ /.*(FIRE|ERROR|FIRE PRESSURE|NO RESPONSE|ERRORTO|ERRORTHREE|ERRORFIVE).*/s)]") | length > 0

Expanded:
  1. retrieveAlarms.alarms
  2.   | get("$[0:4]")
  3.   | get("$[?(@.payload =~ /.*(FIRE|ERROR|FIRE PRESSURE|NO RESPONSE|ERRORTWO|ERRORTHREE|ERRORFIVE).*/s)]")
  4.   | length > 0
line 1: from the retrieved data, keep the alarms
line 2: get only the first 5 alarms (from 0 to 4)
line 3: if the payload matches any of the words FIRE, ERROR, FIRE PRESSURE, NO RESPONSE, ERRORTWO, ERRORTHREE, ERRORFIVE
line 4: keep those alarms


Notifying the customer

The last step is to send an SMS to the customer using the Twilio SMS Notifications integration in evalink talos.
The SMS will contain the information extracted from the previous steps (from the DATA alarms).

The SMS test is the following:
  1. Signal received from
  2. {{ address }}
  3. {% for i in [2, 3] %}
  4.     {{ retrieveAlarms.alarms[i].payload | trim }}
  5. {% endfor  %}
  6. evalink talos
line 1: intro message "Signal received from"
line 2: {{ address }} is the customer's Site address (as configured in evalink talos)
line 3: starting a for loop through the messages in received in line 2 & line 3 (line 1 has the ID and line 4 the message category)
line 4: write the alarm's payload message
line 5: closing the for loop
line 6: signature "evalink talos"


    • Related Articles

    • Different Workflows for Multiple Receivers under one Site in evalink talos

      In this article, we are going to describe how to distinguish between multiple receivers within one site and execute a different workflow for every alarm triggered by each receiver.   If several transmitters of the same type are connected to a site, ...
    • Failed to export PDF in evalink talos

      In this article, we are going to explain how a Windows OS setting can affect the PDF export in evalink talos and how you can fix this issue. Problem description When you try to export a PDF report in evalink talos and you see a message "Failed to ...
    • Change the email used to log in your evalink talos tenant

      In this article we will explain how to change your email used for logging in evalink talos. Problem Description You need to change the email address you use to log in evalink talos. Solution There is no direct way for a user to change the email ...
    • Migrate from 'DC09 ARC Connection' to the 'Alarm Dispatcher' in evalink talos

      In this article, we are going to describe how to migrate from DC09 ARC Connection to the Alarm Dispatcher. The DC09 ARC Connection integration will soon be decommissioned from evalink talos. The replacement is the Alarm Dispatcher, an integrated tool ...
    • Twilio integration - How many numbers do I need?

      In this article, we are going to explain how many Twilio numbers do we need per integration and which is the correct format to write a phone number in evalink talos. How many numbers do I need? evalink talos has four (4) Twilio-related integrations: ...