some more window contacts

This commit is contained in:
Wolfgang Hottgenroth
2018-04-27 22:52:38 +02:00
parent f4d35b5e04
commit e1088083de
6 changed files with 145 additions and 6 deletions

18
dispatcher.service Executable file
View File

@ -0,0 +1,18 @@
[Unit]
Description=dispatcher_ng
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
GuessMainPID=yes
ExecStart=/usr/bin/npm start -- -c dispatcher_ng.conf
ExecStop=kill -SIGINT $mainpid
Restart=on-failure
WorkingDirectory=/opt/services/dispatcher_ng
[Install]
Alias=dispatcher
WantedBy=multi-user.target

View File

@ -60,7 +60,7 @@ class TwoLedSignal extends AItem_1.AItem {
}
// logger.info(`DBG: TwoLedSignal ${item.getSignalState()}, ${reds}`)
});
let msg = (reds > 0) ? "RED" : "GREEN";
let msg = (reds > 0) ? "red" : "green";
MqttDispatcher_1.mqttHandler.send(`${this.topicFirstPart}/led1`, msg);
reds = 0;
this.led2Items.forEach((item) => {
@ -70,7 +70,7 @@ class TwoLedSignal extends AItem_1.AItem {
}
// logger.info(`DBG: TwoLedSignal ${item.getSignalState()}, ${reds}`)
});
msg = (reds > 0) ? "RED" : "GREEN";
msg = (reds > 0) ? "red" : "green";
MqttDispatcher_1.mqttHandler.send(`${this.topicFirstPart}/led2`, msg);
}
}

22
dist/main.js vendored
View File

@ -81,7 +81,7 @@ let matthiasSpeaker = new M433SwitchItem_1.M433SwitchItem('1st', 'Matthias', 'Sp
matthiasSpeaker.start();
allLabeledItems.push(matthiasSpeaker);
allRelevantLights.push(matthiasSpeaker);
let windowContactMatthias = new MaxWindowContact_1.MaxWindowContact('1st', 'Matthias', 'WindowContact', 'Fenster', 24);
let windowContactMatthias = new MaxWindowContact_1.MaxWindowContact('1st', 'Matthias', 'WindowContact', 'Fenster Matthias', 24);
windowContactMatthias.start();
allLabeledItems.push(windowContactMatthias);
allWindows.push(windowContactMatthias);
@ -110,6 +110,14 @@ let diningRoomNaehkaestchenLight = new HueColorBulbItem_1.HueColorBulbItem('Gnd'
diningRoomNaehkaestchenLight.start();
allLabeledItems.push(diningRoomNaehkaestchenLight);
allRelevantLights.push(diningRoomNaehkaestchenLight);
let windowContactDiningRoom1 = new MaxWindowContact_1.MaxWindowContact('Gnd', 'DiningRoom', 'WindowContact1', 'Fenster Esszimmer Straße links', 26);
windowContactDiningRoom1.start();
allLabeledItems.push(windowContactDiningRoom1);
allWindows.push(windowContactDiningRoom1);
let windowContactDiningRoom2 = new MaxWindowContact_1.MaxWindowContact('Gnd', 'DiningRoom', 'WindowContact2', 'Fenster Esszimmer Straße rechts', 27);
windowContactDiningRoom2.start();
allLabeledItems.push(windowContactDiningRoom2);
allWindows.push(windowContactDiningRoom2);
// Wohnzimmer -----------------------------------------------------------------------------------------------
// Wohnzimmer grosse Lampe 65557 24 1 65556 24 1
let livingRoomLargeLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'LivingRoom', 'LargeLight', 'große Lampe Wohnzimmer', '65557 24 1', '65556 24 1');
@ -131,6 +139,14 @@ let livingRoomStandLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'LivingRoo
livingRoomStandLight.start();
allLabeledItems.push(livingRoomStandLight);
allRelevantLights.push(livingRoomStandLight);
let windowContactLivingRoom1 = new MaxWindowContact_1.MaxWindowContact('Gnd', 'LivingRoom', 'WindowContact1', 'Fenster Wohnzimmer Garten rechts', 28);
windowContactLivingRoom1.start();
allLabeledItems.push(windowContactLivingRoom1);
allWindows.push(windowContactLivingRoom1);
let windowContactLivingRoom2 = new MaxWindowContact_1.MaxWindowContact('Gnd', 'LivingRoom', 'WindowContact2', 'Fenster Wohnzimmer Garten links', 29);
windowContactLivingRoom2.start();
allLabeledItems.push(windowContactLivingRoom2);
allWindows.push(windowContactLivingRoom2);
// Flur -----------------------------------------------------------------------------------------------------
// Flur Schreibtisch 83221 24 1 83220 24 1
let hallwayDeskLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'Hallway', 'DeskLight', 'Schreibtischlampe Flur', '83221 24 1', '83220 24 1');
@ -147,6 +163,10 @@ let hallwayWardrobeLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'Hallway',
hallwayWardrobeLight.start();
allLabeledItems.push(hallwayWardrobeLight);
allRelevantLights.push(hallwayWardrobeLight);
let windowContactHallway = new MaxWindowContact_1.MaxWindowContact('Gnd', 'Hallway', 'WindowContact', 'Fenster Flur', 25);
windowContactHallway.start();
allLabeledItems.push(windowContactHallway);
allWindows.push(windowContactHallway);
// Küche ----------------------------------------------------------------------------------------------------
// Küche Fensterbank 66837 24 1 66836 24 1
let kitchenWindowLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'Kitchen', 'WindowLight', 'Fensterbanklicht Küche', '66837 24 1', '66836 24 1');

