Ejemplo n.º 1
0
        public async Task <TessApiResult> WakeUp()
        {
            this.MyCarData = null;
            string url = $"https://owner-api.teslamotors.com/api/1/vehicles/{myCarId.Value}/wake_up";

            try {
                string result = await CallUrl(url, "POST");

                CarDataResponse pr = SerializeTool.DeSerializeJson <CarDataResponse>(result);
                TessTools.SaveResponse(pr);
                MyCarData = pr.response;

                return(new TessApiResult());
            }
            catch (Exception ex) {
                return(new TessApiResult(ex));
            }
        }
Ejemplo n.º 2
0
        public async Task <TessApiResult> GetCarInfo(bool loadFromDisk)
        {
            this.MyCarData = null;
            try {
                CarDataResponse cdr = null;
                if (loadFromDisk)
                {
                    cdr = TessTools.LoadResponse <CarDataResponse>(out DiskDataDate);
                    Log.Debug("GetCarInfo - loadFromDisk cdr Null:" + (cdr == null));
                    if (cdr != null)
                    {
                        MyCarData = cdr.response;
                        return(new TessApiResult());
                    }
                }

                if (MyCar == null)
                {
                    return(new TessApiResult(false, "No Car Data"));
                }

                if (!loadFromDisk)
                {
                    string url    = $"https://owner-api.teslamotors.com/api/1/vehicles/{myCarId.Value}/vehicle_data";
                    string result = await CallUrl(url, "GET");

                    cdr = SerializeTool.DeSerializeJson <CarDataResponse>(result);
                }

                MyCarData = cdr?.response;
                if (cdr != null)
                {
                    TessTools.SaveResponse(cdr);
                }
                return(new TessApiResult());
            }
            catch (Exception ex) {
                Log.Error("MyTess.GetCarInfo", ex);
                return(new TessApiResult(ex));
            }
        }