public static LibActionResult SendUserName(string userInput, Chat chat, TelegramBotClient botClient) { DomainDataContext chatDomainDataContext = (DomainDataContext)chat.DataContext; string userName = chatDomainDataContext.UserName; TelegramActions.sendMessage(chat.СhatId, userName, null, Program.config.BotClient); return(new LibActionResult() { Status = true }); }
public static LibActionResult PrintExpense(string userInput, Chat chat, TelegramBotClient botClient) { string messageText = String.Format("{0} - {1}", ((DomainDataContext)chat.DataContext).CurrentExpense.Category.Name, ((DomainDataContext)chat.DataContext).CurrentExpense.ExpenseValue ); var status = TelegramActions.sendMessage(chat.СhatId, messageText, null, botClient); return(new LibActionResult() { Status = status }); }
public static LibActionResult SendSheetsListForSelect(string userInput, Chat chat, TelegramBotClient botClient) { var connector = ((DomainDataContext)chat.DataContext).GoogleSheetsConnector; var status = false; var messageText = "Выбери лист, на котором будут учитываться расходы"; var r = AuthorizeAndGetSheetsService(userInput, chat, botClient); if (r.Status == false) { return(new LibActionResult() { Status = false, ErrorMessage = "Не удалось авторизовать твой аккаунт у Гугла:(" }); } var sheetsList = connector.SheetsService.Spreadsheets.Get(connector.SpreadsheetId) .Execute().Sheets; var buttonsList = new List <InlineKeyboardButton>(); foreach (var sheet in sheetsList) { buttonsList.Add( InlineKeyboardButton.WithCallbackData( sheet.Properties.Title, sheet.Properties.SheetId.ToString() ) ); } var inlineKeyboard = new InlineKeyboardMarkup(buttonsList); status = TelegramActions.sendMessage(chat.СhatId, messageText, inlineKeyboard, botClient); return(new LibActionResult() { Status = status }); }
public static LibActionResult SendExpenseCategoriesList(string userInput, Chat chat, TelegramBotClient botClient) { var status = false; string messageText = "Выбери категорию расходов:"; var categories = ((DomainDataContext)chat.DataContext).ExpenseCategories; var buttonsList = new List <InlineKeyboardButton>(); foreach (var category in categories) { buttonsList.Add(InlineKeyboardButton.WithCallbackData(category.Name)); } var inlineKeyboard = new InlineKeyboardMarkup(buttonsList); status = TelegramActions.sendMessage(chat.СhatId, messageText, inlineKeyboard, botClient); return(new LibActionResult() { Status = status }); }