configure scenes

This commit is contained in:
Wolfgang Hottgenroth
2018-01-11 16:48:18 +01:00
parent 402603c376
commit 5eac6dfab6
6 changed files with 118 additions and 69 deletions

2
dist/Scene.js vendored
View File

@ -34,7 +34,7 @@ class LightScene extends AItem_1.AItem {
this.myLastFeedbackState = '-'; this.myLastFeedbackState = '-';
} }
exportItem() { exportItem() {
return Export_1.SwitchExport(this.itemId, this.label, this.stateTopic, this.stateFeedbackTopic, 'Switch'); return Export_1.SwitchExport(this.itemId, this.label, this.stateTopic, this.stateFeedbackTopic, 'bulb');
} }
processMessage(topic, payload) { processMessage(topic, payload) {
if (topic == this.stateTopic) { if (topic == this.stateTopic) {

56
dist/main.js vendored
View File

@ -102,40 +102,32 @@ let bedRoomWindowLight = new M433SwitchItem_1.M433SwitchItem('1st', 'BedRoom', '
bedRoomWindowLight.start(); bedRoomWindowLight.start();
allLabeledItems.push(bedRoomWindowLight); allLabeledItems.push(bedRoomWindowLight);
// --------------------------------------------------------------------------------------------------------- // ---------------------------------------------------------------------------------------------------------
let morningLightForwarder = new Forwarder_1.Forwarder('Gnd', 'Hallway', 'MorningLight', 'state', 'MorningLight', [ let dayLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'DayLight', 'DayLight', [
kitchenWindowLight.getStateTopic(), kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayStandLight, hallwayWardrobeLight,
kitchenCeilingLight.getStateTopic(), diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
hallwayDeskLight.getStateTopic(), livingRoomLargeLight, livingRoomSmallLight, livingRoomStars, livingRoomStandLight
hallwayStandLight.getStateTopic(), ], []);
hallwayWardrobeLight.getStateTopic() dayLightScene.start();
allLabeledItems.push(dayLightScene);
let ecoLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'EcoLight', 'EcoLight', [
kitchenWindowLight, hallwayDeskLight, hallwayWardrobeLight,
diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
livingRoomStars, livingRoomStandLight
], [
kitchenCeilingLight, hallwayStandLight,
livingRoomLargeLight, livingRoomSmallLight
]); ]);
morningLightForwarder.start(); ecoLightScene.start();
let dayLightForwarder = new Forwarder_1.Forwarder('Gnd', 'Hallway', 'DayLight', 'state', 'DayLight', [ allLabeledItems.push(ecoLightScene);
kitchenWindowLight.getStateTopic(), let morningLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'MorningLight', 'MorningLight', [
kitchenCeilingLight.getStateTopic(), kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayWardrobeLight,
hallwayDeskLight.getStateTopic(), hallwayStandLight
hallwayStandLight.getStateTopic(), ], [
hallwayWardrobeLight.getStateTopic(), diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
diningRoomSmallLight.getStateTopic(), livingRoomStars, livingRoomStandLight, livingRoomLargeLight, livingRoomSmallLight
diningRoomStandLight.getStateTopic(),
diningRoomCupboardLight.getStateTopic(),
livingRoomLargeLight.getStateTopic(),
livingRoomSmallLight.getStateTopic(),
livingRoomStars.getStateTopic(),
livingRoomStandLight.getStateTopic()
]); ]);
dayLightForwarder.start(); morningLightScene.start();
let ecoLightForwarder = new Forwarder_1.Forwarder('Gnd', 'Hallway', 'EcoLight', 'state', 'EcoLight', [ allLabeledItems.push(morningLightScene);
kitchenWindowLight.getStateTopic(),
hallwayDeskLight.getStateTopic(),
hallwayWardrobeLight.getStateTopic(),
diningRoomSmallLight.getStateTopic(),
diningRoomStandLight.getStateTopic(),
diningRoomCupboardLight.getStateTopic(),
livingRoomStars.getStateTopic(),
livingRoomStandLight.getStateTopic()
]);
ecoLightForwarder.start();
// ---------------------------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------------------------
let testFourButton = new HomematicFourButtonThing_1.HomematicFourButtonThing('Gnd', 'Hallway', 'TestButton', 9, [ let testFourButton = new HomematicFourButtonThing_1.HomematicFourButtonThing('Gnd', 'Hallway', 'TestButton', 9, [
new HomematicFourButtonThing_1.HomematicFourButtonSingleItem('dispatcher_ng/items/Gnd/Hallway/Testlight/dimmerIn'), new HomematicFourButtonThing_1.HomematicFourButtonSingleItem('dispatcher_ng/items/Gnd/Hallway/Testlight/dimmerIn'),

View File

@ -335,5 +335,56 @@
"saturationFactor": "" "saturationFactor": ""
}, },
"config": {} "config": {}
},
"Gnd.Hallway.DayLight": {
"id": "Gnd.Hallway.DayLight",
"name": "DayLight",
"service": "Lightbulb",
"topic": {
"setOn": "dispatcher_ng/items/Gnd/Hallway/DayLight/state",
"statusOn": "dispatcher_ng/items/Gnd/Hallway/DayLight/state/feedback"
},
"payload": {
"onTrue": "ON",
"onFalse": "OFF",
"brightnessFactor": "",
"hueFactor": "",
"saturationFactor": ""
},
"config": {}
},
"Gnd.Hallway.EcoLight": {
"id": "Gnd.Hallway.EcoLight",
"name": "EcoLight",
"service": "Lightbulb",
"topic": {
"setOn": "dispatcher_ng/items/Gnd/Hallway/EcoLight/state",
"statusOn": "dispatcher_ng/items/Gnd/Hallway/EcoLight/state/feedback"
},
"payload": {
"onTrue": "ON",
"onFalse": "OFF",
"brightnessFactor": "",
"hueFactor": "",
"saturationFactor": ""
},
"config": {}
},
"Gnd.Hallway.MorningLight": {
"id": "Gnd.Hallway.MorningLight",
"name": "MorningLight",
"service": "Lightbulb",
"topic": {
"setOn": "dispatcher_ng/items/Gnd/Hallway/MorningLight/state",
"statusOn": "dispatcher_ng/items/Gnd/Hallway/MorningLight/state/feedback"
},
"payload": {
"onTrue": "ON",
"onFalse": "OFF",
"brightnessFactor": "",
"hueFactor": "",
"saturationFactor": ""
},
"config": {}
} }
} }

