public LifxGateway(IMessageQueue messageQueue, IDeviceConfigurationBackupService deviceConfigurationBackupService) : base("Lifx") { _messageQueue = messageQueue; _deviceConfigurationBackupService = deviceConfigurationBackupService; _canCreateDevices = false; _token = ConfigurationManager.AppSettings["lifx.token"]; _localClient.DeviceDiscovered += (s, e) => { AddLifxDevice(e.Id, () => new LifxDevice(e)); }; _localClient.VariableChanged += (s, e) => { var device = _devices.ToArray().Cast <LifxDevice>().SingleOrDefault(d => d.Id.Equals(e.Item1.Id)); if (device != null) { device.Name = e.Item1.Name; } var variable = $"{Name}.{e.Item1.Id}.{e.Item2}"; _messageQueue.Publish(new UpdateVariableMessage(variable, e.Item3)); }; }
public MyStromGateway( IMessageQueue messageQueue, IMyStromDeviceNameService myStromDeviceNameService, IDeviceConfigurationBackupService deviceConfigurationBackupService) : base("myStrom") { _messageQueue = messageQueue; _myStromDeviceNameService = myStromDeviceNameService; _deviceConfigurationBackupService = deviceConfigurationBackupService; _canCreateDevices = false; }
public PhilipsHueBridgeDiscoveringService( IMessageQueue messageQueue, IVariableRepository variableRepository, IDeviceConfigurationBackupService deviceConfigurationBackupService) { _lock = new object(); _bridges = new Dictionary <string, PhilipsHueBridge>(StringComparer.OrdinalIgnoreCase); _messageQueue = messageQueue; _variableRepository = variableRepository; _deviceConfigurationBackupService = deviceConfigurationBackupService; }