View File

@ -105,7 +105,7 @@
},
"1st_Matthias_WindowContact": {
"id": "1st_Matthias_WindowContact",
"name": "Fenster",
"name": "Fenster Matthias",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/1st/Matthias/WindowContact/state/feedback"
@ -165,6 +165,23 @@
},
"config": {}
},
"Gnd_DiningRoom_ShelfLight": {
"id": "Gnd_DiningRoom_ShelfLight",
"name": "Regallicht Esszimmer",
"service": "Lightbulb",
"topic": {
"setOn": "dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state",
"statusOn": "dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state/feedback"
},
"payload": {
"onTrue": "ON",
"onFalse": "OFF",
"brightnessFactor": "",
"hueFactor": "",
"saturationFactor": ""
},
"config": {}
},
"Gnd_DiningRoom_NaehkaestchenLight": {
"id": "Gnd_DiningRoom_NaehkaestchenLight",
"name": "Lampe Naehkaestchen",
@ -191,6 +208,28 @@
"saturationFactor": 1
}
},
"Gnd_DiningRoom_WindowContact1": {
"id": "Gnd_DiningRoom_WindowContact1",
"name": "Fenster Esszimmer Straße links",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/Gnd/DiningRoom/WindowContact1/state/feedback"
},
"payload": {
"onContactDetected": "CLOSED"
}
},
"Gnd_DiningRoom_WindowContact2": {
"id": "Gnd_DiningRoom_WindowContact2",
"name": "Fenster Esszimmer Straße rechts",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/Gnd/DiningRoom/WindowContact2/state/feedback"
},
"payload": {
"onContactDetected": "CLOSED"
}
},
"Gnd_LivingRoom_LargeLight": {
"id": "Gnd_LivingRoom_LargeLight",
"name": "große Lampe Wohnzimmer",
@ -259,6 +298,28 @@
},
"config": {}
},
"Gnd_LivingRoom_WindowContact1": {
"id": "Gnd_LivingRoom_WindowContact1",
"name": "Fenster Wohnzimmer Garten rechts",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/Gnd/LivingRoom/WindowContact1/state/feedback"
},
"payload": {
"onContactDetected": "CLOSED"
}
},
"Gnd_LivingRoom_WindowContact2": {
"id": "Gnd_LivingRoom_WindowContact2",
"name": "Fenster Wohnzimmer Garten links",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/Gnd/LivingRoom/WindowContact2/state/feedback"
},
"payload": {
"onContactDetected": "CLOSED"
}
},
"Gnd_Hallway_DeskLight": {
"id": "Gnd_Hallway_DeskLight",
"name": "Schreibtischlampe Flur",
@ -310,6 +371,17 @@
},
"config": {}
},
"Gnd_Hallway_WindowContact": {
"id": "Gnd_Hallway_WindowContact",
"name": "Fenster Flur",
"service": "ContactSensor",
"topic": {
"statusContactSensorState": "dispatcher_ng/items/Gnd/Hallway/WindowContact/state/feedback"
},
"payload": {
"onContactDetected": "CLOSED"
}
},
"Gnd_Kitchen_WindowLight": {
"id": "Gnd_Kitchen_WindowLight",
"name": "Fensterbanklicht Küche",

View File

@ -6,18 +6,24 @@ Number Preset_1st_Anna_Thermostat "Preset_Thermostat Anna [%.1f °C]" {mqtt=">[l
Switch 1st_Matthias_StandLight "Stehlampen Matthias"{mqtt=">[localbroker:dispatcher_ng/items/1st/Matthias/StandLight/state:command:*:default],<[localbroker:dispatcher_ng/items/1st/Matthias/StandLight/state/feedback:state:default]"}
Switch 1st_Matthias_BedLight "Bettlicht Matthias"{mqtt=">[localbroker:dispatcher_ng/items/1st/Matthias/BedLight/state:command:*:default],<[localbroker:dispatcher_ng/items/1st/Matthias/BedLight/state/feedback:state:default]"}
Switch 1st_Matthias_Speaker "Lautsprecher Matthias"{mqtt=">[localbroker:dispatcher_ng/items/1st/Matthias/Speaker/state:command:*:default],<[localbroker:dispatcher_ng/items/1st/Matthias/Speaker/state/feedback:state:default]"}
Contact 1st_Matthias_WindowContact "Fenster" {mqtt="<[localbroker:dispatcher_ng/items/1st/Matthias/WindowContact/state/feedback:state:default]"}
Contact 1st_Matthias_WindowContact "Fenster Matthias" {mqtt="<[localbroker:dispatcher_ng/items/1st/Matthias/WindowContact/state/feedback:state:default]"}
Switch Gnd_DiningRoom_SmallLight "kleine Lampe Esszimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/DiningRoom/SmallLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/SmallLight/state/feedback:state:default]"}
Switch Gnd_DiningRoom_StandLight "Stehlampe Esszimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/DiningRoom/StandLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/StandLight/state/feedback:state:default]"}
Switch Gnd_DiningRoom_CupboardLight "Schranklicht Esszimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/DiningRoom/CupboardLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/CupboardLight/state/feedback:state:default]"}
Switch Gnd_DiningRoom_ShelfLight "Regallicht Esszimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state/feedback:state:default]"}
Contact Gnd_DiningRoom_WindowContact1 "Fenster Esszimmer Straße links" {mqtt="<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/WindowContact1/state/feedback:state:default]"}
Contact Gnd_DiningRoom_WindowContact2 "Fenster Esszimmer Straße rechts" {mqtt="<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/WindowContact2/state/feedback:state:default]"}
Switch Gnd_LivingRoom_LargeLight "große Lampe Wohnzimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/LivingRoom/LargeLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/LargeLight/state/feedback:state:default]"}
Switch Gnd_LivingRoom_SmallLight "kleine Lampe Wohnzimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/LivingRoom/SmallLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/SmallLight/state/feedback:state:default]"}
Switch Gnd_LivingRoom_Stars "Sterne Wohnzimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/LivingRoom/Stars/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/Stars/state/feedback:state:default]"}
Switch Gnd_LivingRoom_StandLight "Stehlampe Wohnzimmer"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/LivingRoom/StandLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/StandLight/state/feedback:state:default]"}
Contact Gnd_LivingRoom_WindowContact1 "Fenster Wohnzimmer Garten rechts" {mqtt="<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/WindowContact1/state/feedback:state:default]"}
Contact Gnd_LivingRoom_WindowContact2 "Fenster Wohnzimmer Garten links" {mqtt="<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/WindowContact2/state/feedback:state:default]"}
Switch Gnd_Hallway_DeskLight "Schreibtischlampe Flur"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/DeskLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/Hallway/DeskLight/state/feedback:state:default]"}
Switch Gnd_Hallway_StandLight "Stehlampe Flur"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/StandLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/Hallway/StandLight/state/feedback:state:default]"}
Switch Gnd_Hallway_WardrobeLight "Schranklicht Flur"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/WardrobeLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/Hallway/WardrobeLight/state/feedback:state:default]"}
Contact Gnd_Hallway_WindowContact "Fenster Flur" {mqtt="<[localbroker:dispatcher_ng/items/Gnd/Hallway/WindowContact/state/feedback:state:default]"}
Switch Gnd_Kitchen_WindowLight "Fensterbanklicht Küche"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/Kitchen/WindowLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/Kitchen/WindowLight/state/feedback:state:default]"}
Switch Gnd_Kitchen_CeilingLight "Deckenlampe Küche"{mqtt=">[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state/feedback:state:default]"}
Switch 1st_BedRoom_WolfgangsSide "Wolfgangs Seite Schlafzimmer"{mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state:command:*:default],<[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state/feedback:state:default]"}

