public DeviceBaseWorker(string deviceId, ILogger <T> logger, IOptions <WorkersConfiguration> workersConfiguration, IOptions <MqttConfiguration> mqttConfiguration, IMqttClientForMultipleSubscribers mqttClient)
 {
     DeviceId             = deviceId;
     Logger               = logger;
     WorkersConfiguration = workersConfiguration.Value;
     MqttConfiguration    = mqttConfiguration.Value;
     MqttClient           = mqttClient;
 }
        public WorkerABN03(string deviceId, ILogger <WorkerABN03> logger, IOptions <WorkersConfiguration> workersConfiguration, IOptions <MqttConfiguration> mqttConfiguration, IMqttClientForMultipleSubscribers mqttClient)
            : base(deviceId, logger, workersConfiguration, mqttConfiguration, mqttClient)
        {
            var sensorFactory = new SensorFactory();
            var device        = new Device
            {
                Name         = "ABN03",
                Model        = "ABSensor N03",
                Manufacturer = "April Brother",
                ViaDevice    = WorkersConfiguration.ServiceName,
                Identifiers  = new() { DeviceId },
                Connections  = new() { new() { "mac", DeviceId } }
            };

            ComponentList.AddRange(new List <Sensor>
            {
                sensorFactory.CreateSensor(DeviceClassDescription.Temperature, device: device),
                sensorFactory.CreateSensor(DeviceClassDescription.Humidity, device: device),
                sensorFactory.CreateSensor(DeviceClassDescription.IlluminanceLux, device: device),
                sensorFactory.CreateSensor(DeviceClassDescription.Battery, device: device)
            });
        }