public OkResult HandleWebhook(string token, [FromBody] TelegramUpdate telegramUpdate) { try { if (token != _token) { return(Ok()); } if (telegramUpdate?.TelegramMesssage?.TelegramChat == null) { return(Ok()); } var chat = telegramUpdate.TelegramMesssage.TelegramChat; if (telegramUpdate.TelegramMesssage.TelegramChat.Type != ChatTypes.Private) { _messageParser.AddUpdateChatListing(chat); } var response = _messageParser.GetChatResponse(telegramUpdate.TelegramMesssage.Text); if (string.IsNullOrWhiteSpace(response)) { return(Ok()); } _telegramRepository.SendMessage(response, chat.Id); } catch (Exception ex) { Trace.TraceError(ex.ToString()); return(Ok()); //stop telegram spamming our webhook if we fail } return(Ok()); }