From 2f3d7b9b10e6c29864469ceda3d55c7effb45ecf Mon Sep 17 00:00:00 2001 From: Struchkov Mark Date: Sun, 19 Mar 2023 18:21:48 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BB=D0=BE=D0=B3=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=B2=D0=B5=D0=B1=D1=85=D1=83=D0=BA=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../quarkus/core/TelegramWebhookConnect.java | 4 +++- .../simple/core/TelegramWebhookConnect.java | 6 ++++-- .../telegram/webhook/WebhookController.java | 15 +++++++++------ 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/telegram-core/telegram-core-quarkus/src/main/java/dev/struchkov/godfather/telegram/quarkus/core/TelegramWebhookConnect.java b/telegram-core/telegram-core-quarkus/src/main/java/dev/struchkov/godfather/telegram/quarkus/core/TelegramWebhookConnect.java index da33371..9e5dc16 100644 --- a/telegram-core/telegram-core-quarkus/src/main/java/dev/struchkov/godfather/telegram/quarkus/core/TelegramWebhookConnect.java +++ b/telegram-core/telegram-core-quarkus/src/main/java/dev/struchkov/godfather/telegram/quarkus/core/TelegramWebhookConnect.java @@ -15,17 +15,19 @@ public class TelegramWebhookConnect implements TelegramConnect { private TelegramWebhookBot webhookBot; public TelegramWebhookConnect(TelegramBotConfig telegramBotConfig) { - log.info("Инициализация webhook соединения. {}", telegramBotConfig.getWebhookConfig()); try { final TelegramWebhookBot bot = new TelegramWebhookBot(telegramBotConfig); final WebhookConfig webhookConfig = telegramBotConfig.getWebhookConfig(); if (webhookConfig.isEnable()) { + log.info("Инициализация webhook соединения. {}", telegramBotConfig.getWebhookConfig()); final SetWebhook setWebhook = SetWebhook.builder() .url(webhookConfig.getRootUrl() + "/" + webhookConfig.getRootUrl() + "?webhookAccessKey=" + webhookConfig.getAccessKey()) .build(); bot.setWebhook(setWebhook); webhookBot = bot; log.info("Инициализация webhook соединения прошла успешно."); + } else { + log.debug("Webhook соединение не устанавливалось."); } } catch (TelegramApiException e) { log.error(e.getMessage()); diff --git a/telegram-core/telegram-core-simple/src/main/java/dev/struchkov/godfather/telegram/simple/core/TelegramWebhookConnect.java b/telegram-core/telegram-core-simple/src/main/java/dev/struchkov/godfather/telegram/simple/core/TelegramWebhookConnect.java index 74d8ec8..4a9ffd3 100644 --- a/telegram-core/telegram-core-simple/src/main/java/dev/struchkov/godfather/telegram/simple/core/TelegramWebhookConnect.java +++ b/telegram-core/telegram-core-simple/src/main/java/dev/struchkov/godfather/telegram/simple/core/TelegramWebhookConnect.java @@ -19,17 +19,19 @@ public class TelegramWebhookConnect implements TelegramConnect { } private void initWebHook(TelegramBotConfig telegramBotConfig) { - log.info("Инициализация webhook соединения. {}", telegramBotConfig.getWebhookConfig()); try { final TelegramWebhookBot bot = new TelegramWebhookBot(telegramBotConfig); final WebhookConfig webhookConfig = telegramBotConfig.getWebhookConfig(); if (webhookConfig.isEnable()) { + log.info("Инициализация webhook соединения. {}", telegramBotConfig.getWebhookConfig()); final SetWebhook setWebhook = SetWebhook.builder() - .url(webhookConfig.getRootUrl() + "/" + webhookConfig.getRootUrl() + "?webhookAccessKey=" + webhookConfig.getAccessKey()) + .url(webhookConfig.getRootUrl() + "/" + webhookConfig.getRootUrl() + "callback" + "?webhookAccessKey=" + webhookConfig.getAccessKey()) .build(); bot.setWebhook(setWebhook); webhookBot = bot; log.info("Инициализация webhook соединения прошла успешно."); + } else { + log.debug("Webhook соединение не устанавливалось."); } } catch (TelegramApiException e) { log.error(e.getMessage()); diff --git a/telegram-webhook/telegram-webhook-quarkus/src/main/java/dev/struchkov/godfather/telegram/webhook/WebhookController.java b/telegram-webhook/telegram-webhook-quarkus/src/main/java/dev/struchkov/godfather/telegram/webhook/WebhookController.java index 59a1dd5..65642be 100644 --- a/telegram-webhook/telegram-webhook-quarkus/src/main/java/dev/struchkov/godfather/telegram/webhook/WebhookController.java +++ b/telegram-webhook/telegram-webhook-quarkus/src/main/java/dev/struchkov/godfather/telegram/webhook/WebhookController.java @@ -22,6 +22,7 @@ import static dev.struchkov.haiti.utils.Inspector.isTrue; @Slf4j public class WebhookController { + public static final String ERROR_ACCESS = "В доступе отказано!"; private final String pathKey; private final String accessKey; private final EventDistributor eventDistributor; @@ -38,12 +39,14 @@ public class WebhookController { @Produces(MediaType.APPLICATION_JSON) public Uni updateReceived(@PathParam("webhookPath") String botPath, @QueryParam("webhookAccessKey") String webhookAccessKey, Update update) { return Uni.createFrom().voidItem() - .onItem().invoke(() -> { - isTrue(pathKey.equals(botPath), accessException("В доступе отказано!")); - isTrue(accessKey.equals(webhookAccessKey), accessException("В доступе отказано!")); + .invoke(() -> log.trace("Получено webhook событие")) + .invoke(() -> { + isTrue(pathKey.equals(botPath), accessException(ERROR_ACCESS)); + isTrue(accessKey.equals(webhookAccessKey), accessException(ERROR_ACCESS)); }) .onItem().ignore().andSwitchTo(() -> eventDistributor.processing(update)) - .onItem().transform(ignore -> Response.ok().build()); + .invoke(() -> log.trace("Webhook событие успешно обработано")) + .replaceWith(Response.ok().build()); } @GET @@ -52,8 +55,8 @@ public class WebhookController { public Uni testReceived(@PathParam("webhookPath") String botPath, @QueryParam("webhookAccessKey") String webhookAccessKey) { return Uni.createFrom().voidItem() .onItem().invoke(() -> { - isTrue(pathKey.equals(botPath), accessException("В доступе отказано!")); - isTrue(accessKey.equals(webhookAccessKey), accessException("В доступе отказано!")); + isTrue(pathKey.equals(botPath), accessException(ERROR_ACCESS)); + isTrue(accessKey.equals(webhookAccessKey), accessException(ERROR_ACCESS)); }) .onItem().transform(ignore -> "Hi there " + botPath + "!"); }