public string Get([FromBody] MetarModel model) { if (string.IsNullOrEmpty(model.Metar)) { return("Metar vazio, por favor tente novamente."); } else { var airportListWeather = new TranslateMetar(); return(airportListWeather.Translate(model.Metar)); } }
public static void Bot_OnMessage(object sender, MessageEventArgs e) { try { if (e.Message.Text == "/start") { e.Message.Text = ""; botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Olá, seja bem-vindo.\n" + "Digite algum ICAO para consulta. Exemplo: 'SBGR'\n" + "Ou se preferir veja a lista de ICAO's:\n" + "'/listaicaos'" ); } else if (e.Message.Text.Length == 4 || e.Message.Text.Length == 5) { Icao = e.Message.Text; if (Icao.Contains("/")) { var a = GetIcaoCode(Icao.Substring(1)); if (a != null) { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: $"{a}\n" + "'/simplificar'" ); } else { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "METAR não localizado na base de dados da REDEMET, por favor tente outro ICAO." ); Icao = string.Empty; } } else { var a = GetIcaoCode(Icao); if (a != null) { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: $"{a}\n" + "'/simplificar'" ); } else { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "METAR não localizado na base de dados da REDEMET, por favor tente outro ICAO." ); Icao = string.Empty; } } e.Message.Text = string.Empty; } else if (e.Message.Text.Length < 4 && e.Message.Text.Contains("/")) { if (e.Message.Text.Length == 3) { var list = new AirportListIcao(); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: $"{list.GetEstado(e.Message.Text)}" ); e.Message.Text = string.Empty; } else { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Não foi possível ralizar esta ação." ); e.Message.Text = string.Empty; } } else if (e.Message.Text.Equals("/Simplificar", StringComparison.InvariantCultureIgnoreCase)) { if (String.IsNullOrEmpty(Icao)) { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Não foi possível realizar esta ação, tente novamente usando outro METAR." ); } else if (Icao.Contains("/")) { var translateMetar = new TranslateMetar(); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: translateMetar.Translate(GetIcaoCode(Icao.Substring(1))) ); } else { var translateMetar = new TranslateMetar(); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: translateMetar.Translate(GetIcaoCode(Icao)) ); } } else if (e.Message.Text.Equals("/infoaero", StringComparison.InvariantCultureIgnoreCase)) { var aPlist = new TranslateMetar(); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: aPlist.ConvertIcaoForAirportName(Icao) ); Icao = string.Empty; } else if (e.Message.Text.Equals("/googlemaps", StringComparison.InvariantCultureIgnoreCase)) { var aPlist = new TranslateMetar(); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: aPlist.GetMapsLocation(Icao) ); Icao = string.Empty; } else if (e.Message.Text.Equals("/listaicaos", StringComparison.InvariantCultureIgnoreCase)) { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Selecione um estado:\n" + "\n/AC - " + "/AL - " + "/AP - " + "/AM\n" + "\n/BA - " + "/CE - " + "/DF - " + "/ES\n" + "\n/GO - " + "/MA - " + "/MT - " + "/MS\n" + "\n/MG - " + "/PA - " + "/PB - " + "/PR\n" + "\n/PE - " + "/PI - " + "/RJ - " + "/RN\n" + "\n/RS - " + "/RO - " + "/RR - " + "/SC\n" + "\n/SE - " + "/SP - " + "/TO\n" ); } else { botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Não consegui te entender.\n" + "Veja a lista de comandos:\n" + "\n'/start'\n" + "'/listaicaos'" ); } } catch (System.Exception Exception) { Console.WriteLine($"\n___________________________________________________________________\n" + $"\nData: {DateTime.Now.ToString("dd/MM/yyyy - hh:mm:ss")}\n" + $"\nClasse: GetDate\n" + $"\nMétodo: GetDateMetar()\n" + $"\nExceção executada na classe Program, verifique-a:\n\n{Exception}" + $"\n___________________________________________________________________\n"); botClient.SendTextMessageAsync( chatId: e.Message.Chat, text: "Não consegui te entender.\n" + "Veja a lista de comandos:\n" + "\n'/start'\n" + "'/listaicaos'" ); } }