public static string speechConversion(string input)
{
if (MainV2.comPort.MAV.cs.wpno == 0)
{
input = input.Replace("{wpn}", "Home");
}
else
{
input = input.Replace("{wpn}", MainV2.comPort.MAV.cs.wpno.ToString());
}
input = input.Replace("{asp}", MainV2.comPort.MAV.cs.airspeed.ToString("0"));
input = input.Replace("{alt}", MainV2.comPort.MAV.cs.alt.ToString("0"));
input = input.Replace("{wpa}", MainV2.comPort.MAV.cs.targetalt.ToString("0"));
input = input.Replace("{gsp}", MainV2.comPort.MAV.cs.groundspeed.ToString("0"));
input = input.Replace("{mode}", MainV2.comPort.MAV.cs.mode.ToString());
input = input.Replace("{batv}", MainV2.comPort.MAV.cs.battery_voltage.ToString("0.00"));
input = input.Replace("{batp}", (MainV2.comPort.MAV.cs.battery_remaining).ToString("0"));
input = input.Replace("{vsp}", (MainV2.comPort.MAV.cs.verticalspeed).ToString("0.0"));
input = input.Replace("{curr}", (MainV2.comPort.MAV.cs.current).ToString("0.0"));
input = input.Replace("{hdop}", (MainV2.comPort.MAV.cs.gpshdop).ToString("0.00"));
input = input.Replace("{satcount}", (MainV2.comPort.MAV.cs.satcount).ToString("0"));
input = input.Replace("{rssi}", (MainV2.comPort.MAV.cs.rssi).ToString("0"));
input = input.Replace("{disthome}", (MainV2.comPort.MAV.cs.DistToHome).ToString("0"));
input = input.Replace("{timeinair}",
(new TimeSpan(0, 0, 0, (int)MainV2.comPort.MAV.cs.timeInAir)).ToString());
try
{
object thisBoxed = MainV2.comPort.MAV.cs;
Type test = thisBoxed.GetType();
PropertyInfo[] props = test.GetProperties();
//props
foreach (var field in props)
{
// field.Name has the field's name.
object fieldValue;
TypeCode typeCode;
try
{
fieldValue = field.GetValue(thisBoxed, null); // Get value
if (fieldValue == null)
continue;
// Get the TypeCode enumeration. Multiple types get mapped to a common typecode.
typeCode = Type.GetTypeCode(fieldValue.GetType());
}
catch
{
continue;
}
var fname = String.Format("{{{0}}}", field.Name);
input = input.Replace(fname, fieldValue.ToString());
}
}
catch
{
}
return input;
}