public InlineKeyboardMarkup GetMarkup(InlineButtonValue callbackValue = InlineButtonValue.Default) { switch (callbackValue) { case InlineButtonValue.Back: return(GetDefaultMarkup()); case InlineButtonValue.Other: return(GetDetailedDesignMarkup()); case InlineButtonValue.AboutDesign: case InlineButtonValue.FullReading: case InlineButtonValue.BasicReading: case InlineButtonValue.DesignForChildren: case InlineButtonValue.LoveComposite: case InlineButtonValue.BusinessPartnerComposite: case InlineButtonValue.CompositeWithABaby: case InlineButtonValue.FamilyComposite: return(GetPreOrderMarkup()); case InlineButtonValue.IWantToOrder: return(GetPostOrderMarkup()); default: return(GetDefaultMarkup()); } }
public string GetDescriptionText(InlineButtonValue callbackValue = InlineButtonValue.Default) { switch (callbackValue) { case InlineButtonValue.AboutDesign: return(DESIGN); case InlineButtonValue.FullReading: return(FULL_READING); case InlineButtonValue.BasicReading: return(BASIC_READING); case InlineButtonValue.DesignForChildren: return(DESIGN_FOR_CHILDREN); case InlineButtonValue.LoveComposite: return(LOVE_COMPOSITE); case InlineButtonValue.BusinessPartnerComposite: return(BUSINESS_PARTNER_COMPOSITE); case InlineButtonValue.CompositeWithABaby: return(COMPOSITE_WITH_A_BABY); case InlineButtonValue.FamilyComposite: return(FAMILY_COMPOSITE); case InlineButtonValue.IWantToOrder: return(PAYMENT_INFO); default: return(""); } }
public bool IsInlineButtonsUpdateQuery(InlineButtonValue callbackValue = InlineButtonValue.Default) { switch (callbackValue) { case InlineButtonValue.Back: return(true); case InlineButtonValue.Other: return(true); case InlineButtonValue.AboutDesign: case InlineButtonValue.FullReading: case InlineButtonValue.BasicReading: case InlineButtonValue.DesignForChildren: case InlineButtonValue.LoveComposite: case InlineButtonValue.BusinessPartnerComposite: case InlineButtonValue.CompositeWithABaby: case InlineButtonValue.FamilyComposite: return(false); case InlineButtonValue.IWantToOrder: return(true); case InlineButtonValue.IHavePaid: return(false); default: return(true); } }
private async Task <Message> ProcessCallbackQueryAsync(Telegram.Bot.ITelegramBotClient client, long chatId, int messageId, InlineButtonValue callbackButtonValue) { var descriptionText = _descriptionTextService.GetDescriptionText(callbackButtonValue); var queryButtonText = _inlineMarkupService.GetButtonText(callbackButtonValue); var inlineKeyboard = _inlineMarkupService.GetMarkup(callbackButtonValue); var defaultText = "Что вам интересно?"; if (callbackButtonValue == InlineButtonValue.IWantToOrder) { await client.EditMessageReplyMarkupAsync(chatId, messageId, null); return(await client.SendTextMessageAsync(chatId, descriptionText, replyMarkup : inlineKeyboard)); } if (callbackButtonValue == InlineButtonValue.IHavePaid) { await client.EditMessageReplyMarkupAsync(chatId, messageId, null); await client.SendTextMessageAsync(chatId, "Спасибо! Теперь свяжитель с Еленой для того чтобы выбрать удобное для вас время."); await Task.Delay(2000); return(await client.SendTextMessageAsync(chatId, "Отправьте команду /info если хотите увидеть доступные опции снова.")); } var text = string.IsNullOrEmpty(descriptionText) ? defaultText : $"_{queryButtonText}_\n{descriptionText}"; return(await client.EditMessageTextAsync( chatId, messageId, text, ParseMode.Markdown, replyMarkup : inlineKeyboard )); }