From 6f1cc0c541b516f51787d5e5318410de0ab73cc2 Mon Sep 17 00:00:00 2001 From: mavlonerkinboev Date: Fri, 23 Jul 2021 05:40:57 +0500 Subject: tenth commit --- src/main/java/files/Bot.java | 63 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/main/java/files/Bot.java (limited to 'src/main/java/files/Bot.java') diff --git a/src/main/java/files/Bot.java b/src/main/java/files/Bot.java new file mode 100644 index 0000000..fb39ebc --- /dev/null +++ b/src/main/java/files/Bot.java @@ -0,0 +1,63 @@ +package files; + +import com.pengrad.telegrambot.TelegramBot; +import com.pengrad.telegrambot.UpdatesListener; +import com.pengrad.telegrambot.model.Update; +import com.pengrad.telegrambot.model.User; +import com.pengrad.telegrambot.model.request.InlineKeyboardButton; +import com.pengrad.telegrambot.model.request.InlineKeyboardMarkup; +import com.pengrad.telegrambot.model.request.Keyboard; +import com.pengrad.telegrambot.model.request.ReplyKeyboardMarkup; +import com.pengrad.telegrambot.request.SendPhoto; +import files.entity.TelegramUser; + +import javax.persistence.EntityManager; +import java.io.FileInputStream; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Properties; + +public class Bot { + public static void main(String[] args) throws IOException { + // Loading properties + Properties properties = new Properties(); + properties.load(new FileInputStream("app.properties")); + + // Creating telegram bot + TelegramBot telegramBot = new TelegramBot(properties.getProperty("telegram_token")); + + telegramBot.setUpdatesListener(updates -> { + updates.forEach(update -> { + DataBase.saveUser(update); + Bot.showRecentlyAddedAnime(telegramBot, update, (byte) 5); + }); + return UpdatesListener.CONFIRMED_UPDATES_ALL; + }); + } + + public static Keyboard getMainKeyboard() { + return new ReplyKeyboardMarkup( + new String[]{"Поиск аниме"}, + new String[]{"Случайное аниме"}) + .oneTimeKeyboard(true) + .resizeKeyboard(true) + .selective(true); + } + + public static Keyboard getCarouselKeyboard() { + return new InlineKeyboardMarkup( + new InlineKeyboardButton("<-").callbackData("callback_data"), + new InlineKeyboardButton("->").callbackData("callback_data")); + } + + public static void showRecentlyAddedAnime(TelegramBot bot, Update update, byte index) { + Anime[] anime = new Anime[0]; + try { + anime = Parser.getAnimeAtMainMenu("https://animego.org/anime?sort=a.createdAt&direction=desc"); + } catch (IOException e) { + e.printStackTrace(); + } + bot.execute(new SendPhoto(update.message().chat().id(), anime[index].getImage()).caption(anime[index].showInfo()).replyMarkup(Bot.getCarouselKeyboard())); + } +} -- cgit v1.2.3