diff options
Diffstat (limited to 'src/main/java/com/mavlushechka/animarfo/telegram/user/message')
-rw-r--r-- | src/main/java/com/mavlushechka/animarfo/telegram/user/message/UserMessage.java | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/main/java/com/mavlushechka/animarfo/telegram/user/message/UserMessage.java b/src/main/java/com/mavlushechka/animarfo/telegram/user/message/UserMessage.java new file mode 100644 index 0000000..423103f --- /dev/null +++ b/src/main/java/com/mavlushechka/animarfo/telegram/user/message/UserMessage.java @@ -0,0 +1,74 @@ +package com.mavlushechka.animarfo.telegram.user.message; + +import com.mavlushechka.animarfo.anime.Anime; +import com.mavlushechka.animarfo.telegram.user.keyboard.UserKeyboard; +import com.mavlushechka.animarfo.database.Database; +import com.mavlushechka.animarfo.telegram.bot.Bot; +import com.pengrad.telegrambot.model.Message; +import com.pengrad.telegrambot.model.request.ParseMode; +import com.pengrad.telegrambot.request.SendMessage; + +import java.io.IOException; +import java.util.HashMap; +import java.util.logging.Level; +import java.util.logging.Logger; + +public class UserMessage { + public static Message message; + public static String text; + public static long chatId; + private static final HashMap<String, String> animeTypes = new HashMap<>(); + private static final Logger LOGGER = Logger.getLogger(UserMessage.class.getName()); + + static { + LOGGER.setLevel(Level.ALL); + } + + static { + animeTypes.put("Онгоинги", "Ongoing"); + animeTypes.put("Сериалы", "Serials"); + animeTypes.put("Фильмы", "Films"); + } + + public static void setInformation(Message message) { + UserMessage.message = message; + UserMessage.text = message.text(); + UserMessage.chatId = message.chat().id(); + } + + public static void execute(Message message) throws IOException { + UserMessage.setInformation(message); + + if (animeTypes.get(UserMessage.text) != null || UserMessage.text.equals("Поиск")) { + if (UserMessage.text.equals("Поиск")) { + Anime.isSearching = true; + } else { + Anime.isSearching = false; + Anime.type = animeTypes.get(UserMessage.text); + } + Bot.TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, "В какой озвучке будем смотреть?").replyMarkup(UserKeyboard.getDub())); + } else if (UserMessage.text.equals("/start") || UserMessage.text.equals("Информация")) { + Anime.isSearching = false; + Bot.TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, ("Приветик, меня звать AniMarfo. Благодаря мне тебе не надо будет самому искать в интернете аниме-тайтлы и подходящую тебе озвучку или же субтитры. \n\nНа данный момент я умею искать аниме по названию, а также находить недавние онгоинги, сериалы и фильмы.\nДоступные озвучки: Anidub.\n\nВыбери одну из команд на твоей клавиатуре, для того чтобы начать увлекательное путешествие в мир аниме :3")).replyMarkup(UserKeyboard.getMain())); + } else if (UserMessage.text.equals("Помощь")) { + Anime.isSearching = false; + Bot.TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, ("<b>Вопрос</b>: Как скачать аниме с телефона?\n<b>Ответ</b>: Воспроизведи видео, удерживай палец на видео и после появления окна с действиями, нажми на кнопку \"Сохранить файл на устройстве\".\n\n<b>Вопрос</b>: Как скачать аниме с компьютера?\n<b>Ответ</b>: Воспроизведи видео, нажми на правую кнопку мышки по видео и после появления окна с действиями, нажми левой кнопкой мышки на кнопку \"Сохранить Видео как...\", после чего тебе необходимо будет указать путь для загрузки.")).parseMode(ParseMode.HTML).replyMarkup(UserKeyboard.getMain())); + } else { + if (Anime.isSearching && Anime.dub != null) { + Anime.setSearched(UserMessage.text); + try { + Bot.sendSearchedAnime(); + } catch (IOException e) { + e.printStackTrace(); + } + Anime.isSearching = false; + } else { + Anime.isSearching = false; + Bot.TELEGRAM_BOT.execute(new SendMessage(UserMessage.chatId, "Прости, но я тебя не понимаю, воспользуйся командами на твоей клавиатуре.").replyMarkup(UserKeyboard.getMain())); + } + } + LOGGER.fine("Message is executed"); + + Database.saveUser(Bot.telegramUser); + } +} |