Beispiel #1
0
        public async Task <string> GetDeviceInfo(DeviceInfoRequest deviceInfoRequest)
        {
            //  return null;
            if (deviceInfoRequest != null)
            {
                // remaining spray
                if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "spray")
                {
                    return("{\"request\":\"get\",\"info\":\"spray\",\"value\":56}");
                }
                else if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "battery")
                {
                    // get battery
                    return("{\"request\":\"get\",\"info\":\"battery\",\"value\":95}");
                }
                else if (deviceInfoRequest.request == "init" && deviceInfoRequest.info == "spray")
                {
                    // Initial spray
                    return("{\r\n\t\"request\":\"init\",\r\n\t\"info\":\"spray\",\r\n\t\"value\": 200\r\n}");
                }
                else if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "days_left")
                {
                    // GET DAYS LEFT
                    return("{\r\n\t\"request\":\"get\",\r\n\t\"info\":\"days_left\",\r\n\t\"value\": 200000\r\n}");
                }
                else if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "spray_counter")
                {
                    // GET NEXT SPRAY COUNTER
                    return("{\r\n    \"request\": \"get\",\r\n    \"info\":\"spray_counter\",\r\n    \"value\":10040\r\n}");
                }
            }

            return(null);
        }
Beispiel #2
0
        public static BasicResponse QueryDeviceInfoRequest(List <DeviceInfoRequestItem> deviceInfoRequestItems)
        {
            DeviceInfoRequest request = new DeviceInfoRequest();

            request.deviceInfoRequestItems = deviceInfoRequestItems;
            return(pointDefineService.QueryDeviceInfoRequest(request));
        }
Beispiel #3
0
 public async Task <string> GetDeviceSnapShotInfo(DeviceInfoRequest deviceInfoRequest)
 {
     if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "snapshot")
     {
         return("{\r\n\"snapshotinfo\":[\r\n{\r\n\"request\": \"get\",\r\n\"info\": \"battery\",\r\n\"value\": 4\r\n},\r\n{\r\n\"request\": \"init\",\r\n\"info\": \"spray\",\r\n\"value\": 3200\r\n},\r\n{\r\n\"request\": \"get\",\r\n\"info\": \"days_left\",\r\n\"value\": 35683200\r\n},\r\n{\r\n\"request\": \"get\",\r\n\"info\": \"spray\",\r\n\"value\": 3200\r\n},\r\n{\r\n\"request\": \"get\",\r\n\"info\": \"spray_counter\",\r\n\"value\": 3200\r\n}]\r\n\r\n}");
     }
     return(null);
 }
Beispiel #4
0
        public async void ReceiveEditedORNewschedule(object arg, string id, TimeSpan start, TimeSpan stop, string interval, bool active)
        {
            var iProg = PageContext.EnableSpin();

            try
            {
                EnableDisableDeleteButtonInRow(false);
                var viewObj = ScheduleView.Children[Convert.ToInt32(id) - 1];
                await Task.Delay(500);

                ScheduleView.Children.RemoveAt(Convert.ToInt32(id) - 1);

                var uidays = (List <UIDay>)arg;

                //Add new schedule item view in small row
                DayConfigControl Schedule = new DayConfigControl(uidays, Navigation, this, active, scheduleList);
                Schedule.indexText         = id;
                Schedule.editText          = "edit";
                Schedule.intervalText      = interval;
                Schedule.StartTimeText     = start;
                Schedule.StopTimeText      = stop;
                Schedule.ScheduleReceived += ReceiveEditedORNewschedule;
                Schedule.DeleteDelegate   += SingleDeleteDelegate;
                Schedule.DefaultUI         = UIEnum.Schedul_NormalView;
                ScheduleView.Children.Insert(Convert.ToInt32(id) - 1, Schedule);


                //Make API call to update scheule to device
                var obj = JSONUtil.Build_Scheduler(uidays, start, stop, interval, active);
                obj.index = id.ToString();


                scheduleList.scheduler[Convert.ToInt32(obj.index) - 1] = obj;
                scheduleList.request = "set";
                scheduleList.info    = "schedule";
                if (PageContext != null && obj != null)
                {
                    PageContext.EnableSpin();
                    await PageContext.SetSchedulerinVM(JsonConvert.SerializeObject(scheduleList));

                    DeviceInfoRequest activeStatus = new DeviceInfoRequest();
                    activeStatus.request = "status";
                    activeStatus.info    = "scheduler";
                    activeStatus.index   = Convert.ToInt32(id);
                    activeStatus.value   = active.ToString().ToLower();
                    await PageContext.SetScheduleActiveInactiveStatusinVM(activeStatus);
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Debug.WriteLine(ex);
                UserDialogs.Instance.HideLoading();
            }
            finally
            {
                PageContext.DisableSpin(iProg);
            }
        }
Beispiel #5
0
        public async Task <bool> SetDeviceInfo(DeviceInfoRequest deviceInfoRequest)
        {
            string jsonIgnoreNullValues = JsonConvert.SerializeObject(deviceInfoRequest, Formatting.Indented, new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore
            });

            return(true);
        }
