예제 #1
0
 private void Sensor_Hcsr501ValueChanged(object sender, Hcsr501ValueChangedEventArgs e)
 {
     if (e.PinValue == PinValue.High)
     {
         this.logger.LogInformation("PIR: motion detected!");
         MotionAlert?.Invoke(this, new EventArgs());
     }
     else
     {
         this.logger.LogInformation("PIR: motion ended");
         MotionStop?.Invoke(this, new EventArgs());
     }
 }
예제 #2
0
        private void Sensor_Hcsr501ValueChanged(object sender, Hcsr501ValueChangedEventArgs e)
        {
            BaseEvent @event;

            if (e.PinValue == PinValue.High)
            {
                @event = new MotionDetected();
            }
            else
            {
                @event = new MotionStopped();
            }

            Task.Run(async() => await _mediator.Publish(@event));
        }