Beispiel #1
0
        public static string GetJsonStringFromParamEnum(Constants.PowerStateParamValues value)
        {
            switch (value)
            {
            case Constants.PowerStateParamValues.ON:
                return("\"on\"");

            case Constants.PowerStateParamValues.OFF:
                return("\"off\"");
            }
            return(string.Empty);
        }
 /// <summary>
 /// Sets the light device's power state
 /// </summary>
 /// <param name="powerState"> The power state to set the light device to, can be anything from Constants.PowerStateParamValues</param>
 /// <param name="duration"> Duration of the effect, minimum value for this argument is Constants.MinValueForDurationParameter and so is the default value</param>
 /// <param name="effectType"> Type of the effect, can be anything from Constants.EffectParamValues and default value is Constants.EffectParamValues.SUDDEN</param>
 /// <remarks>
 /// Throws if duration argument is out of range or if device is not connected
 /// </remarks>
 public bool SetPower(Constants.PowerStateParamValues powerState,
                      int duration = Constants.MinValueForDurationParameter,
                      Constants.EffectParamValues effectType = Constants.EffectParamValues.SUDDEN)
 {
     ThrowExceptionIfIntArgIsOutOfRange("duration", duration, Constants.MinValueForDurationParameter);
     ThrowExceptionIfNotConnected();
     return(SendCommandMessage(1,
                               "set_power",
                               new string[] {
         Utils.GetJsonStringFromParamEnum(powerState),
         Utils.GetJsonStringFromParamEnum(effectType),
         duration.ToString(System.Globalization.CultureInfo.InvariantCulture)
     }));
 }