From 503790a73db94f43d4599ae60a6c60326c5c6bbe Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Mon, 15 Jan 2018 21:35:46 +0100 Subject: [PATCH] add shelf light control --- dist/main.js | 11 ++++++++--- homekit.json | 17 +++++++++++++++++ openhab.items | 1 + src/main.ts | 12 +++++++++--- 4 files changed, 35 insertions(+), 6 deletions(-) diff --git a/dist/main.js b/dist/main.js index 1ee22f8..5ce9ed7 100644 --- a/dist/main.js +++ b/dist/main.js @@ -15,6 +15,7 @@ const Scene_1 = require("./Scene"); const MaxEcoSwitch_1 = require("./MaxEcoSwitch"); const MaxThermostat_1 = require("./MaxThermostat"); const MaxWindowContact_1 = require("./MaxWindowContact"); +const UrlSwitchItem_1 = require("./UrlSwitchItem"); const Cron_1 = require("./Cron"); logger.info("Dispatcher starting"); let allLabeledItems = new Array(); @@ -61,6 +62,10 @@ allLabeledItems.push(diningRoomStandLight); let diningRoomCupboardLight = new M433SwitchItem_1.M433SwitchItem('Gnd', 'DiningRoom', 'CupboardLight', 'Schranklicht Esszimmer', '65813 24 1', '65812 24 1'); diningRoomCupboardLight.start(); allLabeledItems.push(diningRoomCupboardLight); +// Esszimmer Regallicht +let diningRoomShelfLight = new UrlSwitchItem_1.UrlSwitchItem('Gnd', 'DiningRoom', 'ShelfLight', 'Regallicht Esszimmer', 'http://regallampe/dv?dv=1023', 'http://regallampe/dv?dv=0'); +diningRoomShelfLight.start(); +allLabeledItems.push(diningRoomShelfLight); // 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'); @@ -116,14 +121,14 @@ allLabeledItems.push(bedRoomWindowLight); // --------------------------------------------------------------------------------------------------------- let dayLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'DayLight', 'DayLight', [ kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayStandLight, hallwayWardrobeLight, - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomLargeLight, livingRoomSmallLight, livingRoomStars, livingRoomStandLight ], []); dayLightScene.start(); allLabeledItems.push(dayLightScene); let ecoLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'EcoLight', 'EcoLight', [ kitchenWindowLight, hallwayDeskLight, hallwayWardrobeLight, - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomStars, livingRoomStandLight ], [ kitchenCeilingLight, hallwayStandLight, @@ -137,7 +142,7 @@ let morningLightScene = new Scene_1.LightScene('Gnd', 'Hallway', 'MorningLight', kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayWardrobeLight, hallwayStandLight ], [ - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomStars, livingRoomStandLight, livingRoomLargeLight, livingRoomSmallLight ]); morningLightScene.start(); diff --git a/homekit.json b/homekit.json index ff20c8c..7a778e4 100644 --- a/homekit.json +++ b/homekit.json @@ -132,6 +132,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_LivingRoom_LargeLight": { "id": "Gnd_LivingRoom_LargeLight", "name": "große Lampe Wohnzimmer", diff --git a/openhab.items b/openhab.items index 82c31f7..5fbe253 100644 --- a/openhab.items +++ b/openhab.items @@ -6,6 +6,7 @@ Switch 1st_Matthias_Speaker {mqtt=">[localbroker:dispatcher_ng/items/1st/Matthia Switch Gnd_DiningRoom_SmallLight {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 {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 {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 {mqtt=">[localbroker:dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/DiningRoom/ShelfLight/state/feedback:state:default]"} Switch Gnd_LivingRoom_LargeLight {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 {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 {mqtt=">[localbroker:dispatcher_ng/items/Gnd/LivingRoom/Stars/state:command:*:default],<[localbroker:dispatcher_ng/items/Gnd/LivingRoom/Stars/state/feedback:state:default]"} diff --git a/src/main.ts b/src/main.ts index e78cdc4..6b4533c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -17,6 +17,7 @@ import { LightScene } from './Scene' import { MaxEcoSwitch } from './MaxEcoSwitch' import { MaxThermostat } from './MaxThermostat' import { MaxWindowContact } from './MaxWindowContact' +import { UrlSwitchItem } from './UrlSwitchItem' import { Cron } from './Cron' logger.info("Dispatcher starting") @@ -77,6 +78,11 @@ let diningRoomCupboardLight = new M433SwitchItem('Gnd', 'DiningRoom', 'CupboardL diningRoomCupboardLight.start() allLabeledItems.push(diningRoomCupboardLight) +// Esszimmer Regallicht +let diningRoomShelfLight = new UrlSwitchItem('Gnd', 'DiningRoom', 'ShelfLight', 'Regallicht Esszimmer', 'http://regallampe/dv?dv=1023', 'http://regallampe/dv?dv=0') +diningRoomShelfLight.start() +allLabeledItems.push(diningRoomShelfLight) + // 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') @@ -149,7 +155,7 @@ allLabeledItems.push(bedRoomWindowLight) let dayLightScene = new LightScene('Gnd', 'Hallway', 'DayLight', 'DayLight', [ kitchenWindowLight, kitchenCeilingLight, hallwayDeskLight, hallwayStandLight, hallwayWardrobeLight, - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomLargeLight, livingRoomSmallLight, livingRoomStars, livingRoomStandLight ], [] @@ -160,7 +166,7 @@ allLabeledItems.push(dayLightScene) let ecoLightScene = new LightScene('Gnd', 'Hallway', 'EcoLight', 'EcoLight', [ kitchenWindowLight, hallwayDeskLight, hallwayWardrobeLight, - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomStars, livingRoomStandLight ], [ @@ -180,7 +186,7 @@ let morningLightScene = new LightScene('Gnd', 'Hallway', 'MorningLight', 'Mornin hallwayStandLight ], [ - diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, + diningRoomSmallLight, diningRoomStandLight, diningRoomCupboardLight, diningRoomShelfLight, livingRoomStars, livingRoomStandLight, livingRoomLargeLight, livingRoomSmallLight ] )