public bool GetSerialDataByPitch(string stationName, ref TeslaJSONResults MESResults, ref string errorMsg, ref string JSONResponseString)
        {
            try
                {
                    string fullURL = getByPitchURL + stationName;
                    WebRequest request = WebRequest.Create(fullURL);
                    WebResponse JSONResponse = request.GetResponse();
                    Stream responseStream = JSONResponse.GetResponseStream();
                    StreamReader reader = new StreamReader(responseStream);
                    string serverResponseString = reader.ReadToEnd();
                    JSONResponseString = serverResponseString;

                    //************* deserialize using JavaScriptSerializer
                    var deserializer = new System.Web.Script.Serialization.JavaScriptSerializer();
                    TeslaJSONResults deserializedObject = deserializer.Deserialize<TeslaJSONResults>(serverResponseString);

                    MESResults = deserializedObject;

                    return true;
                }
                catch (Exception ex)
                {
                    errorMsg = "Error with GetSerialDataByPitch - " +  ex.Message;
                    return false;
                }
        }
        public bool CreateIntoTPMSDataByVIN(TeslaJSONResults createVehicle, ref TeslaJSONResults MESResults, ref string errorMsg, ref string JSONResponseString)
        {
            string fullURL = "";

                try
                {
                    if (createVehicle.VIN.Length < 17 || createVehicle.VIN.Length > 17)
                    {
                        //VIN length error dont send to MES.
                        errorMsg = "Invalid VIN " + createVehicle.VIN + ". The VIN must be 17 characters.";
                        return false;
                    }

                    //Setup the URL
                    //http://sjc04-meswebdev.teslamotors.com/TPMS/Provider/StoreSerialInfoByVIN?VIN=5YJSA1DN3CFF00017 &thresholdfrontright=1&thresholdfrontleft=1&thresholdrearright=1&thresholdrearleft=1&pressurefrontright=1&pressurefrontleft=1&pressurerearright=1&pressurerearleft=1
                    fullURL = createByVINURL + createVehicle.VIN + "&thresholdfrontright=" + createVehicle.FrontHardThreshold;

                    WebRequest request = WebRequest.Create(fullURL);
                    WebResponse JSONResponse = request.GetResponse();
                    Stream responseStream = JSONResponse.GetResponseStream();
                    StreamReader reader = new StreamReader(responseStream);
                    string serverResponseString = reader.ReadToEnd();
                    JSONResponseString = serverResponseString;

                    //************* deserialize using JavaScriptSerializer
                    var deserializer = new System.Web.Script.Serialization.JavaScriptSerializer();
                    TeslaJSONResults deserializedObject = deserializer.Deserialize<TeslaJSONResults>(serverResponseString);

                    MESResults = deserializedObject;

                    return true;
                }
                catch (Exception ex)
                {
                    errorMsg = "Error in CreateIntoTPMSDataByVIN. " + ex.Message;
                    return false;
                }
        }
        public bool SetSerialDataByVIN(string vinNumber, string RFSerialNum, string RFPressure, string LFSerialNum, string LFPressure, string RRSerialNum, string RRPressure, string LRSerialNum, string LRPressure, ref TeslaJSONResults MESResults, ref string errorMsg, ref string JSONResponseString)
        {
            string fullURL = "";

                try
                {
                    //Example URL to set by vin:
                    //http://sjc04-meswebdev/TPMS//Provider/SetSerialInfoByVIN?VIN=5YJSA1S16EFP49587&serialFrontLeft=test1&serialFrontRight=test2&serialRearLeft=test3&serialRearRight=test3&test4&pressurefrontright=1&pressurefrontleft=1&pressurerearright=1&pressurerearleft=1

                    if (vinNumber.Length < 17 || vinNumber.Length > 17)
                    {
                        errorMsg = "Invalid VIN " + vinNumber + ". The VIN must be 17 characters.";
                        return false;
                    }

                    //Add VIN and Serial Numbers to the URL
                    fullURL = setByVINUrl + vinNumber + "&&serialFrontLeft=" + LFSerialNum + "&&serialFrontRight=" + RFSerialNum + "&&serialRearLeft=" + LRSerialNum + "&&serialRearRight=" + RRSerialNum;
                    WebRequest request = WebRequest.Create(fullURL);
                    WebResponse JSONResponse = request.GetResponse();
                    Stream responseStream = JSONResponse.GetResponseStream();
                    StreamReader reader = new StreamReader(responseStream);
                    string serverResponseString = reader.ReadToEnd();
                    JSONResponseString = serverResponseString;

                    //************* deserialize using JavaScriptSerializer
                    var deserializer = new System.Web.Script.Serialization.JavaScriptSerializer();
                    TeslaJSONResults deserializedObject = deserializer.Deserialize<TeslaJSONResults>(serverResponseString);

                    MESResults = deserializedObject;

                    return true;
                }
                catch (Exception ex)
                {
                    errorMsg = "Error with SetSerialDataByVIN - " + ex.Message;
                    return false;
                }
        }
        public bool GetSerialDataByVIN(string vinNumber, ref TeslaJSONResults MESResults, ref string errorMsg, ref string JSONResponseString)
        {
            try
                {
                    if (vinNumber.Length < 17 || vinNumber.Length > 17)
                    {
                        errorMsg = "Invalid VIN.";
                        return false;
                    }

                    WebRequest request = WebRequest.Create(getByVINUrl + vinNumber);
                    WebResponse JSONResponse = request.GetResponse();
                    Stream responseStream = JSONResponse.GetResponseStream();
                    StreamReader reader = new StreamReader(responseStream);
                    string serverResponseString = reader.ReadToEnd();
                    JSONResponseString = serverResponseString;

                    //************* deserialize using JavaScriptSerializer
                    var deserializer = new System.Web.Script.Serialization.JavaScriptSerializer();
                    TeslaJSONResults deserializedObject = deserializer.Deserialize<TeslaJSONResults>(serverResponseString);

                    MESResults = deserializedObject;

                    return true;
                }
                catch (Exception ex)
                {
                    errorMsg = "Error with GetSerialDataByVIN - " + ex.Message;
                    return false;
                }
        }