From 5ffa9adde1cb00112d32d749eede5321e702e651 Mon Sep 17 00:00:00 2001 From: mavlonerkinboev Date: Wed, 18 Aug 2021 01:43:03 +0500 Subject: Changed file directory --- .../java/com/mavlonerkinboev/animarfo/Bot.java | 103 +++++++++++++++++++++ .../mavlonerkinboev/animarfo/telegram/bot/Bot.java | 103 --------------------- 2 files changed, 103 insertions(+), 103 deletions(-) create mode 100644 src/main/java/com/mavlonerkinboev/animarfo/Bot.java delete mode 100644 src/main/java/com/mavlonerkinboev/animarfo/telegram/bot/Bot.java (limited to 'src/main/java/com/mavlonerkinboev') diff --git a/src/main/java/com/mavlonerkinboev/animarfo/Bot.java b/src/main/java/com/mavlonerkinboev/animarfo/Bot.java new file mode 100644 index 0000000..aa5eab4 --- /dev/null +++ b/src/main/java/com/mavlonerkinboev/animarfo/Bot.java @@ -0,0 +1,103 @@ +package com.mavlonerkinboev.animarfo; + +import com.mavlonerkinboev.animarfo.anime.Anime; +import com.mavlonerkinboev.animarfo.parser.Parser; +import com.mavlonerkinboev.animarfo.telegram.user.TelegramUser; +import com.mavlonerkinboev.animarfo.telegram.user.callbackquery.UserCallbackQuery; +import com.mavlonerkinboev.animarfo.telegram.user.keyboard.UserKeyboard; +import com.mavlonerkinboev.animarfo.telegram.user.message.UserMessage; +import com.pengrad.telegrambot.TelegramBot; +import com.pengrad.telegrambot.UpdatesListener; +import com.pengrad.telegrambot.model.User; +import com.pengrad.telegrambot.model.request.ParseMode; +import com.pengrad.telegrambot.request.SendMessage; +import com.pengrad.telegrambot.request.SendPhoto; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.Properties; + +// TODO: 7/25/21 Добавить Аниме OVA, аниме по жанру, Дорамы, случайное аниме + +public class Bot { + public final static Properties PROPERTIES = loadProperties(new File("app.properties")); + public final static TelegramBot TELEGRAM_BOT = new TelegramBot(PROPERTIES.getProperty("BOT_TOKEN")); + public static TelegramUser telegramUser = new TelegramUser(); + + public static void main(String[] args) { + TELEGRAM_BOT.setUpdatesListener(updates -> { + updates.forEach(update -> { + if (update.callbackQuery() != null) { + try { + UserCallbackQuery.execute(update.callbackQuery()); + } catch (IOException e) { + e.printStackTrace(); + } + } + if (update.message() != null) { + User user = update.message().from(); + SimpleDateFormat simpleDateFormat = new java.text.SimpleDateFormat("dd.MM.yyyy HH:mm:ss z"); + simpleDateFormat.setTimeZone(java.util.TimeZone.getTimeZone("GMT+5")); + String formattedDate = simpleDateFormat.format(new java.util.Date(update.message().date() * 1000L)); + telegramUser = new TelegramUser(user.id(), user.isBot(), user.firstName(), user.lastName(), user.username(), formattedDate); + try { + UserMessage.execute(update.message()); + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + return UpdatesListener.CONFIRMED_UPDATES_ALL; + }); + } + + public static Properties loadProperties(File file) { + Properties properties = new Properties(); + try (FileInputStream fis = new FileInputStream(file)) { + properties.load(fis); + } catch (IOException e) { + e.printStackTrace(); + } + return properties; + } + + public static void sendAnime(String url) { + Anime[] anime = new Anime[28]; + byte index = Anime.index; + try { + anime = Parser.getAnime(url); + } catch (IOException e) { + e.printStackTrace(); + } + Anime.setList(anime); + TELEGRAM_BOT.execute(new SendPhoto(UserMessage.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); + } + + public static void sendAnimeByCallBackQuery() { + Anime[] anime = Anime.list; + byte index = Anime.index; + TELEGRAM_BOT.execute(new SendPhoto(UserCallbackQuery.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); + } + + public static void sendSearchedAnime() throws IOException { + String searchedAnime = Anime.searched; + byte index = Anime.index; + byte animeAtSearchSize = Parser.getSizeOfSearchedAnime("https://anime.anidub.life/?do=search&mode=advanced&subaction=search&titleonly=3&story=" + searchedAnime); + if (animeAtSearchSize > 0) { + Anime[] anime = new Anime[animeAtSearchSize]; + try { + anime = Parser.getAnime("https://anime.anidub.life/?do=search&mode=advanced&subaction=search&titleonly=3&story=" + searchedAnime); + } catch (IOException e) { + e.printStackTrace(); + } + Anime.size = animeAtSearchSize; + Anime.setList(anime); + TELEGRAM_BOT.execute(new SendPhoto(UserMessage.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); + } else { + TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, "Прости, но я не смог найти аниме с таким названием...\nДавай поищем другое аниме!")); + Anime.isSearching = true; + } + } +} diff --git a/src/main/java/com/mavlonerkinboev/animarfo/telegram/bot/Bot.java b/src/main/java/com/mavlonerkinboev/animarfo/telegram/bot/Bot.java deleted file mode 100644 index 60fca52..0000000 --- a/src/main/java/com/mavlonerkinboev/animarfo/telegram/bot/Bot.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.mavlonerkinboev.animarfo.telegram.bot; - -import com.mavlonerkinboev.animarfo.anime.Anime; -import com.mavlonerkinboev.animarfo.parser.Parser; -import com.mavlonerkinboev.animarfo.telegram.user.TelegramUser; -import com.mavlonerkinboev.animarfo.telegram.user.callbackquery.UserCallbackQuery; -import com.mavlonerkinboev.animarfo.telegram.user.keyboard.UserKeyboard; -import com.mavlonerkinboev.animarfo.telegram.user.message.UserMessage; -import com.pengrad.telegrambot.TelegramBot; -import com.pengrad.telegrambot.UpdatesListener; -import com.pengrad.telegrambot.model.User; -import com.pengrad.telegrambot.model.request.ParseMode; -import com.pengrad.telegrambot.request.SendMessage; -import com.pengrad.telegrambot.request.SendPhoto; - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.text.SimpleDateFormat; -import java.util.Properties; - -// TODO: 7/25/21 Добавить Аниме OVA, аниме по жанру, Дорамы, случайное аниме - -public class Bot { - public final static Properties PROPERTIES = loadProperties(new File("app.properties")); - public final static TelegramBot TELEGRAM_BOT = new TelegramBot(PROPERTIES.getProperty("BOT_TOKEN")); - public static TelegramUser telegramUser = new TelegramUser(); - - public static void main(String[] args) { - TELEGRAM_BOT.setUpdatesListener(updates -> { - updates.forEach(update -> { - if (update.callbackQuery() != null) { - try { - UserCallbackQuery.execute(update.callbackQuery()); - } catch (IOException e) { - e.printStackTrace(); - } - } - if (update.message() != null) { - User user = update.message().from(); - SimpleDateFormat simpleDateFormat = new java.text.SimpleDateFormat("dd.MM.yyyy HH:mm:ss z"); - simpleDateFormat.setTimeZone(java.util.TimeZone.getTimeZone("GMT+5")); - String formattedDate = simpleDateFormat.format(new java.util.Date(update.message().date() * 1000L)); - telegramUser = new TelegramUser(user.id(), user.isBot(), user.firstName(), user.lastName(), user.username(), formattedDate); - try { - UserMessage.execute(update.message()); - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - return UpdatesListener.CONFIRMED_UPDATES_ALL; - }); - } - - public static Properties loadProperties(File file) { - Properties properties = new Properties(); - try (FileInputStream fis = new FileInputStream(file)) { - properties.load(fis); - } catch (IOException e) { - e.printStackTrace(); - } - return properties; - } - - public static void sendAnime(String url) { - Anime[] anime = new Anime[28]; - byte index = Anime.index; - try { - anime = Parser.getAnime(url); - } catch (IOException e) { - e.printStackTrace(); - } - Anime.setList(anime); - TELEGRAM_BOT.execute(new SendPhoto(UserMessage.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); - } - - public static void sendAnimeByCallBackQuery() { - Anime[] anime = Anime.list; - byte index = Anime.index; - TELEGRAM_BOT.execute(new SendPhoto(UserCallbackQuery.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); - } - - public static void sendSearchedAnime() throws IOException { - String searchedAnime = Anime.searched; - byte index = Anime.index; - byte animeAtSearchSize = Parser.getSizeOfSearchedAnime("https://anime.anidub.life/?do=search&mode=advanced&subaction=search&titleonly=3&story=" + searchedAnime); - if (animeAtSearchSize > 0) { - Anime[] anime = new Anime[animeAtSearchSize]; - try { - anime = Parser.getAnime("https://anime.anidub.life/?do=search&mode=advanced&subaction=search&titleonly=3&story=" + searchedAnime); - } catch (IOException e) { - e.printStackTrace(); - } - Anime.size = animeAtSearchSize; - Anime.setList(anime); - TELEGRAM_BOT.execute(new SendPhoto(UserMessage.chatId, anime[index].getImage()).caption(anime[index].showInfo()).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getCarousel())); - } else { - TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, "Прости, но я не смог найти аниме с таким названием...\nДавай поищем другое аниме!")); - Anime.isSearching = true; - } - } -} -- cgit v1.2.3