Exemplo n.º 1
0
        public TurnOnAndOffAutomation WithTarget(IActuator actuator)
        {
            if (actuator == null)
            {
                throw new ArgumentNullException(nameof(actuator));
            }

            _turnOnActions.Add(() => actuator.SetState(BinaryStateId.On));
            _turnOffActions.Add(() => actuator.SetState(BinaryStateId.Off));

            return(this);
        }
Exemplo n.º 2
0
        private string UpdateActuatorState(IActuator actuator)
        {
            if (_messageContext.IdentifiedComponentStates.Count == 0)
            {
                return($"{Emoji.Confused} Was soll ich damit machen?");
            }

            if (_messageContext.IdentifiedComponentStates.Count > 1)
            {
                return($"{Emoji.Confused} Das was du möchtest ist nicht eindeutig.");
            }

            if (!actuator.GetSupportsState(_messageContext.IdentifiedComponentStates.First()))
            {
                return($"{Emoji.Hushed} Das wird nicht funktionieren.");
            }

            actuator.SetState(_messageContext.IdentifiedComponentStates.First());
            return($"{Emoji.ThumbsUp} Habe ich erledigt. Kann ich noch etwas für dich tun?");
        }
        public TurnOnAndOffAutomation WithTarget(IActuator actuator)
        {
            if (actuator == null) throw new ArgumentNullException(nameof(actuator));

            _turnOnActions.Add(() => actuator.SetState(BinaryStateId.On));
            _turnOffActions.Add(() => actuator.SetState(BinaryStateId.Off));

            return this;
        }
        private string UpdateActuatorState(IActuator actuator, MessageContext messageContext)
        {
            if (messageContext.IdentifiedComponentStates.Count == 0)
            {
                return $"{Emoji.Confused} Was soll ich damit machen?";
            }

            if (messageContext.IdentifiedComponentStates.Count > 1)
            {
                return $"{Emoji.Confused} Das was du möchtest ist nicht eindeutig.";
            }

            if (!actuator.SupportsState(messageContext.IdentifiedComponentStates.First()))
            {
                return $"{Emoji.Hushed} Das wird nicht funktionieren.";
            }

            actuator.SetState(messageContext.IdentifiedComponentStates.First());
            return $"{Emoji.ThumbsUp} Habe ich erledigt. Kann ich noch etwas für dich tun?";
        }