public async Task SetStateLAN(string state)
        {
            dynamic data = new ExpandoObject();

            ExpandoHelpers.AddProperty(data, channelName, state);

            await ZeroConfUpdateDevice(data);
        }
        public void SetState(string state)
        {
            dynamic data = new ExpandoObject();

            ExpandoHelpers.AddProperty(data, channelName, state);

            UpdateDevice(data);
        }
Beispiel #3
0
        public void SetClose(int percent)
        {
            dynamic data = new ExpandoObject();

            ExpandoHelpers.AddProperty(data, "setClose", percent);

            UpdateDevice(data);
        }
Beispiel #4
0
        public void SetChannelsLAN(OutletState[] states)
        {
            dynamic data = new ExpandoObject();

            ExpandoHelpers.AddProperty(data, channelName, states);

            ZeroConfUpdateDevice(data);
        }
        public void TransmitChannel(int channel)
        {
            dynamic data = new ExpandoObject();

            ExpandoHelpers.AddProperty(data, $"rfCh{channel}", 0);
            data.cmd = "transmit";

            UpdateDevice(data);
        }
Beispiel #6
0
        private void handleWebsocketResponse(object sender, EventWebsocketMessage e)
        {
            var response = e.Message as WsUpdateResponse;

            if (response == null)
            {
                return;
            }

            if (deviceCache.ContainsKey(response.deviceid))
            {
                ExpandoHelpers.Map(response.@params, deviceCache[response.deviceid].@params);
                OnDeviceChanged.Emit(e, new EvendDeviceUpdate()
                {
                    Device = deviceCache[response.deviceid]
                });
            }
        }
Beispiel #7
0
        private void Websocket_OnMessage(object sender, MessageEventArgs e)
        {
            var response = e.Data.FromJson <ExpandoObject>();

            object message;

            if (ExpandoHelpers.HasProperty(response, "error"))
            {
                message = response.Adapt <WsLoginResponse>();
            }
            else
            {
                message = response.Adapt <WsUpdateResponse>();
            }

            OnMessage.Emit(this, new EventWebsocketMessage()
            {
                Message = message
            });
        }
Beispiel #8
0
 public string GetParameter(string parameterName) => ExpandoHelpers.GetOrDefault(@params, parameterName);