public void SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (!SupportsColor && color != null) { throw new InvalidOperationException("Color is not supported by adapter."); } var r = 0; var g = 0; var b = 0; if (powerState == AdapterPowerState.On && color == null) { r = 1023; g = 1023; b = 1023; } else if (powerState == AdapterPowerState.On && color != null) { r = color.Red; g = color.Green; b = color.Blue; } _deviceMessageBroker.Publish($"HA4IoT/Device/{_deviceName}/Command/RGB/Set", Encoding.UTF8.GetBytes(r + "," + g + "," + b), MqttQosLevel.AtMostOnce); }
public Task SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (!SupportsColor && color != null) { throw new InvalidOperationException("Color is not supported by adapter."); } var r = 0; var g = 0; var b = 0; if (powerState == AdapterPowerState.On && color == null) { r = 1023; g = 1023; b = 1023; } else if (powerState == AdapterPowerState.On && color != null) { r = color.Red; g = color.Green; b = color.Blue; } var topic = OutpostTopicBuilder.BuildCommandTopic(_deviceName, "RGB/Set"); var json = new JObject { ["r"] = r, ["g"] = g, ["b"] = b }; _deviceMessageBroker.Publish(topic, json, MqttQosLevel.AtMostOnce); return(Task.FromResult(0)); }
public Task SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { var r = 0; var g = 0; var b = 0; if (powerState == AdapterPowerState.On && color != null) { r = color.Red; g = color.Green; b = color.Blue; } if (powerState == AdapterPowerState.On && color == null) { r = 1023; g = 1023; b = 1023; } var value = new JObject { ["r"] = r, ["g"] = g, ["b"] = b }; _messageBroker.Publish(_topic, value, MqttQosLevel.AtMostOnce, true); return(Task.CompletedTask); }
public void SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (color != null) { throw new InvalidOperationException("Color is not supported."); } SetState(powerState, hardwareParameters); }
public async void SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { await _checkBox.Dispatcher.RunAsync( CoreDispatcherPriority.Normal, () => { _checkBox.IsChecked = powerState == AdapterPowerState.On; }); }
public Task SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (color != null) { throw new InvalidOperationException("Color is not supported."); } SetState(powerState, hardwareParameters); return(Task.FromResult(0)); }
public void SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (powerState == AdapterPowerState.On) { TurnOnCalledCount++; } else if (powerState == AdapterPowerState.Off) { TurnOffCalledCount++; } }
public Task SetState(AdapterPowerState powerState, AdapterColor color, params IHardwareParameter[] hardwareParameters) { if (powerState == AdapterPowerState.On) { TurnOnCalledCount++; } else if (powerState == AdapterPowerState.Off) { TurnOffCalledCount++; } return(Task.FromResult(0)); }