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()); } }
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)); }