View File

@ -17,4 +17,7 @@ Switch Gnd.Kitchen.WindowLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Kitc
Switch Gnd.Kitchen.CeilingLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state/feedback:state:default]"} Switch Gnd.Kitchen.CeilingLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/Gnd/Kitchen/CeilingLight/state/feedback:state:default]"}
Switch 1st.BedRoom.WolfgangsSide {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state/feedback:state:default]"} Switch 1st.BedRoom.WolfgangsSide {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/WolfgangsSide/state/feedback:state:default]"}
Switch 1st.BedRoom.PattysSide {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/PattysSide/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/PattysSide/state/feedback:state:default]"} Switch 1st.BedRoom.PattysSide {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/PattysSide/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/PattysSide/state/feedback:state:default]"}
Switch 1st.BedRoom.WindowLight {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/WindowLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/WindowLight/state/feedback:state:default]"} Switch 1st.BedRoom.WindowLight {mqtt=">[localbroker:dispatcher_ng/items/1st/BedRoom/WindowLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/1st/BedRoom/WindowLight/state/feedback:state:default]"}
Switch Gnd.Hallway.DayLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/DayLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/Gnd/Hallway/DayLight/state/feedback:state:default]"}
Switch Gnd.Hallway.EcoLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/EcoLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/Gnd/Hallway/EcoLight/state/feedback:state:default]"}
Switch Gnd.Hallway.MorningLight {mqtt=">[localbroker:dispatcher_ng/items/Gnd/Hallway/MorningLight/state:command:*:default]", mqtt="<[localbroker:dispatcher_ng/items/Gnd/Hallway/MorningLight/state/feedback:state:default]"}

