From 44238b2c121b9ac49cc38473466bc4210e29d261 Mon Sep 17 00:00:00 2001 From: cho Date: Fri, 6 Feb 2026 16:11:26 +0900 Subject: [PATCH] =?UTF-8?q?ums=20=EC=8B=A4=EC=A0=9C=20=EB=B3=B4=EB=82=B4?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EC=A3=BC=EC=84=9D=20=EC=A0=9C=EA=B1=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit UmsService에서 ums 서버정보 프로퍼티(UMS)에서 받도록 추가. --- .../eai/custom/alarm/AlarmStateManager.java | 3 +-- .../eai/custom/alarm/ums/UmsService.java | 24 +++++++++++-------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/eactive/eai/custom/alarm/AlarmStateManager.java b/src/main/java/com/eactive/eai/custom/alarm/AlarmStateManager.java index 0539b15..5706b5d 100644 --- a/src/main/java/com/eactive/eai/custom/alarm/AlarmStateManager.java +++ b/src/main/java/com/eactive/eai/custom/alarm/AlarmStateManager.java @@ -116,8 +116,7 @@ public class AlarmStateManager { .content(ObpMonitoringUmsTemplate.builder().message(event.getMessage()).build()) .cellphone(cellPhone).build(); - // usmService.send(payload); - logger.info("UMS Send!!, {}", payload); + usmService.send(payload); } } catch (Exception e) { diff --git a/src/main/java/com/eactive/eai/custom/alarm/ums/UmsService.java b/src/main/java/com/eactive/eai/custom/alarm/ums/UmsService.java index 4b1b981..4368826 100644 --- a/src/main/java/com/eactive/eai/custom/alarm/ums/UmsService.java +++ b/src/main/java/com/eactive/eai/custom/alarm/ums/UmsService.java @@ -19,6 +19,7 @@ import org.apache.hc.core5.util.Timeout; import org.springframework.stereotype.Component; import org.springframework.util.StreamUtils; +import com.eactive.eai.common.property.PropManager; import com.eactive.eai.common.util.Jsons; import com.eactive.eai.common.util.Logger; import com.eactive.eai.custom.alarm.ums.payload.UmsRequestPayload; @@ -30,8 +31,12 @@ public class UmsService { protected static Logger logger = Logger.getLogger(Logger.LOGGER_DEFAULT); + private final static String UMS_GROUP_PROP_NAME = "UMS"; + private final static String UMS_PROP_HOST = "host"; + private final static String UMS_PROP_URL = "url"; + private final static String UMS_PROP_API_KEY = "apiKey"; private final static String UMS_URL = "http://172.31.35.144:9021"; - private final static String API_KEY = "API_KEY"; + private final static String API_KEY = "7cca6d58-e4f7-474d-9edd-525806bc99ff"; private final static String SEND_URL = "/ums/openapi/send"; private final static String CONTENT_TYPE = "application/json; charset=utf-8"; private final static String AUTHORIZATION_FMT = "Bearer %s"; @@ -42,11 +47,6 @@ public class UmsService { throw new IllegalArgumentException("content is null"); } - -// UmsRequestPayload payload = UmsRequestPayload.builder() -// .content(ObpMonitoringUmsTemplate.builder().message(message).build()).cellphone(cpno) -// .build(); - try { ValidationUtil.validateOrThrow(payload); } catch (Exception ex) { @@ -54,22 +54,26 @@ public class UmsService { throw ex; } - return call(SEND_URL, payload); + return call(payload); } private CloseableHttpClient createHttpClient() { return HttpClients.createDefault(); } - private Future call(String url, UmsRequestPayload requestPayload) throws Exception { + private Future call(UmsRequestPayload requestPayload) throws Exception { ExecutorService executor = Executors.newSingleThreadExecutor(); String json = Jsons.GSON.toJson(requestPayload); + + String host = PropManager.getInstance().getProperty(UMS_GROUP_PROP_NAME, UMS_PROP_HOST, UMS_URL); + String url = PropManager.getInstance().getProperty(UMS_GROUP_PROP_NAME, UMS_PROP_URL, SEND_URL); + String apiKey = PropManager.getInstance().getProperty(UMS_GROUP_PROP_NAME, UMS_PROP_API_KEY, API_KEY); - HttpPost httpPost = new HttpPost(UMS_URL + url); + HttpPost httpPost = new HttpPost(host + url); httpPost.setHeader("Content-Type", CONTENT_TYPE); - httpPost.setHeader("Authorization", String.format(AUTHORIZATION_FMT, API_KEY)); + httpPost.setHeader("Authorization", String.format(AUTHORIZATION_FMT, apiKey)); httpPost.setEntity(EntityBuilder.create().setText(json).setContentType(ContentType.APPLICATION_JSON).build()); if (logger.isDebugEnabled()) {