Ejemplo n.º 1
0
        public OutpostLpdAdapter(string deviceName, IDeviceMessageBrokerService deviceMessageBroker)
        {
            _deviceName          = deviceName ?? throw new ArgumentNullException(nameof(deviceName));
            _deviceMessageBroker = deviceMessageBroker ?? throw new ArgumentNullException(nameof(deviceMessageBroker));

            _deviceMessageBroker.Subscribe($"HA4IoT/Device/{_deviceName}/Notification/LPD/Received", OnLpdCodeReceived);
        }
Ejemplo n.º 2
0
 public void Subscribe(string topic, string callbackFunctionName)
 {
     _deviceMessageBrokerService.Subscribe(topic, _ =>
     {
         _scriptingSession.Execute(callbackFunctionName);
     });
 }
Ejemplo n.º 3
0
        public OutpostLpdBridgeAdapter(string id, string deviceName, IDeviceMessageBrokerService deviceMessageBroker)
        {
            _deviceName          = deviceName ?? throw new ArgumentNullException(nameof(deviceName));
            _deviceMessageBroker = deviceMessageBroker ?? throw new ArgumentNullException(nameof(deviceMessageBroker));

            Id = id ?? throw new ArgumentNullException(nameof(id));
            _deviceMessageBroker.Subscribe(OutpostTopicBuilder.BuildNotificationTopic(deviceName, "LPD/Received"), OnLpdCodeReceived);
        }
        public MqttBasedNumericSensorAdapter(string topic, IDeviceMessageBrokerService deviceMessageBrokerService, ILogService logService)
        {
            if (deviceMessageBrokerService == null)
            {
                throw new ArgumentNullException(nameof(deviceMessageBrokerService));
            }

            _log = logService?.CreatePublisher(nameof(MqttBasedNumericSensorAdapter)) ?? throw new ArgumentNullException(nameof(logService));

            _topic = topic ?? throw new ArgumentNullException(nameof(topic));
            deviceMessageBrokerService.Subscribe(topic, ForwardValue);
        }
Ejemplo n.º 5
0
 public DeviceBinaryInput(string topic, IDeviceMessageBrokerService messageBroker)
 {
     messageBroker.Subscribe(topic, MqttCallback);
 }