From bb9e3538e23d7c7dbb915c7a504071722f666d98 Mon Sep 17 00:00:00 2001 From: Jason House Date: Wed, 5 Aug 2020 19:17:56 +0900 Subject: [PATCH] Minor cleanup to notifications --- .../gaps/notifications/NotificationAgent.java | 2 +- .../notifications/TelegramNotificationAgent.java | 4 ++-- .../com/jasonhhouse/gaps/service/Notification.java | 2 ++ .../gaps/service/NotificationService.java | 13 ++++++++++++- 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/NotificationAgent.java b/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/NotificationAgent.java index 47bc1ee..a887740 100644 --- a/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/NotificationAgent.java +++ b/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/NotificationAgent.java @@ -13,5 +13,5 @@ package com.jasonhhouse.gaps.notifications; public interface NotificationAgent { boolean isEnabled(); - void sendMessage(String level, String message); + void sendMessage(String level, String title, String message); } diff --git a/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/TelegramNotificationAgent.java b/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/TelegramNotificationAgent.java index c815ab5..956e4e7 100644 --- a/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/TelegramNotificationAgent.java +++ b/GapsWeb/src/main/java/com/jasonhhouse/gaps/notifications/TelegramNotificationAgent.java @@ -41,7 +41,7 @@ public class TelegramNotificationAgent implements NotificationAgent { } @Override - public void sendMessage(String level, String message) { + public void sendMessage(String level, String title, String message) { HttpUrl url = new HttpUrl.Builder() .scheme("https") @@ -50,7 +50,7 @@ public class TelegramNotificationAgent implements NotificationAgent { .addPathSegment("sendMessage") .build(); - String telegramMessage = String.format("{\"chat_id\":\"%s\", \"text\":\"%s\", \"parse_mode\":\"HTML\"}", chatId, message); + String telegramMessage = String.format("{\"chat_id\":\"%s\", \"text\":\"%s\", \"parse_mode\":\"HTML\"}", chatId, String.format("%s\n%s", title, message)); LOGGER.info("telegramMessage {}", telegramMessage); RequestBody body = RequestBody.create(telegramMessage, MediaType.get("application/json")); diff --git a/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/Notification.java b/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/Notification.java index 1840ee9..7852467 100644 --- a/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/Notification.java +++ b/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/Notification.java @@ -22,4 +22,6 @@ public interface Notification { void recommendedMoviesSearchFailed(PlexServer plexServer, PlexLibrary plexLibrary, String error); void recommendedMoviesSearchFinished(PlexServer plexServer, PlexLibrary plexLibrary); + + void test(); } diff --git a/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/NotificationService.java b/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/NotificationService.java index faa2eed..3f210d9 100644 --- a/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/NotificationService.java +++ b/GapsWeb/src/main/java/com/jasonhhouse/gaps/service/NotificationService.java @@ -22,7 +22,10 @@ public class NotificationService implements Notification { @Override public void plexServerConnectSuccessful(PlexServer plexServer) { - notificationAgents.forEach(notificationAgent -> notificationAgent.sendMessage("INFO", String.format("Automatic Search\nConnection to Plex Server %s Successful", plexServer.getFriendlyName()))); + notificationAgents + .stream() + .filter(NotificationAgent::isEnabled) + .forEach(notificationAgent -> notificationAgent.sendMessage("INFO", "Automatic Search", String.format("Connection to Plex Server %s Successful", plexServer.getFriendlyName()))); } @Override @@ -59,4 +62,12 @@ public class NotificationService implements Notification { public void recommendedMoviesSearchFinished(PlexServer plexServer, PlexLibrary plexLibrary) { } + + @Override + public void test() { + notificationAgents + .stream() + .filter(NotificationAgent::isEnabled) + .forEach(notificationAgent -> notificationAgent.sendMessage("DEBUG", "Gaps Test", "Test Successful")); + } }