//Command received form OpenHAB to HomeIO private void OnUpdateState(object sender, OpenHABEventArgs args) { string name = args.Name; string state = args.State; OpenHABTransformer transformer = args.Transformer; MemoryBit memBit; MemoryFloat memFloat; // if item is bit if (memoryOutputBits.TryGetValue(name, out memBit)) { //converting from OpenHAB value to HomeIO value memBit.Value = transformer.StateToBit(state); } // if item is float else if (memoryOutputFloats.TryGetValue(name, out memFloat)) { memFloat.Value = transformer.StateToFloat(state); } // writing changes to HomeIO MemoryMap.Instance.Update(); }
public OpenHABEventArgs(string name, string state, OpenHABTransformer transformer) { Name = name; State = state; Transformer = transformer; }