Initial commit
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
= 메일
|
||||
|
||||
=== Knox REST API 연계 서비스 신청
|
||||
Knox REST API 연계 서비스 신청은 <<_knox_rest_api_연계_서비스_신청,Knox REST API 연계 서비스 신청>> 항목을 참조한다.
|
||||
|
||||
=== Knox메일 연계 설정
|
||||
Knox REST API 연계 서비스 신청이 되었다면, 발급받은 `system-id`, `token` 값을 설정한다.
|
||||
|
||||
.knox.properties (스테이지)
|
||||
[source,properties]
|
||||
----
|
||||
knox.system-id=xxxxxxxxxxx
|
||||
knox.token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
knox.address.prefix=openapi.samsung.net
|
||||
knox.mail-service=/mail/api/v2.0
|
||||
----
|
||||
|
||||
.knox.properties (운영)
|
||||
[source,properties]
|
||||
----
|
||||
knox.system-id=xxxxxxxxxxx
|
||||
knox.token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx,xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx // <1>
|
||||
knox.address.prefix=openapi.samsung.net,openapi.w1.samsung.net,openapi.w2.samsung.net # <2>
|
||||
knox.mail-service=/mail/api/v2.0
|
||||
----
|
||||
<1> 토큰 (comma(,)로 구분, 거점 순서와 동일)
|
||||
<2> 거점 (국내, 구주, 미주)
|
||||
|
||||
=== KnoxMailService
|
||||
Knox REST API 연계를 통해서 메일발신, 상태조회등을 하는 서비스로 주요 메서드는 KnoxMailService 인터페이스에 정의되어 있다.
|
||||
|
||||
KnoxMailService는 시스템에서 Knox 메일 서비스와 연계할 때 필요한 API들을 제공한다.
|
||||
|
||||
[source, java]
|
||||
----
|
||||
public interface KnoxMailService {
|
||||
/**
|
||||
* Knox 메일 발신
|
||||
* @param sendMail 발신 메일 정보 (첨부파일정보(AttachFile) 포함)
|
||||
* @return Knox 메일 아이디
|
||||
*/
|
||||
String sendMail(SendMail sendMail);
|
||||
|
||||
/**
|
||||
* Knox 메일 발신
|
||||
* @param sendMail 발신 메일 정보
|
||||
* @param attachResources 메일 첨부가 파일 리소스일 경우
|
||||
* @return Knox 메일 아이디
|
||||
*/
|
||||
String sendMail(SendMail sendMail, List<Resource> attachResources);
|
||||
|
||||
/**
|
||||
* Knox 메일별 수신상태 조회
|
||||
* @param mailIds Knox 메일 아이디 리스트
|
||||
* @param sendMail 메일 정보
|
||||
* @return Knox 메일 상태
|
||||
*/
|
||||
MailStatus[] getDeliveryStatusCount(List<String> mailIds, SendMail sendMail);
|
||||
|
||||
/**
|
||||
* Knox 메일 수신인별 수신상태 조회
|
||||
* @param mailId Knox 메일 아이디
|
||||
* @param sendMail 메일 정보
|
||||
* @return Knox 메일 수신인별 수신상태 정보
|
||||
*/
|
||||
Recipient[] getDeliveryStatus(String mailId, SendMail sendMail);
|
||||
}
|
||||
----
|
||||
|
||||
각각의 구현 메서드들은 Knox Rest 연계 서비스에서 요구하는 가이드대로 REST 형식을 갖추어 필요한 로직들을 수행한다.
|
||||
|
||||
자세한 API 스펙은 Swagger API 문서의 knox-mail-controller 항목을 참고한다. +
|
||||
메일 발송 샘플 코드는 MailSampleController 소스코드를 참고한다.
|
||||
|
||||
IMPORTANT: Knox 연계 메일 발송을 위해서는 발신자/수신자 모두 Knox 계정이 존재해야만 테스트가 가능하다.
|
||||
Reference in New Issue
Block a user