Example #1
0
        internal async Task <List <RequestResponse> > SendDeviceUpdate(List <IDevice> devices, bool store = false)
        {
            var responses = new List <RequestResponse>();

            foreach (var device in devices)
            {
                //ignore devices with no effects
                if (device.EffectData == null)
                {
                    continue;
                }

                IHttpRequestMessage message;

                if (store)
                {
                    message = new DeviceMessage(device);
                }
                else
                {
                    message = new DeviceUpdateMessage(device);
                }

                responses.Add(new RequestResponse(device, await client.Request(message).ConfigureAwait(false)));
            }

            return(responses);
        }
Example #2
0
        internal async Task <List <RequestResponse> > SendDeviceUpdate(Dictionary <string, IDevice> devices, bool store = false)
        {
            var responses = new List <RequestResponse>();

            foreach (var device in devices.Values)
            {
                IHttpRequestMessage message;
                var deviceMessage = device.GetDeviceMessage();
                if (deviceMessage == null)
                {
                    continue;
                }


                if (store)
                {
                    message = new DeviceMessage(device, deviceMessage);
                }
                else
                {
                    message = new DeviceUpdateMessage(device, deviceMessage);
                }

                responses.Add(new RequestResponse(device, await client.Request(message)));
            }

            return(responses);
        }