Beispiel #6
0
        public async void SetDispanserType(string type)
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.Dispenser_Type = type;
            deviceInfoRequest.request        = "set";
            deviceInfoRequest.info           = "type_disp";
            var deviceRes = await deviceService.SetDeviceInfo(deviceInfoRequest);
        }
Beispiel #7
0
        /// <summary>
        /// Get the schedules from Device service
        /// </summary>
        /// <returns>List of assigned schedules froms device</returns>
        private async Task <string> GetScheduleFromService()
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "get";
            deviceInfoRequest.info    = "scheduler";
            var schedule = await deviceService.GetScheduler(deviceInfoRequest);

            return(schedule);
        }
Beispiel #8
0
        public async Task <string> SetScheduleActiveInactiveStatusinVM(DeviceInfoRequest deviceInfoRequest)
        {
            var daysleft = await deviceService.GetDeviceInfo(deviceInfoRequest);

            var _DaysLeft = DeserializDeviceInfo(daysleft);

            DaysLeft = _DaysLeft;
            DeviceInfoReceived?.Invoke(DaysLeft);
            return(daysleft);
        }
Beispiel #9
0
        ////////////////////////////////////////////////
        ////////////////////////////////////////////////
        /////////////////Get device values//////////////
        ////////////////////////////////////////////////
        ////////////////////////////////////////////////


        /// <summary>
        /// GetBatteryCount Will return count from service
        /// </summary>
        public async Task <bool> GetBatteryCount()
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "get";
            deviceInfoRequest.info    = "battery";
            var deviceRes = await deviceService.GetDeviceInfo(deviceInfoRequest);

            NetworkServiceUtil.Log("DeviceDetailsViewModel GetBatteryCount get battery: " + deviceRes);
            //  Battery = DeserializDeviceInfo(deviceRes);
            // DeviceInfoReceived?.Invoke(Battery);
            return(false);
        }
Beispiel #10
0
        /// <summary>
        /// GetInitilizeSprayCount(Input) Will return count from service
        /// </summary>
        public async Task <bool> GetInitilizeSprayCount()
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "init";
            deviceInfoRequest.info    = "spray";
            var deviceRes = await deviceService.GetDeviceInfo(deviceInfoRequest);

            NetworkServiceUtil.Log("DeviceDetailsViewModel GetInitilizeSprayCount init spray: " + deviceRes);
            InitializeSpray = DeserializDeviceInfo(deviceRes);
            DeviceInfoReceived?.Invoke(InitializeSpray);
            return(true);
        }
        private static void SendDeviceInfoToPlayFab()
        {
            if (PlayFabSettings.DisableDeviceInfo || !_gatherInfo)
            {
                return;
            }

            var request = new DeviceInfoRequest
            {
                Info = JsonWrapper.DeserializeObject <Dictionary <string, object> >(JsonWrapper.SerializeObject(new PlayFabDataGatherer()))
            };

            PlayFabClientAPI.ReportDeviceInfo(request, OnGatherSuccess, OnGatherFail);
        }
Beispiel #12
0
        private static void SendDeviceInfoToPlayFab()
        {
            if (PlayFabSettings.DisableDeviceInfo || !_gatherInfo)
            {
                return;
            }

            var request = new DeviceInfoRequest
            {
                Info = new PlayFabDataGatherer()
            };

            PlayFabHttp.MakeApiCall <EmptyResult>("/Client/ReportDeviceInfo", request, AuthType.LoginSession, OnGatherSuccess, OnGatherFail);
        }
