# Alarm data integration

**URL:** <https://forum.inductiveautomation.com/t/alarm-data-integration/17544>\
**Category:** Ignition\
**Created:** [March 29, 2018, 7:01am UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544 "2018-03-29T07:01:50Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![lari.vaananen](https://avatars.discourse-cdn.com/v4/letter/l/bc79bd/32.png) [@lari.vaananen](https://forum.inductiveautomation.com/u/lari.vaananen)\
**Post date:** [March 29, 2018, 7:01am UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/1 "2018-03-29T07:01:50Z")

</div>

Is it possible to read out and acknowledge alarms outside from Ignition gateway? With the OPC UA or with some other interface?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [March 29, 2018, 12:32pm UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/2 "2018-03-29T12:32:17Z")

</div>

You could expose a web API to do this using the Web Dev module.

---

<div class="post-metadata">

**Author:** ![lari.vaananen](https://avatars.discourse-cdn.com/v4/letter/l/bc79bd/32.png) [@lari.vaananen](https://forum.inductiveautomation.com/u/lari.vaananen)\
**Post date:** [April 4, 2018, 9:52am UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/3 "2018-04-04T09:52:04Z")

</div>

That is a good idea, thank you. With a quick walkthrough it seems quite easy to do python scripting for returning alarm data within web API calls. And acknowledge alarms also.

Web Dev module is not included in trial version of Ignition, is it possible to install afterwards as a free trial?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [April 4, 2018, 12:37pm UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/4 "2018-04-04T12:37:14Z")

</div>

> [@lari.vaananen](#):
>
> Web Dev module is not included in trial version of Ignition, is it possible to install afterwards as a free trial?

Yes, all of the modules IA provides honor the 2-hour trial system. And I'm not aware of any 3rd party modules that don't.

---

<div class="post-metadata">

**Author:** ![R.Alamsha](https://avatars.discourse-cdn.com/v4/letter/r/e5b9ba/32.png) [@R.Alamsha](https://forum.inductiveautomation.com/u/R.Alamsha)\
**Post date:** [April 5, 2018, 6:00am UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/5 "2018-04-05T06:00:24Z")

</div>

I think, this example can help you to find a better solution.

> **[ductsoup/forecast-io-ignition](https://github.com/ductsoup/forecast-io-ignition)**
>
> A forecast.io API script for Inductive Automation's Ignition product - ductsoup/forecast-io-ignition

---

<div class="post-metadata">

**Author:** ![lari.vaananen](https://avatars.discourse-cdn.com/v4/letter/l/bc79bd/32.png) [@lari.vaananen](https://forum.inductiveautomation.com/u/lari.vaananen)\
**Post date:** [April 18, 2018, 7:14am UTC](https://forum.inductiveautomation.com/t/alarm-data-integration/17544/6 "2018-04-18T07:14:14Z")

</div>

Thank you for tips and links.  
Simple and efficient way could be also using pure Tcp connection, and some binary protocol.

import SocketServer  
import time

class MyTCPHandler(SocketServer.BaseRequestHandler):

```
def handle(self):
	self.data = self.request.recv(1024).strip()
	print self.data
	#read data from connection, parameters f.ex.
	#and here alarm data could be read and sent to active connection
	self.request.send(self.data.upper())
	time.sleep(2)
	#connection is closed after sending data back, in this example

```

print “starting”   
server = SocketServer.TCPServer((“192.168.1.19”, 2345), MyTCPHandler)  
server.serve\_forever()
