Пример #1
0
        public static List <object> ChangeParam(string message, string deviceType)
        {
            Propities     propities = new Propities();
            ServerMessage m         = ServerMessageConvert(message);

            switch (deviceType)
            {
            case "tv.json":
                List <TVDevicePropities> tVDevicePropities = propities.GetTVDevicePropities();
                TVDevicePropities        currentTv         = tVDevicePropities.Find(tVDevicePropities => tVDevicePropities.deviceId == m.deviceid);



                if (currentTv != null)
                {
                    currentTv.ParamChange(m.param, m.val);
                }
                else
                {
                    Console.WriteLine(DateTime.Now.ToShortTimeString() + " (WARNING): Device not found in tv.json-----------------------");
                }


                List <object> listTv = new List <object>();
                foreach (TVDevicePropities cur in tVDevicePropities)
                {
                    listTv.Add((object)cur);
                }
                return(listTv);

            case "projector.json":
                List <ProjectorDevicePropities> projectorDevicePropities = propities.GetProjectorDevicePropities();
                ProjectorDevicePropities        currentProj = projectorDevicePropities.Find(projectorDevicePropities => projectorDevicePropities.deviceId == m.deviceid);
                //for projector here

                if (currentProj != null)
                {
                    currentProj.ParamChange(m.param, m.val);
                }
                else
                {
                    Console.WriteLine(DateTime.Now.ToShortTimeString() + " (WARNING): Device not found in projector.json");
                }

                List <object> listProj = new List <object>();
                foreach (ProjectorDevicePropities cur in projectorDevicePropities)
                {
                    listProj.Add((object)cur);
                }
                return(listProj);

            default:
                Console.WriteLine(DateTime.Now.ToShortTimeString() + " (WARNING): Device with recived token not found in devices");
                return(null);
            }
        }
Пример #2
0
        private List <TVDevicePropities> ReadTVDevicePropities()
        {
            List <TVDevicePropities> tVDevices = new List <TVDevicePropities>();
            List <object>            list      = JsonWorker.ReadDevices(Path.Combine(path, "tv.json"));

            foreach (object current in list)
            {
                tVDevices.Add(TVDevicePropities.ConvertFromJObject(current));
            }

            return(tVDevices);
        }
        public static TVDevicePropities ConvertFromJObject(object?currentObject)
        {
            JObject           jObject = (JObject)currentObject;
            TVDevicePropities device  = new TVDevicePropities();

            device.deviceId     = jObject.GetValue("deviceId").ToString();
            device.status       = Convert.ToBoolean(jObject.GetValue("status").ToString());
            device.errorCode    = (ErrorCode)Enum.Parse(typeof(ErrorCode), jObject.GetValue("errorCode").ToString());
            device.errorMessage = jObject.GetValue("errorMessage").ToString();
            device.input        = (Input)Enum.Parse(typeof(Input), jObject.GetValue("input").ToString());
            device.power        = (Power)Enum.Parse(typeof(Power), jObject.GetValue("power").ToString());
            device.volume       = Convert.ToInt32(jObject.GetValue("volume").ToString());
            device.volumeMute   = Convert.ToBoolean(jObject.GetValue("volumeMute").ToString());

            return(device);
        }
Пример #4
0
        public static string ChangeParamSending(string message, string deviceType)
        {
            string        json;
            Propities     propities         = new Propities();
            ServerMessage m                 = ServerMessageConvert(deviceType);
            string        currentDeviceType = FindDevice(deviceType);

            //change param analog here
            switch (currentDeviceType)
            {
            case "tv.json":
                List <TVDevicePropities> tVDevicePropities = propities.GetTVDevicePropities();
                TVDevicePropities        curentTv          = tVDevicePropities.Find(tVDevicePropities => tVDevicePropities.deviceId == m.deviceid);

                if (curentTv != null)
                {
                    curentTv.ParamChange(m.param, m.val);
                }
                else
                {
                    Console.WriteLine(DateTime.Now.ToShortTimeString() + " (WARNING): Device not found in tv.json");
                }

                return(propities.DeviceToServerMessage(curentTv, currentDeviceType));

            case "projector.json":

                List <ProjectorDevicePropities> projectorDevicePropities = propities.GetProjectorDevicePropities();
                ProjectorDevicePropities        currentProj = projectorDevicePropities.Find(projectorDevicePropities => projectorDevicePropities.deviceId == m.deviceid);

                if (currentProj != null)
                {
                    currentProj.ParamChange(m.param, m.val);
                }
                else
                {
                    Console.WriteLine(DateTime.Now.ToShortTimeString() + " (WARNING): Device not found in projector.json");
                }

                return(propities.DeviceToServerMessage(currentProj, currentDeviceType));

            default:
                return(null);
            }
        }