Beispiel #13
0
        /// <summary>
        /// GetNextSprayCounterCount Will return count from service
        /// </summary>
        public async Task <bool> GetNextSprayCounterCount()
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "get";
            deviceInfoRequest.info    = "spray_counter";
            var deviceRes = await deviceService.GetDeviceInfo(deviceInfoRequest);

            NetworkServiceUtil.Log("DeviceDetailsViewModel GetNextSprayCounterCount: " + deviceRes);
            NextSprayCounter = DeserializDeviceInfo(deviceRes);
            DeviceInfoReceived?.Invoke(NextSprayCounter);
            // CalculateRemainingDays();
            return(false);
        }
Beispiel #14
0
        private static void SendDeviceInfoToPlayFab()
        {
            if (PlayFabSettings.DisableDeviceInfo || !PlayFabDeviceUtil._gatherInfo)
            {
                return;
            }
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest
            {
                Info = new PlayFabDataGatherer()
            };
            string apiEndpoint                  = "/Client/ReportDeviceInfo";
            PlayFabRequestCommon request        = deviceInfoRequest;
            AuthType             authType       = AuthType.LoginSession;
            Action <EmptyResult> resultCallback = new Action <EmptyResult>(PlayFabDeviceUtil.OnGatherSuccess);

            PlayFabHttp.MakeApiCall(apiEndpoint, request, authType, resultCallback, new Action <PlayFabError>(PlayFabDeviceUtil.OnGatherFail), null, null, false);
        }
Beispiel #15
0
        /// <summary>
        /// GetDaysLeftCount Will return count from service
        /// </summary>
        public async Task <bool> GetDaysLeftCount()
        {
            return(false);

            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "get";
            deviceInfoRequest.info    = "days_left";
            var deviceRes = await deviceService.GetDeviceInfo(deviceInfoRequest);

            NetworkServiceUtil.Log("DeviceDetailsViewModel GetDaysLeftCount get spray: " + deviceRes);
            var _DaysLeft = DeserializDeviceInfo(deviceRes);

            DaysLeft = _DaysLeft;
            DeviceInfoReceived?.Invoke(DaysLeft);
            // CalculateRemainingDays();
            return(true);
        }
Beispiel #16
0
        public async Task <string> GetScheduler(DeviceInfoRequest deviceInfoRequest)
        {
            //   return null;
            if (deviceInfoRequest != null)
            {
                // get schedule
                if (deviceInfoRequest.request == "get" && deviceInfoRequest.info == "scheduler")
                {
                    if (!string.IsNullOrEmpty(mockJson))
                    {
                        return(mockJson);
                    }

                    return("{\"scheduler_size\":1,\"scheduler\":[ { \"start\" :3600,\"stop\" :7200,\"interval\" :12,\"day\" :\"Monday\"},{\r\n\"start\":3600,\r\n\"stop\":5000,\r\n\"interval\":12,\r\n\"day\":\"Monday,tuesday\"\r\n}]}");
                }
            }
            return(null);
        }
Beispiel #17
0
        public async Task <string> GetScheduler(DeviceInfoRequest deviceInfoRequest)
        {
            try
            {
                string jsonIgnoreNullValues = JsonConvert.SerializeObject(deviceInfoRequest, Formatting.Indented, new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var _schedule = await GetWsData(UrlConfig.GetFullURL(Endpoint.scheduler, Endpoint_Method.GET), jsonIgnoreNullValues, ErrorCode.SCHEDULE_GET);

                return(_schedule);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e);
            }
            return(string.Empty);
        }
Beispiel #18
0
        public async Task <bool> SetDeviceInfo(DeviceInfoRequest deviceInfoRequest)
        {
            try
            {
                string jsonIgnoreNullValues = JsonConvert.SerializeObject(deviceInfoRequest, Formatting.Indented, new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                });
                var result = await SetWsData(UrlConfig.GetFullURL(Endpoint.info, Endpoint_Method.POST), jsonIgnoreNullValues);

                return(result);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e);
            }
            return(true);
        }