View File

@ -49,7 +49,7 @@ export class LightScene extends AItem {
} }
exportItem() : ExportType|null { exportItem() : ExportType|null {
return SwitchExport(this.itemId, this.label, this.stateTopic, this.stateFeedbackTopic, 'Switch') return SwitchExport(this.itemId, this.label, this.stateTopic, this.stateFeedbackTopic, 'bulb')
} }
processMessage(topic: string, payload: string) : void { processMessage(topic: string, payload: string) : void {

View File

@ -133,42 +133,45 @@ allLabeledItems.push(bedRoomWindowLight)
// --------------------------------------------------------------------------------------------------------- // ---------------------------------------------------------------------------------------------------------
let morningLightForwarder = new Forwarder('Gnd', 'Hallway', 'MorningLight', 'state', 'MorningLight', [ let dayLightScene = new LightScene('Gnd', 'Hallway', 'DayLight', 'DayLight',
kitchenWindowLight.getStateTopic(), [
kitchenCeilingLight.getStateTopic(), kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayStandLight, hallwayWardrobeLight,
hallwayDeskLight.getStateTopic(), diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
hallwayStandLight.getStateTopic(), livingRoomLargeLight, livingRoomSmallLight, livingRoomStars, livingRoomStandLight
hallwayWardrobeLight.getStateTopic() ],
]) []
morningLightForwarder.start() )
dayLightScene.start()
allLabeledItems.push(dayLightScene)
let ecoLightScene = new LightScene('Gnd', 'Hallway', 'EcoLight', 'EcoLight',
[
kitchenWindowLight, hallwayDeskLight, hallwayWardrobeLight,
diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
livingRoomStars, livingRoomStandLight
],
[
kitchenCeilingLight, hallwayStandLight,
livingRoomLargeLight, livingRoomSmallLight
]
)
ecoLightScene.start()
allLabeledItems.push(ecoLightScene)
let morningLightScene = new LightScene('Gnd', 'Hallway', 'MorningLight', 'MorningLight',
[
kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayWardrobeLight,
hallwayStandLight
],
[
diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight,
livingRoomStars, livingRoomStandLight, livingRoomLargeLight, livingRoomSmallLight
]
)
morningLightScene.start()
allLabeledItems.push(morningLightScene)
let dayLightForwarder = new Forwarder('Gnd', 'Hallway', 'DayLight', 'state', 'DayLight', [
kitchenWindowLight.getStateTopic(),
kitchenCeilingLight.getStateTopic(),
hallwayDeskLight.getStateTopic(),
hallwayStandLight.getStateTopic(),
hallwayWardrobeLight.getStateTopic(),
diningRoomSmallLight.getStateTopic(),
diningRoomStandLight.getStateTopic(),
diningRoomCupboardLight.getStateTopic(),
livingRoomLargeLight.getStateTopic(),
livingRoomSmallLight.getStateTopic(),
livingRoomStars.getStateTopic(),
livingRoomStandLight.getStateTopic()
])
dayLightForwarder.start()
let ecoLightForwarder = new Forwarder('Gnd', 'Hallway', 'EcoLight', 'state', 'EcoLight', [
kitchenWindowLight.getStateTopic(),
hallwayDeskLight.getStateTopic(),
hallwayWardrobeLight.getStateTopic(),
diningRoomSmallLight.getStateTopic(),
diningRoomStandLight.getStateTopic(),
diningRoomCupboardLight.getStateTopic(),
livingRoomStars.getStateTopic(),
livingRoomStandLight.getStateTopic()
])
ecoLightForwarder.start()
// ---------------------------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------------------------
let testFourButton = new HomematicFourButtonThing('Gnd', 'Hallway', 'TestButton', 9, [ let testFourButton = new HomematicFourButtonThing('Gnd', 'Hallway', 'TestButton', 9, [
new HomematicFourButtonSingleItem('dispatcher_ng/items/Gnd/Hallway/Testlight/dimmerIn'), new HomematicFourButtonSingleItem('dispatcher_ng/items/Gnd/Hallway/Testlight/dimmerIn'),