diff --git a/config/config.template.ini b/config/config.template.ini
index 065650f..950f91c 100644
--- a/config/config.template.ini
+++ b/config/config.template.ini
@@ -67,8 +67,10 @@ filter_range_end = 9999999
[Plugins]
#can take on or off the plugins (0|1)
MySQL = 0
-BosMon = 0
httpRequest = 0
+eMail = 0
+BosMon = 0
+firEmergency = 0
# for developing template-module
template = 0
@@ -86,20 +88,6 @@ tableZVEI = bos_zvei
tablePOC = bos_pocsag
-[BosMon]
-#Server as IP of DNS-Name (without http://)
-#actually no ssl supported
-bosmon_server = 192.168.0.1
-bosmon_port = 80
-
-#channel-name of typ "Web-Telegramm"
-bosmon_channel = channel
-
-#Use this, when BosMon has restricted access
-bosmon_user =
-bosmon_password =
-
-
[httpRequest]
#URL without http://
@@ -125,6 +113,25 @@ zvei_url =
poc_url =
+[BosMon]
+#Server as IP of DNS-Name (without http://)
+#actually no ssl supported
+bosmon_server = 192.168.0.1
+bosmon_port = 80
+
+#channel-name of typ "Web-Telegramm"
+bosmon_channel = channel
+
+#Use this, when BosMon has restricted access
+bosmon_user =
+bosmon_password =
+
+
+[firEmergency]
+firserver = localhost
+firport = 9001
+
+
#####################
##### Not ready yet #
#####################
diff --git a/plugins/firEmergency/firEmergency.py b/plugins/firEmergency/firEmergency.py
new file mode 100644
index 0000000..3b2a4b2
--- /dev/null
+++ b/plugins/firEmergency/firEmergency.py
@@ -0,0 +1,93 @@
+#!/usr/bin/python
+# -*- coding: cp1252 -*-
+
+"""
+firEmergency-Plugin to dispatch ZVEI- and POCSAG - messages to firEmergency
+
+@autor: Smith-fms
+
+@requires: firEmergency-Configuration has to be set in the config.ini
+"""
+
+import logging # Global logger
+import socket
+
+from includes import globals # Global variables
+
+##
+#
+# Main function of firEmergency-plugin
+# will be called by the alarmHandler
+#
+def run(typ,freq,data):
+ """
+ This function is the implementation of the firEmergency-Plugin.
+ It will send the data to an firEmergency-Instance.
+
+ The configuration for the firEmergency-Connection is set in the config.ini.
+
+ @type typ: string (ZVEI|POC)
+ @param typ: Typ of the dataset for sending to firEmergency
+ @type data: map of data (structure see interface.txt)
+ @param data: Contains the parameter for dispatch to firEmergency.
+ @type freq: string
+ @keyword freq: frequency is not used in this plugin
+
+ @requires: firEmergency-Configuration has to be set in the config.ini
+
+ @return: nothing
+ @exception: Exception if ConfigParser failed
+ @exception: Exception ifconnect to firEmergency failed
+ @exception: Exception if sending the data failed
+ """
+ try:
+ #
+ #ConfigParser
+ #
+ logging.debug("reading config file")
+ try:
+ for key,val in globals.config.items("firEmergency"):
+ logging.debug(" - %s = %s", key, val)
+ except:
+ logging.exception("cannot read config file")
+
+ try:
+ #
+ # connect to firEmergency
+ #
+ firSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ firSocket.connect((globals.config.get("firEmergency", "firserver"), globals.config.getint("firEmergency", "firport")))
+ except:
+ logging.exception("cannot connect to firEmergency")
+ else:
+ #
+ # Format given data-structure to xml-string for firEmergency
+ #
+ if typ == "FMS":
+ logging.debug("FMS not supported by firEmgency")
+
+ elif typ == "ZVEI":
+ logging.debug("ZVEI to firEmergency")
+ try:
+ firXML = "\n"+data["zvei"]+"\n"+data["zvei"]+" alarmiert.\n\n"
+ firSocket.send(firXML)
+ except:
+ logging.exception("ZVEI to firEmergency failed")
+
+ elif typ == "POC":
+ logging.debug("POC to firEmergency")
+ try:
+ firXML = "\n"+data["ric"]+"\n"+data["msg"]+"\n\n"
+ firSocket.send(firXML)
+ except:
+ logging.exception("POC to firEmergency failed")
+
+ else:
+ logging.warning("Invalid Typ: %s", typ)
+
+ finally:
+ logging.debug("close firEmergency-Connection")
+ firSocket.close()
+
+ except:
+ logging.exception("unknown error")
\ No newline at end of file