예제 #1
0
        private void Awake()
        {
            _serialController = FindObjectOfType <SerialControllerMano>();
            _serialController.OnSerialMessageReceived += OnSerialMessageReceived;
            _tmpCapacities = new Capacities();
            _calibrationOverviewSendDto = new CalibrationOverviewSendDto
            {
                GameDevice = GameDevice.Mano.GetDescription(),
                PacientId  = Pacient.Loaded.IdApi
            };
            _flowWatch         = new Stopwatch();
            _timerWatch        = new Stopwatch();
            _capturedSamples   = new Dictionary <float, float>();
            _calibrationLogger = new CalibrationLoggerMano();

            _dudeObject.transform.Translate(-Camera.main.orthographicSize * Camera.main.aspect + (_dudeObject.transform.localScale.x / 2f), 0f, 0f);

            if (CalibrationToLoad > 0)
            {
                _currentExercise = CalibrationToLoad;
            }
        }
예제 #2
0
        public async Task <DataManagerReponse <CalibrationOverviewDto, CalibrationOverviewSendDto> > SaveCalibrationOverview(CalibrationOverviewSendDto calibration)
        {
            var response = new DataManagerReponse <CalibrationOverviewDto, CalibrationOverviewSendDto>();

            LocalDataManager.Instance.SaveLocalData("CalibrationOverview", calibration, Pacient.Loaded.Name);

            if (!ConfigurationManager.SendRemoteData || string.IsNullOrWhiteSpace(ConfigurationManager.GameApiToken))
            {
                return(response);
            }

            var hasInternetConnection = await ApiClient.Instance.HasInternetConnection();

            if (!hasInternetConnection)
            {
                LocalDataManager.Instance.SaveRemoteData("CalibrationOverview", calibration, Pacient.Loaded.IdApi);
                response.LocalResponse = calibration;
                return(response);
            }

            response.ApiResponse = await ApiClient.Instance.SaveCalibrationOverview(calibration);

            return(response);
        }
예제 #3
0
        public async Task <ApiResponse <CalibrationOverviewDto> > SaveCalibrationOverview(CalibrationOverviewSendDto calibrationOverviewSendDto)
        {
            var requestUrl = $"{_baseUrl}/{CalibrationsUrl}";

            var jsonContent   = JsonConvert.SerializeObject(calibrationOverviewSendDto);
            var contentString = new StringContent(jsonContent, Encoding.UTF8, "application/json");

            HttpResponseMessage response;

            try
            {
                var request = new HttpRequestMessage(HttpMethod.Post, requestUrl);
                request.Headers.Add("GameToken", _gameToken);
                request.Content = contentString;
                response        = await HTTP_CLIENT.SendAsync(request);
            }
            catch (HttpRequestException httpRequestException)
            {
                Debug.LogWarning($"No internet connection!. Error: {httpRequestException}");
                return(new ApiResponse <CalibrationOverviewDto>());
            }

            if (!response.IsSuccessStatusCode)
            {
                return(new ApiResponse <CalibrationOverviewDto>());
            }

            var stringResponse = response.Content.ReadAsStringAsync().Result;
            var apiResponse    = JsonConvert.DeserializeObject <ApiResponse <CalibrationOverviewDto> >(stringResponse);

            return(apiResponse);
        }