public static DeviceInfo DeserializDeviceInfo(string deviceRes) { try { return(JsonConvert.DeserializeObject <DeviceInfo>(deviceRes)); } catch (Exception e) { NetworkServiceUtil.Log("DeviceDetailsViewModel DeserializDeviceInfo Exception: " + e); } return(null); }
private DeviceInfo DeserializDeviceInfo(string deviceRes) { try { return(JSONHelper.DeserializDeviceInfo(deviceRes)); } catch (Exception e) { NetworkServiceUtil.Log("DeviceDetailsViewModel DeserializDeviceInfo Exception: " + e); } return(null); }
/// <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); }
//////////////////////////////////////////////// //////////////////////////////////////////////// /////////////////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); }
/// <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); }
private async void LoadData() { OTAHelper.Instance.DeviceService = DeviceService.Instance; var isAlive = await IsDeviceAlive(4); if (!isAlive) { Terra.Core.Utils.Utils.Toast("Heart beat connection lost!"); await Shell.Current.Navigation.PopAsync(); return; } await SetTime(); Thread.Sleep(sleeptime); var rawSchedule = await GetScheduleFromService(); NetworkServiceUtil.Log("DeviceDetailsViewModel OnInit rawSchedule: " + rawSchedule); IsScheduleGetError = DoesHaveErrorCode(rawSchedule); if (isScheduleGetError) { if (!OTAHelper.Instance.IsDeviceConnected()) { Terra.Core.Utils.Utils.Toast("Device connection lost!"); await Shell.Current.Navigation.PopAsync(); return; } } Schedulers = DeserializSchedule(rawSchedule); Result?.Invoke(Schedulers); // return; // Thread.Sleep(1100); // await GetBatteryCount(); //Thread.Sleep(sleeptime); // await GetInitilizeSprayCount(); //Thread.Sleep(sleeptime); // await GetRemSprayCount(); //Thread.Sleep(sleeptime); // await GetDaysLeftCount(); //Thread.Sleep(sleeptime); // await GetNextSprayCounterCount(); await GetSnapshotAPI(); CheckNewFWUpdateAvailability(); }
public async Task <string> DeleteScheduleItem(string index) { NetworkServiceUtil.Log("DeleteScheduleItem ==> called"); ScheduleIndex scheduleIndex = new ScheduleIndex(); scheduleIndex.deleteindex = (Convert.ToInt32(index)).ToString(); scheduleIndex.request = "delete"; scheduleIndex.info = "scheduler"; var deviceRes = await deviceService.DeleteScheduleIndex(scheduleIndex); var _DaysLeft = DeserializDeviceInfo(deviceRes); DaysLeft = _DaysLeft; DeviceInfoReceived?.Invoke(DaysLeft); return(deviceRes); }
/// <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); }
/// <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); }
private async Task <bool> ConnectNetwork(string ssid, string pwd) { NetworkServiceUtil.Log("DeviceDetailsViewModel ConfigDevice : " + DeviceName + " " + pwd); bool wifiConnected = false; if (!string.IsNullOrEmpty(DeviceName) && !string.IsNullOrEmpty(pwd)) { var Fssid = $"\"{ssid}\""; if (DependencyService.Get <IPlatformWifiManager>().GetSsId() == Fssid) { wifiConnected = true; } if (!wifiConnected) { if (await wifiAdapter.ConnectToWifi(ssid, pwd)) { wifiConnected = true; DependencyService.Get <IPlatformWifiManager>().ForceWifiOverCellular(); NetworkServiceUtil.Log("DeviceDetailsViewModel ConfigDevice success: " + DeviceName + " " + pwd); SelectedWifi.isSelected = true; } else { DeviceConnectStatus = "Failed to Connect"; SelectedWifi.isSelected = false; } } } else { DeviceConnectStatus = "Incorrect Password"; SelectedWifi.isSelected = false; } if (wifiConnected) { DeviceConnectStatus = "Connected"; await Shell.Current.GoToAsync("DeviceDetailsPage"); } return(true); }
public async Task <bool> ConfigDevice(String Ssid, String bssid, String Passphrase) { // var Ssid = $"\"{_Ssid}\""; // var Passphrase = $"\"{_Passphrase}\""; // string bssid = wifiAdapter.GetBssid(); smartconfig = DependencyService.Get <ISmartConfigHelper>().CreatePlatformTask(); // return true; smartconfig.SetSmartConfigTask(Ssid, bssid, Passphrase, false, 60); NetworkServiceUtil.Log("DeviceDetailsViewModel ConfigDevice : " + Ssid + " " + Passphrase); string Message = "running configuration"; await Task.Run(() => { var result = smartconfig.executeForResult(); Message = Message + "Device address set up: " + result.getInetAddress() + "\r\n"; NetworkServiceUtil.Log("DeviceDetailsViewModel ConfigDevice : " + Message); return(true); }); return(false); }
/// <summary> /// HeartBeat health check for device status /// </summary> public async Task <HeartBeat> GetHeartBeat() { try { HeartBeat heartBeat = new HeartBeat(); heartBeat.type = "check"; var deviceRes = await deviceService.GetHealthCheck(heartBeat); NetworkServiceUtil.Log("DeviceDetailsViewModel GetHeartBeat: " + deviceRes); if (!string.IsNullOrEmpty(deviceRes)) { var health = JsonConvert.DeserializeObject <HeartBeat>(deviceRes); return(health); } } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex); NetworkServiceUtil.Log("DeviceDetailsViewModel GetHeartBeat Exception: " + ex); } return(null); }