From da8ffeeffc212111a94b1fb38c801162c135d7f5 Mon Sep 17 00:00:00 2001 From: BlubbFish Date: Wed, 2 May 2018 16:21:34 +0000 Subject: [PATCH] [NF] Huebot fertig [NF] Huebot nutzt nun die lokale litjosn und mqtt library --- Hue/Devices/Lights/Dimmablelight.cs | 2 +- Hue/HueController.cs | 16 ++++++++++++++++ Hue/Interfaces/AConfig.cs | 3 --- Hue/Interfaces/AGroup.cs | 2 +- Hue/Interfaces/ALight.cs | 2 +- Hue/Interfaces/AScene.cs | 2 +- Hue/Interfaces/ASensor.cs | 4 +--- Hue/bin/Release/Hue.dll | Bin 52736 -> 53248 bytes Hue/bin/Release/litjson.dll | Bin 50688 -> 50688 bytes 9 files changed, 21 insertions(+), 10 deletions(-) diff --git a/Hue/Devices/Lights/Dimmablelight.cs b/Hue/Devices/Lights/Dimmablelight.cs index 688c409..8e93bbb 100644 --- a/Hue/Devices/Lights/Dimmablelight.cs +++ b/Hue/Devices/Lights/Dimmablelight.cs @@ -44,7 +44,7 @@ namespace BlubbFish.IoT.Hue.Devices.Lights { return this._alert; } set { - if(this.SetLightStateAttribute(new Dictionary() { { "alert", value } })) { + if(this.SetLightStateAttribute(new Dictionary() { { "alert", value.ToString() } })) { this._alert = value; this.NotifyClient(value); } diff --git a/Hue/HueController.cs b/Hue/HueController.cs index cc68f8a..ba44b2a 100644 --- a/Hue/HueController.cs +++ b/Hue/HueController.cs @@ -62,6 +62,22 @@ namespace BlubbFish.IoT.Hue { //throw new NotImplementedException(); } + public AConnector GetConnector(String type, String id) { + switch (type) { + case "sensor": + return this.Sensors.ContainsKey(Int32.Parse(id)) ? this.Sensors[Int32.Parse(id)] : null; + case "scene": + return this.Scenes.ContainsKey(id) ? this.Scenes[id] : null; + case "light": + return this.Lights.ContainsKey(Int32.Parse(id)) ? this.Lights[Int32.Parse(id)] : null; + case "group": + return this.Groups.ContainsKey(Int32.Parse(id)) ? this.Groups[Int32.Parse(id)] : null; + case "config": + return this.Config; + } + return null; + } + private void AllUpdate(Object sender, AllUpdateEvent e) { this.Update?.Invoke(sender, e); } diff --git a/Hue/Interfaces/AConfig.cs b/Hue/Interfaces/AConfig.cs index 3fc018e..ca97894 100644 --- a/Hue/Interfaces/AConfig.cs +++ b/Hue/Interfaces/AConfig.cs @@ -1,8 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using BlubbFish.IoT.Hue.Devices.Configs; using BlubbFish.IoT.Hue.lib; using LitJson; diff --git a/Hue/Interfaces/AGroup.cs b/Hue/Interfaces/AGroup.cs index ad78e53..ef9e507 100644 --- a/Hue/Interfaces/AGroup.cs +++ b/Hue/Interfaces/AGroup.cs @@ -176,7 +176,7 @@ namespace BlubbFish.IoT.Hue.Interfaces { } public String MqttTopic() { - return "groups/" + this.GroupId + "/" + this.Groupclass.ToString(); + return "group/" + this.GroupId; } #endregion } diff --git a/Hue/Interfaces/ALight.cs b/Hue/Interfaces/ALight.cs index 53d6e31..2bffff3 100644 --- a/Hue/Interfaces/ALight.cs +++ b/Hue/Interfaces/ALight.cs @@ -79,7 +79,7 @@ namespace BlubbFish.IoT.Hue.Interfaces { #region IMqtt public String MqttTopic() { - return "lights/" + this.LightId + "/" + this.Lightclass.ToString(); + return "light/" + this.LightId; } public String ToJson() { diff --git a/Hue/Interfaces/AScene.cs b/Hue/Interfaces/AScene.cs index 35fc321..2c8f7c2 100644 --- a/Hue/Interfaces/AScene.cs +++ b/Hue/Interfaces/AScene.cs @@ -36,7 +36,7 @@ namespace BlubbFish.IoT.Hue.Interfaces { } public String MqttTopic() { - return "groups/" + this.SceneId; + return "scene/" + this.SceneId; } #endregion } diff --git a/Hue/Interfaces/ASensor.cs b/Hue/Interfaces/ASensor.cs index 664fd10..bd10a81 100644 --- a/Hue/Interfaces/ASensor.cs +++ b/Hue/Interfaces/ASensor.cs @@ -6,8 +6,6 @@ using LitJson; namespace BlubbFish.IoT.Hue.Interfaces { public abstract class ASensor : AConnector, IMqtt { - - public enum Types { Daylight } @@ -116,7 +114,7 @@ namespace BlubbFish.IoT.Hue.Interfaces { #region IMqtt public String MqttTopic() { - return "groups/" + this.SensorId + "/" + this.Sensorclass.ToString(); + return "sensor/" + this.SensorId; } public String ToJson() { diff --git a/Hue/bin/Release/Hue.dll b/Hue/bin/Release/Hue.dll index f73a4a4829b981dee6791dc110727a4570d7567b..30deab92ae9d2db1cab305eb964373fefcc0e556 100644 GIT binary patch literal 53248 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 diff --git a/Hue/bin/Release/litjson.dll b/Hue/bin/Release/litjson.dll index 892f38a25e68ff9893c46b787a53a132304c04c8..d2229a7add24eeb79e0fbbe63c56d3b6cb56aa9a 100644 GIT binary patch delta 68 zcmZqZVQ%PQp3uR}eedPQ?uY9I?7hy3GSsf~Sk}2hP$=c}%FQ(!3V1-Wli%-=6mTll YKR9)cm~+zw%e0ggPu^^n*!zM502@gkrT_o{ delta 68 zcmZqZVQ%PQp3uSk_1=q(-4E9b=Y;}l(Iqlqtdmv64wP{0F{o&0`}q<|8a YtZlP|fWwBj_g>XThH7n=*!zM50C`#