View File

@ -100,7 +100,7 @@ matthiasSpeaker.start()
allLabeledItems.push(matthiasSpeaker)
allRelevantLights.push(matthiasSpeaker)
let windowContactMatthias = new MaxWindowContact('1st', 'Matthias', 'WindowContact', 'Fenster', 24)
let windowContactMatthias = new MaxWindowContact('1st', 'Matthias', 'WindowContact', 'Fenster Matthias', 24)
windowContactMatthias.start()
allLabeledItems.push(windowContactMatthias)
allWindows.push(windowContactMatthias)
@ -137,6 +137,16 @@ diningRoomNaehkaestchenLight.start()
allLabeledItems.push(diningRoomNaehkaestchenLight)
allRelevantLights.push(diningRoomNaehkaestchenLight)
let windowContactDiningRoom1 = new MaxWindowContact('Gnd', 'DiningRoom', 'WindowContact1', 'Fenster Esszimmer Straße links', 26)
windowContactDiningRoom1.start()
allLabeledItems.push(windowContactDiningRoom1)
allWindows.push(windowContactDiningRoom1)
let windowContactDiningRoom2 = new MaxWindowContact('Gnd', 'DiningRoom', 'WindowContact2', 'Fenster Esszimmer Straße rechts', 27)
windowContactDiningRoom2.start()
allLabeledItems.push(windowContactDiningRoom2)
allWindows.push(windowContactDiningRoom2)
// Wohnzimmer -----------------------------------------------------------------------------------------------
// Wohnzimmer grosse Lampe 65557 24 1 65556 24 1
let livingRoomLargeLight = new M433SwitchItem('Gnd', 'LivingRoom', 'LargeLight', 'große Lampe Wohnzimmer', '65557 24 1', '65556 24 1')
@ -162,6 +172,14 @@ livingRoomStandLight.start()
allLabeledItems.push(livingRoomStandLight)
allRelevantLights.push(livingRoomStandLight)
let windowContactLivingRoom1 = new MaxWindowContact('Gnd', 'LivingRoom', 'WindowContact1', 'Fenster Wohnzimmer Garten rechts', 28)
windowContactLivingRoom1.start()
allLabeledItems.push(windowContactLivingRoom1)
allWindows.push(windowContactLivingRoom1)
let windowContactLivingRoom2 = new MaxWindowContact('Gnd', 'LivingRoom', 'WindowContact2', 'Fenster Wohnzimmer Garten links', 29)
windowContactLivingRoom2.start()
allLabeledItems.push(windowContactLivingRoom2)
allWindows.push(windowContactLivingRoom2)
// Flur -----------------------------------------------------------------------------------------------------
// Flur Schreibtisch 83221 24 1 83220 24 1
@ -182,6 +200,11 @@ hallwayWardrobeLight.start()
allLabeledItems.push(hallwayWardrobeLight)
allRelevantLights.push(hallwayWardrobeLight)
let windowContactHallway = new MaxWindowContact('Gnd', 'Hallway', 'WindowContact', 'Fenster Flur', 25)
windowContactHallway.start()
allLabeledItems.push(windowContactHallway)
allWindows.push(windowContactHallway)
// Küche ----------------------------------------------------------------------------------------------------
// Küche Fensterbank 66837 24 1 66836 24 1