Beispiel #19
0
        /// <summary>
        /// GetSnapshotAPI Will return count from service
        /// </summary>
        public async Task <bool> GetSnapshotAPI()
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "get";
            deviceInfoRequest.info    = "snapshot";
            var deviceRes = await deviceService.GetDeviceSnapShotInfo(deviceInfoRequest);

            NetworkServiceUtil.Log("DeviceDetailsViewModel GetSnapshotAPI: " + deviceRes);
            Devicesnapshot devicesnapshot = null;

            if (!string.IsNullOrEmpty(deviceRes))
            {
                devicesnapshot = JsonConvert.DeserializeObject <Devicesnapshot>(deviceRes);
                AssignSnapshotObjects(devicesnapshot);
            }
            InvokeDelegate();
            return(false);
        }
Beispiel #20
0
        /// <summary>
        /// 下发获取分站基础信息
        /// </summary>
        /// <param name="fzh"></param>
        /// <param name="getSoftwareVersions"></param>
        /// <param name="getHardwareVersions"></param>
        /// <param name="getDeviceSoleCoding"></param>
        public static void QueryDeviceInfoRequest(string fzh, byte getSoftwareVersions, byte getHardwareVersions, byte getDeviceSoleCoding)
        {
            var req = new DeviceInfoRequest
            {
                deviceInfoRequestItems = new List <DeviceInfoRequestItem>()
                {
                    new DeviceInfoRequestItem()
                    {
                        Fzh         = Convert.ToUInt16(fzh),
                        controlType = 1
                    }
                }
            };
            var res = PointDefineService.QueryDeviceInfoRequest(req);

            if (!res.IsSuccess)
            {
                throw new Exception(res.Message);
            }
        }
Beispiel #21
0
        public async Task <string> GetDeviceInfo(DeviceInfoRequest deviceInfoRequest)
        {
            try
            {
                if (deviceInfoRequest != null)
                {
                    string jsonIgnoreNullValues = JsonConvert.SerializeObject(deviceInfoRequest, Formatting.Indented, new JsonSerializerSettings
                    {
                        NullValueHandling = NullValueHandling.Ignore
                    });
                    var info = await GetWsData(UrlConfig.GetFullURL(Endpoint.info, Endpoint_Method.GET, isNewFW: true), jsonIgnoreNullValues);

                    return(info);
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine(e);
            }
            return(string.Empty);
        }
Beispiel #22
0
        /// <summary>
        /// SetInitCount Will post value to device
        /// </summary>
        public async Task <string> SetInitilizeSprayCount(string val)
        {
            DeviceInfoRequest deviceInfoRequest = new DeviceInfoRequest();

            deviceInfoRequest.request = "init";
            deviceInfoRequest.info    = "spray";
            deviceInfoRequest.value   = val;
            var deviceRes = await deviceService.GetDeviceInfo(deviceInfoRequest);

            if (!string.IsNullOrEmpty(deviceRes))
            {
                var devicesnapshot = JsonConvert.DeserializeObject <Devicesnapshot>(deviceRes);
                AssignSnapshotObjects(devicesnapshot);
            }

            //todo remove after origin impl
            // InitializeSpray.value = val;

            InvokeDelegate();

            return(deviceRes);
        }
 /// <summary>
 /// Registers a user for an existing device
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='userId'>
 /// The ID of the user
 /// </param>
 /// <param name='body'>
 /// The device info.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <object> RegisterUserForDeviceAsync(this IDevices operations, string userId, DeviceInfoRequest body, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.RegisterUserForDeviceWithHttpMessagesAsync(userId, body, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Beispiel #24
0
        public BasicResponse QueryDeviceInfoRequest(DeviceInfoRequest request)
        {
            var responseStr = HttpClientHelper.Post(Webapi + "/v1/PointDefine/QueryDeviceInfoRequest?token=" + Token, JSONHelper.ToJSONString(request));

            return(JSONHelper.ParseJSONString <BasicResponse>(responseStr));
        }
 /// <summary>
 /// Registers a user for an existing device
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='userId'>
 /// The ID of the user
 /// </param>
 /// <param name='body'>
 /// The device info.
 /// </param>
 public static object RegisterUserForDevice(this IDevices operations, string userId, DeviceInfoRequest body)
 {
     return(operations.RegisterUserForDeviceAsync(userId, body).GetAwaiter().GetResult());
 }
 public BasicResponse QueryDeviceInfoRequest(DeviceInfoRequest request)
 {
     return(_PointDefineService.QueryDeviceInfoRequest(request));
 }