Alarmgong, Alarmlicht und Hoftor Steuerung
This commit is contained in:
@ -1,2 +1,2 @@
|
||||
String REMCAM001Record "Aufzeichnung Starten" (gHistory) { http="<[http://10.112.30.31/control/control?read§ion=recording&recording_activ{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}:60000:REGEX(recording_activ=(.*))] >[enable:GET:http://10.112.30.31/control/control?set§ion=recording&recording_activ=enable{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}] >[disable:GET:http://10.112.30.31/control/control?set§ion=recording&recording_activ=disable{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}]" }
|
||||
String REMCAM002Record "Aufzeichnung Starten" (gHistory) { http="<[http://10.112.30.32/control/control?read§ion=recording&recording_activ{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}:60000:REGEX(recording_activ=(.*))] >[enable:GET:http://10.112.30.32/control/control?set§ion=recording&recording_activ=enable{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}] >[disable:GET:http://10.112.30.32/control/control?set§ion=recording&recording_activ=disable{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}]" }
|
||||
Switch REMCAM001Record "Aufzeichnung Starten" (gHistory) { http="<[http://10.112.30.31/control/control?read§ion=recording&recording_activ{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}:60000:REGEX(recording_activ=(.*))] >[ON:GET:http://10.112.30.31/control/control?set§ion=recording&recording_activ=enable{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}] >[OFF:GET:http://10.112.30.31/control/control?set§ion=recording&recording_activ=disable{Authorization=Basic YWRtaW46cnQ4cWZmOHBwa21hODJienhxMnZjeTNtMw==}]" }
|
||||
Switch REMCAM002Record "Aufzeichnung Starten" (gHistory) { http="<[http://10.112.30.32/control/control?read§ion=recording&recording_activ{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}:60000:REGEX(recording_activ=(.*))] >[ON:GET:http://10.112.30.32/control/control?set§ion=recording&recording_activ=enable{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}] >[OFF:GET:http://10.112.30.32/control/control?set§ion=recording&recording_activ=disable{Authorization=Basic YWRtaW46cGRncWE2MnY0ZjRiZDl0cm12cDd6N3Q4OA==}]" }
|
13
rules/Cron.rules
Normal file
13
rules/Cron.rules
Normal file
@ -0,0 +1,13 @@
|
||||
rule "Funktionsüberprüfung exception ON"
|
||||
when
|
||||
Time cron "0 55 12 ? * SAT#1"
|
||||
then
|
||||
FunctioncheckSwitch.sendCommand(ON)
|
||||
end
|
||||
|
||||
rule "Funktionsüberprüfung exception OFF"
|
||||
when
|
||||
Time cron "0 5 13 ? * SAT#1"
|
||||
then
|
||||
FunctioncheckSwitch.sendCommand(OFF)
|
||||
end
|
@ -8,7 +8,7 @@ then
|
||||
sendPushoverMessage(pushoverBuilder("Abfrage Erfolgt").withSound("siren").withUser("u8s32g4yym8xbk7yqn66cokjys13mf"))
|
||||
var String jsonString = sendHttpGetRequest("https://fms.ffhstm.de/dienste_lesen_json.php")
|
||||
postUpdate(FFDienstZVD,transform("JSONPATH", "$.DIENSTE.C", jsonString))
|
||||
postUpdate(FFDienstIUK2,transform("JSONPATH", "$.DIENSTE.D", jsonString))
|
||||
postUpdate(FFDienstIUK2,transform("JSONPATH", "$.DIENSTE.D1", jsonString))
|
||||
postUpdate(FFDienstIUK3,transform("JSONPATH", "$.DIENSTE.E", jsonString))
|
||||
var String IUKN = transform("JSONPATH", "$.DIENSTE.F", jsonString)
|
||||
if (!IUKN.contains("DIENSTE")) {
|
||||
|
@ -34,7 +34,7 @@ then
|
||||
postUpdate(FFAlarmMeldender,transform("JSONPATH", "$.Meldender", FFAlarmJSON.state.toString))
|
||||
logInfo("FFAlarmJSON","Vor FFAlarmEinsatzmittel")
|
||||
postUpdate(FFAlarmEinsatzmittel,transform("JSONPATH","$.Einsatzmittel",FFAlarmJSON.state.toString))
|
||||
logInfo("FFAlarmJSON","Vor ")
|
||||
logInfo("FFAlarmJSON","Vor Alarmtrigger")
|
||||
postUpdate(FFAlarmTrigger,transform("JSONPATH","$.AlarmTrigger",FFAlarmJSON.state.toString))
|
||||
end
|
||||
|
||||
@ -42,16 +42,20 @@ rule "FFR Alarm Logik"
|
||||
when
|
||||
Item FFAlarmTrigger changed to ON
|
||||
then
|
||||
if (FFRAlarmTimer === null) {
|
||||
if (FFAlarmTimer === null) {
|
||||
postUpdate(FFAlarmView,"ON")
|
||||
postUpdate(FHZPush,"ON")
|
||||
postUpdate(REMCAM001Record,"ON")
|
||||
postUpdate(REMCAM002Record,"ON")
|
||||
REMWEBIO001_Ausgang5.sendCommand(ON)
|
||||
REMWEBIO001_Ausgang6.sendCommand(ON)
|
||||
// postUpdate(REMCAM001Record,"ON")
|
||||
// postUpdate(REMCAM002Record,"ON")
|
||||
sendHttpGetRequest("http://admin:rt8qff8ppkma82bzxq2vcy3m3@10.112.30.31/control/rcontrol?action=sound&soundfile=q96_feuer2&speakerlevel=30")
|
||||
sendHttpGetRequest("http://admin:pdgqa62v4f4bd9trmvp7z7t88@10.112.30.32/control/rcontrol?action=sound&soundfile=q96_feuer2&speakerlevel=30")
|
||||
FFAlarmTimer = createTimer(now.plusMinutes(60)) [|
|
||||
postUpdate(FFAlarmTrigger,"OFF")
|
||||
postUpdate(FHZPush,"OFF")
|
||||
postUpdate(REMCAM001Record,"OFF")
|
||||
postUpdate(REMCAM002Record,"OFF")
|
||||
// postUpdate(REMCAM001Record,"OFF")
|
||||
// postUpdate(REMCAM002Record,"OFF")
|
||||
FFAlarmTimer.cancel()
|
||||
FFAlarmTimer = null
|
||||
]
|
||||
@ -64,28 +68,42 @@ when
|
||||
then
|
||||
postUpdate(FHZPush,"OFF")
|
||||
postUpdate(FFAlarmView,"OFF")
|
||||
// postUpdate(REMCAM001Record,"OFF")
|
||||
// postUpdate(REMCAM002Record,"OFF")
|
||||
end
|
||||
|
||||
rule "Alarmschleifen Auswertung"
|
||||
when
|
||||
Item FFAlarmSchleife received update
|
||||
then
|
||||
// val telegramActionProd = getActions("telegramActionProd","telegram:telegramBot:11a46758")
|
||||
// val telegramActionDEV = getActions("telegram","telegram:telegramBot:a0986dc8")
|
||||
logInfo("Alarmschleife", "Alarmschleife wurde aktualisiert")
|
||||
switch(FFAlarmSchleife.state.toString) {
|
||||
case "57459": {
|
||||
logInfo("Alarmschleife", "Vollalarm Rembrücken und Heusenstamm")
|
||||
postUpdate(FFAlarmTrigger,"ON")
|
||||
sendPushoverMessage(pushoverBuilder("Vollalarm Rembrücken und Heusenstamm").withSound("siren").withPriority(1))
|
||||
sendPushoverMessage(pushoverBuilder("Vollalarm Rembrücken und Heusenstamm").withSound("siren").withPriority(1).withUser("upgb55kps8rx2xotn7dvdg3w2yjpt6"))
|
||||
// telegramActionProd.sendTelegram("Alarmschleife hat ausgelöst: Vollalarm Rembrücken und Heusenstamm")
|
||||
// telegramActionDEV.sendTelegram("Alarmschleife hat ausgelöst: Vollalarm Rembrücken und Heusenstamm")
|
||||
}
|
||||
case "57449": {
|
||||
logInfo("Alarmschleife", "Einsatz für den ELW")
|
||||
postUpdate(FFAlarmTrigger,"ON")
|
||||
sendPushoverMessage(pushoverBuilder("Einsatz für den ELW").withSound("siren").withPriority(1))
|
||||
sendPushoverMessage(pushoverBuilder("Einsatz für den ELW").withSound("siren").withPriority(1).withUser("upgb55kps8rx2xotn7dvdg3w2yjpt6"))
|
||||
// telegramActionProd.sendTelegram("Alarmschleife hat ausgelöst: Einsatz für den ELW")
|
||||
// telegramActionDEV.sendTelegram("Alarmschleife hat ausgelöst: Einsatz für den ELW")
|
||||
}
|
||||
case "57455": {
|
||||
logInfo("Alarmschleife", "Vollalarm Rembrücken")
|
||||
postUpdate(FFAlarmTrigger,"ON")
|
||||
sendPushoverMessage(pushoverBuilder("Vollalarm Rembrücken").withSound("siren").withPriority(1))
|
||||
sendPushoverMessage(pushoverBuilder("Vollalarm Rembrücken").withSound("siren").withPriority(1).withUser("upgb55kps8rx2xotn7dvdg3w2yjpt6"))
|
||||
// telegramActionProd.sendTelegram("Alarmschleife hat ausgelöst: Vollalarm Rembrücken")
|
||||
// telegramActionDEV.sendTelegram("Alarmschleife hat ausgelöst: Vollalarm Rembrücken")
|
||||
}
|
||||
case "57451": {
|
||||
logInfo("Alarmschleife", "Vollalarm Heusenstamm")
|
||||
sendPushoverMessage(pushoverBuilder("Vollalarm Heusenstamm").withSound("siren").withPriority(0).withUser("upgb55kps8rx2xotn7dvdg3w2yjpt6"))
|
||||
}
|
||||
}
|
||||
end
|
||||
@ -98,7 +116,7 @@ Thread::sleep(300)
|
||||
if (!lockState.isLocked) {
|
||||
lockState.lock()
|
||||
try {
|
||||
logInfo("Testing","gNetwork received update")
|
||||
logInfo("GroupTest","gFHZ received update")
|
||||
val member = gFHZ.members.filter[d | d.lastUpdate("jdbc") !== null].sortBy[lastUpdate("jdbc")].last
|
||||
val name = member.label.toString
|
||||
if (FFAlarmTrigger.state == ON && member.state.toString == "3") {
|
||||
|
92
rules/REMWEBIO001.rules
Normal file
92
rules/REMWEBIO001.rules
Normal file
@ -0,0 +1,92 @@
|
||||
rule "Steuerung Tor 1"
|
||||
when
|
||||
Item REMWEBIO001_Ausgang0 changed to ON
|
||||
then
|
||||
Thread::sleep(1000)
|
||||
REMWEBIO001_Ausgang0.sendCommand(OFF)
|
||||
end
|
||||
|
||||
rule "MTF 1 (3-19-1) - Status 2"
|
||||
when
|
||||
Item FFStatus67641319 changed to 2
|
||||
then
|
||||
if( StartupSwitch.state == ON && FunctioncheckSwitch.state!=ON ) {
|
||||
REMWEBIO001_Ausgang0.sendCommand(ON)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Steuerung Tor 2"
|
||||
when
|
||||
Item REMWEBIO001_Ausgang1 changed to ON
|
||||
then
|
||||
Thread::sleep(1000)
|
||||
REMWEBIO001_Ausgang1.sendCommand(OFF)
|
||||
end
|
||||
|
||||
rule "LF 8/6-1 (3-42-1) - Status 2"
|
||||
when
|
||||
Item FFStatus67641342 changed to 2
|
||||
then
|
||||
if( StartupSwitch.state == ON && FunctioncheckSwitch.state!=ON ) {
|
||||
REMWEBIO001_Ausgang1.sendCommand(ON)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Steuerung Tor 3"
|
||||
when
|
||||
Item REMWEBIO002_Ausgang2 changed to ON
|
||||
then
|
||||
Thread::sleep(1000)
|
||||
REMWEBIO001_Ausgang2.sendCommand(OFF)
|
||||
end
|
||||
|
||||
rule "LF 8/6-2 (3-42-2) - Status 2"
|
||||
when
|
||||
Item FFStatus67641349 changed to 2
|
||||
then
|
||||
if( StartupSwitch.state == ON && FunctioncheckSwitch.state!=ON ) {
|
||||
REMWEBIO001_Ausgang2.sendCommand(ON)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Steuerung Tor 4"
|
||||
when
|
||||
Item REMWEBIO001_Ausgang3 changed to ON
|
||||
then
|
||||
Thread::sleep(1000)
|
||||
REMWEBIO001_Ausgang3.sendCommand(OFF)
|
||||
end
|
||||
|
||||
rule "MTF 2 (3-19-2) - Status 2"
|
||||
when
|
||||
Item FFStatus67641317 changed to 2
|
||||
then
|
||||
if( StartupSwitch.state == ON && FunctioncheckSwitch.state!=ON ) {
|
||||
REMWEBIO001_Ausgang4.sendCommand(ON)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Steuerung Tor 5"
|
||||
when
|
||||
Item REMWEBIO001_Ausgang4 changed to ON
|
||||
then
|
||||
Thread::sleep(1000)
|
||||
REMWEBIO001_Ausgang4.sendCommand(OFF)
|
||||
end
|
||||
|
||||
rule "RW1 (3-51-1) - Status 2"
|
||||
when
|
||||
Item FFStatus67641351 changed to 2
|
||||
then
|
||||
if( StartupSwitch.state == ON && FunctioncheckSwitch.state!=ON ) {
|
||||
REMWEBIO001_Ausgang5.sendCommand(ON)
|
||||
}
|
||||
end
|
||||
|
||||
rule "Steuerung Alarmlicht & Gong"
|
||||
when
|
||||
Item REMWEBIO001_Ausgang5 changed to ON
|
||||
then
|
||||
Thread::sleep(6000)
|
||||
REMWEBIO001_Ausgang5.sendCommand(OFF)
|
||||
end
|
11
rules/SystemStart.rules
Normal file
11
rules/SystemStart.rules
Normal file
@ -0,0 +1,11 @@
|
||||
var Timer StartupTimer = null
|
||||
|
||||
rule "Startup Message"
|
||||
when
|
||||
System started
|
||||
then
|
||||
logInfo("SystemStart.rules", "Create timer for Systemstartup & Restore")
|
||||
StartupTimer = createTimer(now.plusSeconds(30), [|
|
||||
StartupSwitch.postUpdate(ON)
|
||||
])
|
||||
end
|
@ -79,6 +79,14 @@ sitemap default label="Feuerwehr Rembrücken" {
|
||||
Text item=FFStatus67641259 label="GW-U (2-59-1) [MAP(status.map):%s]" icon="" valuecolor=["1"="#31CF31", "2"="#31CF31", "3"="#FF8E00", "4"="#840000", "6"="#000000"]
|
||||
Text item=FFStatus67641272 label="GW-N (2-64-1) [MAP(status.map):%s]" icon="" valuecolor=["1"="#31CF31", "2"="#31CF31", "3"="#FF8E00", "4"="#840000", "6"="#000000"]
|
||||
}
|
||||
}
|
||||
Text label="Torsteuerung" icon=garagedoor {
|
||||
Switch item=REMWEBIO001_Ausgang0 icon=garagedoor
|
||||
Switch item=REMWEBIO001_Ausgang1 icon=garagedoor
|
||||
Switch item=REMWEBIO001_Ausgang2 icon=garagedoor
|
||||
Switch item=REMWEBIO001_Ausgang3 icon=garagedoor
|
||||
Switch item=REMWEBIO001_Ausgang4 icon=garagedoor
|
||||
|
||||
}
|
||||
Text label="Dienste" icon="kalender" {
|
||||
Text item=FFDienstZVD
|
||||
@ -95,18 +103,20 @@ sitemap default label="Feuerwehr Rembrücken" {
|
||||
Frame label="Anzeige" {
|
||||
Switch item=CamSelection label="Auswahl" mappings=[0="Vorne", 1="Hinten"]
|
||||
Video url="http://admin:rt8qff8ppkma82bzxq2vcy3m3@10.112.30.31/record/current.jpg" encoding="mjpeg" visibility=[CamSelection==0, CamSelection=="Uninitialized"]
|
||||
Switch item=REMCAM001Record label="Aufzeichung" mappings=[enable="Aktiv", disable="Inaktiv"] visibility=[CamSelection==0, CamSelection=="Uninitialized"]
|
||||
Switch item=REMCAM001Record label="Aufzeichung" mappings=[ON="Aktiv", OFF="Inaktiv"] visibility=[CamSelection==0, CamSelection=="Uninitialized"]
|
||||
|
||||
Video url="http://admin:pdgqa62v4f4bd9trmvp7z7t88@10.112.30.32/record/current.jpg" encoding="mjpeg" visibility=[CamSelection==1]
|
||||
Switch item=REMCAM002Record label="Aufzeichung" mappings=[enable="Aktiv", disable="Inaktiv"] visibility=[CamSelection==1]
|
||||
Switch item=REMCAM002Record label="Aufzeichung" mappings=[ON="Aktiv", OFF="Inaktiv"] visibility=[CamSelection==1]
|
||||
}
|
||||
Frame label="Sound" {
|
||||
Switch item=CamSoundLocSelection label="Auswahl" mappings=[0="Vorne", 1="Hinten", 2="Beide"]
|
||||
Selection item=CamSoundTone label="Ton" mappings=["Alarm"="Alarm", "AnsKeyNoFunction"="AnsKeyNoFunction", "AnsMsgBell"="AnsMsgBell", "AnsMsgKeypad"="AnsMsgKeypad", "AnsMsgNoAnswer"="AnsMsgNoAnswer", "Beep"="Beep", "Busy"="Busy", "Cuckooclock"="Cuckooclock", "Default"="Default", "DoorBell"="DoorBell", "Phonering"="Phonering", "Standard"="Standard"]
|
||||
Selection item=CamSoundTone label="Ton" mappings=["Alarm"="Alarm", "AnsKeyNoFunction"="AnsKeyNoFunction", "AnsMsgBell"="AnsMsgBell", "AnsMsgKeypad"="AnsMsgKeypad", "AnsMsgNoAnswer"="AnsMsgNoAnswer", "Beep"="Beep", "Busy"="Busy", "Cuckooclock"="Cuckooclock", "Default"="Default", "DoorBell"="DoorBell", "Phonering"="Phonering", "Standard"="Standard", "q96_feuer2"="Q96"]
|
||||
Setpoint item=CamSoundVolume label="Lautstärke" minValue=0 maxValue=30 step=1
|
||||
Slider item=CamSoundVolume label="Lautstärke" switchSupport minValue=0 maxValue=30 step=1
|
||||
Switch item=CamPlaySound label="Auswahl" mappings=[ON="Abspielen"]
|
||||
}
|
||||
}
|
||||
Switch item=REMWEBIO001_Ausgang5
|
||||
}
|
||||
Frame label="Wetter" {
|
||||
Text label="Blitzkarte" icon="lightning" {
|
||||
|
2
transform/presence.map
Normal file
2
transform/presence.map
Normal file
@ -0,0 +1,2 @@
|
||||
OPEN=zu Hause
|
||||
CLOSED=Unterwegs
|
7
transform/status_sbi.map
Normal file
7
transform/status_sbi.map
Normal file
@ -0,0 +1,7 @@
|
||||
1=Einsatzbereit über Funk
|
||||
2=Einsatzbereit auf Wache
|
||||
3=Auf Anfahrt zur E-Stelle
|
||||
4=An E-Stelle eingetroffen
|
||||
5=Sprechwunsch
|
||||
6=nicht einsatzbereit
|
||||
NULL=Unbekannt
|
Reference in New Issue
Block a user