public static AtScriptProcessingData GetContainer() { var a = new AtScriptProcessingData(); a.IsSpecialCommand = false; a.ATCommandToSend = null; a.ByteToSend = 0; return(a); }
public List <AtScriptProcessingData> ProcessArrayString(string[] strArray) { var lstAtScriptData = new List <AtScriptProcessingData>(); foreach (var x in strArray) { if (x.StartsWith(@"//")) { continue; } string[] spliString = x.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries); if (spliString.Length != 4) { continue; } int delay = 0; bool boolReadRx = false; string ATcmd = ""; try { delay = int.Parse(spliString[2].Trim()); boolReadRx = Convert.ToBoolean(spliString[1].Trim()); ATcmd = spliString[0].Trim(); } catch { continue; } var atScriptData = AtScriptProcessingData.GetContainer(); if (ATcmd.StartsWith("__@HEX")) // if special command { atScriptData.IsSpecialCommand = true; try { string[] splitstr = ATcmd.Split(new char[] { '=' }, StringSplitOptions.RemoveEmptyEntries); byte ByToSend = Convert.ToByte(splitstr[1].Trim(), 16); atScriptData.ByteToSend = ByToSend; } catch { continue; } } else { atScriptData.ATCommandToSend = ATcmd; } atScriptData.Delay = delay; atScriptData.ReceiveData = boolReadRx; lstAtScriptData.Add(atScriptData); } return(lstAtScriptData); }