업무별로 적재된 대량 발송 건으로 인해 특정 업무의 발송이 지연되지 않도록, 발송 프로세스를 분리 및 최적화하는 방법을 정의합니다.
| 구분 | 내용 |
|---|---|
| 발송 프로세스 흐름 | 발송기 (어드민 / DBPitcher / 발송시스템 등) → UMS 엔진(API) → Push Provider → Public Push (APNS, FCM) → 사용자 단말기 |
| 구분 | 내용 |
|---|---|
| 발송 프로세스 흐름 | 발송기 → UMS 엔진(API) → DB → 채널공급사 에이전트 → 공급사 서버 → 채널 원천사 → 사용자 단말기 |
| 구분 | 내용 |
|---|---|
| 발송 프로세스 흐름 | 발송기 → UMS 엔진(API) → 채널공급사 API 서버 → 채널 원천사 → 사용자 단말기 |
/WEB-INF/classes/config/common.properitesSENDGROUPCODE에 의해 Provider 결정.PUSH.SENDTYPE = PROVIDER
## 기본 PROVIDER (여러개 띄울 시 쉼표 구분자 사용)
PUSH.PROVIDER.REAL.CONINFOS = 127.0.0.1:10420
PUSH.PROVIDER.BATCH.CONINFOS = 127.0.0.1:10420
# 업무별 PROVIDER 구분 (예: MARKETING, LAB)
PUSH.PROVIDER.WORKPART.REAL.CONINFOS = {"MARKETING":["172.16.120.65:10420","172.16.120.72:10421"], "LAB":["172.16.120.65:10420","172.16.120.72:10421"]}
PUSH.PROVIDER.WORKPART.BATCH.CONINFOS = {"MARKETING":["172.16.120.65:10420","172.16.120.72:10421"], "LAB":["172.16.120.65:10420","172.16.120.72:10421"]}
/WEB-INF/classes/config/provider.properitesSENDGROUPCODE에 의해 Provider 결정.
- 설명 : 설정 공급사 정보로 이동하여 "xxxx.DIVISION.TABLE" 되어 있는 설정 부분 주석 풀고 셋팅.
- LGCNS 예) 해당 공급사는 알림톡만 발송 가능. 기본 REAL, BATCH는 필요. 업무별 발송요청 테이블 셋팅(MARKETING, LAB) KKOALT.DIVISION.TABLE = {"LGCNS":{"REAL":"tsms_agent_message_real", "BATCH":"tsms_agent_message_batch", "MARKETING":"tsms_agent_message_mkt", "LAB":"tsms_agent_message_lab"}}
KKOFRT.DIVISION.TABLE = {"LGCNS":{"REAL":"tsms_agentft_message_real", "BATCH":"tsms_agentft_message_real", "MARKETING":"tsms_agentft_message_mkt", "LAB":"tsms_agentft_message_lab"}}
/WEB-INF/classes/config/provider.properitesSENDGROUPCODE에 의해 Provider 결정.
# 업무별 PROVIDER 구분 (예: MARKETING, LAB)
UNION.DIVISION.API_INFO = {"LGUHUB":{"MARKETING":{"APIKEY":"API19xxxx","PASS":"uraclexxx"}, "LAB":{"APIKEY":"API20xxxx","PASS":"uraclexxx"}}}
/WEB-INF/classes/config/common.properitesSENDGROUPCODE 매칭 시 우선 처리. 발송순서 보장(ORDERYN) 기능 사용 유무 확인 필요.## 발송순서 보장 큐 사용유무(사용: Y, 미사용: N). 업무별 발송큐 사용하려면 N 또는 주석처리.
#UMS.ORDERBY.YN = N
## 업무별 발송큐 셋팅 (SENDGROUPCODE 매칭)
#UMS.QUEUE.WORKPARTINFO = [{"QNAME":"LAB","ORDERYN":"N"},{"QNAME":"MARKETING","ORDERYN":"Y"}]
<channelTable>
<sms>
<sendTable>{"LGU":{"REAL":"SC_TRAN", "BATCH":"SC_TRAN_BATCH", "MARKETING":"SC_TRAN_MKT", "LAB":"SC_TRAN_LAB"}}</sendTable>
<resultTable>{"LGU":{"REAL":"SC_LOG", "BATCH":"SC_LOG_BATCH", "MARKETING":"SC_LOG_MKT", "LAB":"SC_LOG_LAB"}}</resultTable>
</sms>
<mms>
<sendTable>{"LGU":{"REAL":"MMS_MSG", "BATCH":"MMS_MSG_BATCH"}}</sendTable>
<resultTable>{"LGU":{"REAL":"MMS_LOG", "BATCH":"MMS_LOG_BATCH"}}</resultTable>
</mms>
<rcs>
<sendTable>{"LGU":{"REAL":"RCS_MSG", "BATCH":"RCS_MSG_BATCH"}}</sendTable>
<resultTable>{"LGU":{"REAL":"RCS_LOG", "BATCH":"RCS_LOG_BATCH"}}</resultTable>
</rcs>
<kkoAlt>
<sendTable>{"LGCNS":{"REAL":"TSMS_AGENT_MESSAGE", "BATCH":"TSMS_AGENT_MESSAGE_BATCH"}}</sendTable>
<resultTable>{"LGCNS":{"REAL":"TSMS_AGENT_MESSAGE_LOG", "BATCH":"TSMS_AGENT_MESSAGE_LOG_BATCH"}}</resultTable>
</kkoAlt>
</channelTable>
apiKey를 여러 개 셋팅하여 업무별 결과처리 및 발송 가능. (주의: 동일한 키는 절대 안 됨.)"LGUHUB":{
"apiKey":"APIyrLM4",
"apiPwd":"uracle09821",
"host":"https://api.msghub.uplus.co.kr"
,"apiInfos":[
{"senderGroup":"LAB", "apiKey":"API3xkSP", "apiPwd":"uracle09821", "host":"https://api.msghub.uplus.co.kr"},
{"senderGroup":"MARKETING", "apiKey":"API7xkAX", "apiPwd":"uracle09821", "host":"https://api.msghub.uplus.co.kr"}
]
}