UPMC API¶
1. 개요¶
본 문서는 (주)유라클에서 제공하는 “MSP Push Platform”의 Receiver Server 연동 API 정의서를 설명하고 있다, 본 문서는 성능 개선, 기능 추가 등의 사항으로 내용이 변경될 수 있다.
1-1. 목적¶
본 문서는 PUSH 서비스의 Receiver Server 연동을 위한 제반 사항을 기술한다.
2. 호출 방법¶
Receiver Server 에 HTTP (POST) 방식으로 연동 API URL 을 호출 하면 JSON Format으로 결과를 반환 합니다.
예) http://[Receiver IP]:[Receiver Port]/[Controll URL]
3. 보안 인증키(AUTHKEY)¶
3-1. 사용 방법¶
리시버 서버 설치 경로에서 WEB-INF > classes > config > receiver.properties 파일을 열어 security.using 의 값을 true로 변경하고 재기동하면 된다. 만약 보안 인증키를 사용하지 않을 시에는 security.using 의 값을 false로 수정하고 재기동 하면 보안기능을 사용하지 않고 리시버 서버를 동작 시킬 수 있다.
3-2. API 요청 방법¶
서버로 API 호출 후 에러를 수신하게 되면 asking_authorization.ctl API를 호출하여 보안 인증키를 내려받아 단말기 메모리에 저장 후 향후 모든 API에 대해 Request 요청 시 해당 보안인증키를 같이 서버에게 전달한다. (*클라이언트(단말)는 항상 AUTHKEY를 UTF-8로 URLEncoding하여 서버로 전송하여야 한다.*)
푸쉬 APP을 설치 후 단말에서는 가장 먼저 서비스 등록(rcv_register_service.ctl)을 호출하게 되는데 사전에 asking_authorization.ctl를 통해 보안인증키를 내려 받은 후 재호출한다.
서비스 추가(rcv_add_service.ctl) API도 동일한 사용자가 여러 푸쉬앱을 사용하게 되는 Case로 각각의 PSID가 틀려 지므로 asking_authorization.ctl를 통해 보안인증키를 내려 받은 후 재호출한다. (*단말에서는 서비스 등록/추가 호출 후 내려 받은 AUTHKEY로 교체*)
위 두 가지 경우를 제외하고는 연동 API 규격대로 가장 최근에 내려 받은 보안인증키를 단말에서 메모리에 저장하고 있다가 모든 API 호출 시 서버로 전송한다.
asking_authorization.ctl 을 요청하여 AUTHKEY 발급
서버로부터 발급 받은 AUTHKEY를 단말기에서 메모리에 저장한다.
이후 모든 API 호출 시마다 AUTHKEY를 파라미터로 서버로 전송한다.
3-3. 실패 처리 방법¶
① 인증키 시간만료 (인증키 요청 API 호출)
HTTP Error code = HTTP/1.1 200 OK
JSON Data parsing
HEADER - RESULT_CODE = 0000
BODY ? AUTHKEY 값 저장 및 이후 서버로 호출 시 항상 파라미터로 사용
② 인증키 파라미터 누락 (인증키 요청 API 호출은 고객사의 판단에 의한 SI 요소)
HTTP Error code = HTTP/1.1 400 Bad Request
- 인증키 요청 API 외 모든 API에서 발생할 수 있으며, AUTHKEY
파라미터는 서버-단말 간 규약으로 AUTHKEY 파라미터 누락 됐을 때 발생
③ 인증키 검증 실패 (인증키 요청 API 호출은 고객사의 판단에 의한 SI 요소)
HTTP Error code = HTTP/1.1 401 Unauthorized
보안인증키를 복호화 자체 실패
보안인증키를 복호화하여 검증하는데 실패했을 발생
④ 사용자 검증 실패 (인증키 요청 API 호출은 고객사의 판단에 의한 SI 요소)
HTTP Error code = HTTP/1.1 403 Forbidden
요청한 아이디로 일치하는 사용자를 찾을 수 없을 때 발생
파라미터로 받은 값과 보안인증키 내의 비교값이 일치하지 않을 때 발생
⑤ 기타 실패
HTTP Error code = HTTP/1.1 500
4. 전문 정의¶
4-1. 보안인증키 요청¶
- 서비스명
보안인증키 요청
- Controller URL
asking_authorization.ctl
- 설명
비인가 사용자에 대해 접속을 차단하기 위한 보안인증키 요청 API
리시버 서버 설정에 등록된 레가시 연동 서버에 대해서는 불필요 (단말기 요청에서만 사용되는 API)
Request (POST 방식 호출)
항목
타입
필수
설명
APP_ID
String
Y
앱 팩키지명 (예:kr.co.morpheus.mobile1)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
*※ 단, 사용자 등록 (rcv_register_user.ctl)을 위한 사전 요청이면 “TMP0”를 Prefix로 사용자 아이디 앞에 붙혀 서버로 전송하여 일회용 임시 인증키를 요청한다.*
*(예: 등록예정 CUID : TESTUSER -> TMP0TESTUSER)*
PSID
String
Y
*※ 사용자 등록 (rcv_register_user.ctl) 및 서비스 등록 / 추가 (rcv_register_service.ctl 또는 rcv_add_service.ctl) 요청 전에는 NULL 또는 Blank 처리*
UPNS : rcv_register_service.ctl 요청 후 발급받은 PSID
APNS : Token
GCM: Registration id
WNS : Channel URI
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
AUTHKEY
String
Y
N
보안인증키
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_sender.ctl
Response
{“BODY”:[{AUTHKEY:C%3D11Q1872gV8cy2Sf8og5p%2BCyINU4nz4a2Ihka6omXpfip3Q%3D}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-2. 접속변수 조회¶
- 서비스명
접속변수 조회
- Controller URL
rcv_comm_configuration.ctl
- 설명
모바일 통신 관련 환경설정값 조회
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
PNSID
String
Y
PUSH 유형 (APNS, UPNS, C2DM, GCM, WNS 등)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등) 확인.4.0-ee 신규추가
APP_ID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM) 확인.4.0-ee 신규추가
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
RECONNECT_PERIOD
String
N
재접속 (단위:초)
KEEPALIVE_PERIOD
String
N
KEEPALIVE (단위:초)
SERVICE_STOP
String
N
서비스 상태 (N:가용, Y:중단)
VERSION
String
N
버전
CONNECT_IP
String
N
N
접속할 UPNS 아이피
CONNECT_PORT
String
N
N
접속할 UPNS포트(해당값이 없으면 앱에서 설정한 값으로 셋팅)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_comm_configuration.ctl
Response
{“BODY”:[{“RECONNECT_PERIOD”:”360”,”KEEPALIVE_PERIOD”:”5”,”SERVICE_STOP”:”N”,”VERSION”:”1.0”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-3. PUSH 서비스 등록¶
- 서비스명
PUSH 서비스 등록
- Controller URL
rcv_register_service.ctl
- 설명
PUSH를 사용하는 앱이 단말에 최초로 설치되는 경우에 요청하는 최초 “등록”
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등)
DEVICE_TYPE
String
Y
디바이스 유형(‘A’:Android, ‘I’:iPhone, ‘W’:Windows)
DEVICE_MD
String
N
디바이스 모델 ex:SM-N900S. 참고:4.0신규추가
OS_VER
String
N
OS 버전. 참고:4.0신규추가
APP_VER
String
N
앱버전. 참고:4.0신규추가
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
PSID
String
N
UPNS : NULL, APNS : Token, GCM: Registration id, WNS : Channel URI rcv_register_service.ctl
PHONENUM
String
Y
사용자 전화번호
CBSID
String
Y
CBS별 유일한 정보 (CBS의 app id)
APNS_MODE
String
N
APNS 푸시서비스 모드. ex)DEV, REAL 둘 중하나값 참고:4.0신규추가
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
PSID
String
Y
N
UPNS는 등록 후 발급된 PSID
APPID
String
Y
N
어플리케이션 식별 정보
(패키지명)
AUTHKEY
String
Y
N
보안인증키
(*단말의 AUTHKEY 교체*)
UPNSIP
String
N
N
UPNS로 서비스 가입 시 접속할 아이피를 할당 받는다.
PORT
String
N
N
UPNS로 서비스 가입시 접속할 포트를 할당 받는다.
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_service.ctl
Response
{“BODY”:[{“PSID”:”60d3b18f1e5f4c6c6a8971936d4b320c7f69dc94”,”APPID”:”com.push.app”,”AUTHKEY”:”C%3D11Q1872gV8cy2Sf8og5p%2BCyINU4nz4a2Ihka6omXpfip3Q%3D”,”UPNSIP”:”111.111.111.111”,”PORT”:”1883”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-4. PUSH 서비스 조회¶
- 서비스명
PUSH 서비스 조회
- Controller URL
rcv_get_service.ctl
- 설명
해당 단말에서 PUSH 서비스를 사용하고 있는 앱들의 목록을 조회
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
PSID
String
Y
PSID
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등)
DEVICE_TYPE
String
Y
디바이스 유형(‘A’:Android, ‘I’:iPhone, ‘W’:Windows)
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
PHONENUM
String
Y
사용자 전화번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
PSID
String
Y
N
UPNS는 등록 후 발급된 PSID
APPID
String
Y
N
어플리케이션 식별 정보
(패키지명)
ISREGISTERED
String
Y
N
푸쉬서비스 등록여부 Y:등록, N:미등록, C: CUID 변경됨.
C는 원유저원디바이스일 때 나타나며 서비스가입을 하지 말고 유저등록프로세스 호출.
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_service.ctl
Response
{“BODY”:[{“PSID”:”60d3b18f1e5f4c6c6a8971936d4b320c7f69dc94”,”APPID”:”com.push.app”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-5. PUSH 서비스 삭제¶
- 서비스명
PUSH 서비스 삭제
- Controller URL
rcv_delete_service.ctl
- 설명
수신자가 수신 가능한 서비스(PSID + APPID)를 제거
PSID에 등록된 APPID가 하나도 없을 경우 PSID까지 제거
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등)
DEVICE_TYPE
String
Y
디바이스 유형(‘A’:Android, ‘I’:iPhone, ‘W’:Windows)
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
PSID
String
Y
UPNS : PSID, APNS : Token, GCM: Registration id, WNS : Channel URI
PHONENUM
String
Y
사용자 전화번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
PSID_DELETED
String
Y
N
삭제결과 (Y/N)
PSID
String
Y
N
UPNS는 등록 후 발급된 PSID
APPID
String
Y
N
어플리케이션 식별 정보
(패키지명)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_delete_service.ctl
Response
{“BODY”:[{“PSID_DELETED”:”Y”,”PSID”:”60d3b18f1e5f4c6c6a8971936d4b320c7f69dc94”,”APPID”:”com.push.app”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-6. 사용자 등록¶
- 서비스명
사용자 등록
- Controller URL
rcv_register_user.ctl
- 설명
사용자 테이블에 사용자 정보를 추가
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
Y
PSID (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보. (팩키지명)
DEVICE_ID
String
Y
디바이스 고유아이디
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
CNAME
String
Y
사용자 이름
Response (JSON 방식의 응답)
구분
항목
값
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_user.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-7. CUID 조회¶
- 서비스명
CUID 조회
- Controller URL
rcv_query_cuid.ctl
- 설명
사용자 CUID, APPID로 사용자 데이터 조회
Request (POST 방식 호출)
항목
값
필수
설명
AUTHKEY
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
Y
PSID (*레가시 연동 서버에 대해서는 불필요*)
CUID
Y
사용자 CUID
APPID
Y
사용자 APPID
Response (JSON 방식의 응답)
구분
항목
값
필수
반복
설명
HEADER
RESULT_CODE
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
Y
N
처리 Controller
BODY
(USERS:
jason형태배열)
CUID
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
CNAME
Y
사용자 이름
PHONENO
Y
사용자 전화번호
PSID
사용자 PSID
PNSID
사용자 PNSID
DEVICESEQ
사용자 DEVICE 순번
PSNINFOSEQ
사용자 PNSINFO 순번
DEVICEID
사용자 DEVICEID
DEVICETYPE
사용자 DEVICETYPE
APPID
사용자 APPID
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_query_cuid.ctl
Response
{“BODY”:{“USERS”:[{“cuid”:”MIUM2”,”appid”:”com.uracle.push.test”,”psid”:”APA91bFrQTfWBHgzjZTG9Scx0rocdaaJrkmJMJN71-5vWP2r8486RxaTmA5z8E5WMhwQ8gsRtgaSwn3ITWr6z9NjOhd7StJwECyCYgitYueyki3bGtcPXfoLCRY4iM3E_S63u4qC_FlqhB1AvZshISNiANhlXOjS3Ele6o_n9Aop1NNj5PnxBPc”,”pnsid”:”UPNS”,”deviceseq”:”1”,”pnsinfoseq”:”1”,”deviceid”:”359795040330504”,”devicetype”:”A”,”cname”:”유병희”,”phoneno”:”010-1234-1234”}]},”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”}}
4-8. 사용자 삭제¶
- 서비스명
사용자 삭제
- Controller URL
rcv_delete_user.ctl
- 설명
푸쉬서비스에 매칭된 사용자 아이디를 GUEST로 변경
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
Y
PSID
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
APP_ID
String
Y
어플리케이션 식별 정보. (팩키지명)
DEVICE_ID
String
Y
디바이스 고유아이디
CUID
String
Y
사용자 아이디
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
ROWS
String
Y
N
수정 처리된 사용자 수
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_delete_user.ctl
Response
{“BODY”:[{“ROWS”:”1”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-9. 사용자 그룹 등록¶
- 서비스명
사용자 그룹 등록
- Controller URL
rcv_register_usergroup.ctl
- 설명
사용자 그룹 등록 (사용자 그룹을 생성할 때 사용)
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
GROUPNAME
String
Y
사용자 그룹명
Response (JSON 방식의 응답)
구분
항목
값
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
Map
String
Y
N
처리 Controller
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_usergroup.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-10. 사용자 그룹 조회¶
- 서비스명
사용자 그룹 조회
- Controller URL
rcv_get_usergroup.ctl
- 설명
사용자 그룹정보 조회
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
GROUPSEQ
String
Y
사용자 그룹 일련번호
GROUPNAME
String
Y
사용자 그룹명
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
REGDATE
String
String
N
등록일(YYYYMMDD HHMISS)
MODDATE
String
String
N
수정일(YYYYMMDD HHMISS)
GROUPSEQ
String
String
N
사용자 그룹 일련번호
GROUPNAME
String
String
N
사용자 그룹명
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_usergroup.ctl
Response
{“BODY”:[{“REGDATE”:”20140418 164042”,”MODDATE”:”20140418 164042”, “GROUPSEQ”:5,”GROUPNAME”:”TEST_GROUP”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-11. 사용자 그룹 삭제¶
- 서비스명
사용자 그룹 삭제
- Controller URL
rcv_delete_usergroup.ctl
- 설명
사용자 그룹 삭제 (그룹에 등록된 사용자가 있으면 모두 일괄 삭제된다. 사용자 정보 자체는 삭제되지 않는다.)
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
Y
PSID (*레가시 연동 서버에 대해서는 불필요*)
GROUPSEQ
String
Y
사용자 그룹 일련번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
ROWS
String
Y
N
삭제 처리된 그룹 수
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_delete_usergroup.ctl
Response
{“BODY”:[{“ROWS”:”1”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-12. 사용자 그룹 사용자 등록¶
- 서비스명
사용자 그룹 사용자 등록
- Controller URL
rcv_register_usergroup_user.ctl
- 설명
사용자 그룹에 사용자를 등록
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
GROUPSEQ
String
Y
사용자 그룹 일련번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_usergroup_user.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-13. 사용자 그룹 사용자 조회¶
- 서비스명
사용자 그룹 사용자 조회
- Controller URL
rcv_get_usergroup_user.ctl
- 설명
사용자 그룹에 속한 사용자 정보를 조회
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
GROUPSEQ
String
Y
사용자 그룹 일련번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
CUID
String
Y
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_usergroup_user.ctl
Response
{“BODY”:[{“CUID”:”TEST000001”},{“CUID”:”TEST000002”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-14. 사용자 그룹 사용자 삭제¶
- 서비스명
사용자 그룹 사용자 삭제
- Controller URL
rcv_delete_usergroup_user.ctl
- 설명
사용자 그룹에 등록된 사용자를 그룹에서 삭제
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (*레가시 연동 서버에 대해서는 불필요*)
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
GROUPSEQ
String
Y
사용자 그룹 일련번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
ROWS
String
Y
N
삭제 처리된 사용자 수
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_delete_usergroup_user.ctl
Response
{“BODY”:[{“ROWS”:”1”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-15. PUSH 발송¶
- 서비스명
PUSH 발송
- Controller URL
rcv_register_message.ctl
- 설명
관리자가 수신자를 지정하여 전송할 PUSH메시지를 등록
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
리시버서버 보안 토큰키. 보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID (해당 앱) *레가시 연동 서버에 대해서는 불필요*
CUID
Json 배열
or
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)이용 PUSH 보낼 경우.
확인)위의 PSID가 Blank일 경우일 때 만 사용됨.
ex)[“testuser1”,”testuser2”,”testuser3”,…] or testuser1
MESSAGE
String
Y
PUSH 메시지 (String) ex) 메시지를 보냅니다.
PRIORITY
String
Y
우선순위. 여기서는 무조건 3으로 보냄. ex) 3
BADGENO
String
Y
읽음확인여부에 따라Badge를 카운트를 증가할 필요가 있는 메시지일 경우 1, 읽음 확인이 필요하지 않는 메시지일 경우 0
RESERVEDATE
String
Y
예약발송일시(YYYYMMDD HHMISS, 즉시발송은 Blank) ex)20150720 123000
SERVICECODE
String
Y
푸시관리페이지에서 푸시서비스 매칭시큰 코드. ex) 0001
SOUNDFILE
String
Y
사운드 파일명 ex)alert.aif
EXT
String
N
PUSH 부가 히든메시지. 없으면 빈값(blank) 처리. PUSH 커스텀 메시지. ex)
SENDERCODE
String
Y
메시지 구분코드, 관리페이지 푸시>설정>메시지 구분에 등록된 코드 입력 ex)admin
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
ex) kr.co.morpheus.mobile1
TYPE
String
N
개별발송 : E, 시스템 개별대량발송일 경우 : S
ex) E
DB_IN
String
N
성공메세지를 DB테이블에 저장. Y:저장, N:저장하지 않음. 보내지 않을 경우 UPMC시스템에 설정파일 참조.
ex) N
SPLIT_MSG_CNT
String
N
분할발송 메시지 건수 ( 0일경우 분할발송 안함)
DELAY_SECOND
String
N
분할발송 후 SLEEP 시간 ( 0일경우 분할발송 안함)
SEND_TIME_LIMIT
String
N
발송제한 시간 설정.
발송제한시간이 필요 없을 경우는 빈값을 보낸다.
발송제한 시간 설정 방법
시작시간:분-종료시간:분 형태로 보낸다.
3:00 새벽3시이후 발송되지 않음
15:00 오후 3시부터 발송되지 않음.
Response(JSON 방식의 응답). 확인 : quest 파라미터 중 TYPE에 따라 응답 데이터 다름
구분
항목
값
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
SENDMSG_SEQNO
String
Y
발송메세지 고유 번호.
주의! TYPE : 시스템 개별대량 발송(S)일 경우는 메세지 고유번호가 없으므로 0을 리턴함
REG_SUCCESS_CNT
String
Y
N
푸쉬서버 발송요청수
REG_FAIL_CNT
String
Y
N
푸쉬서버 발송요청 실패수
UPNS
String
Y
N
UPNS 발송요청수
APNS
String
Y
N
APNS 발송요청수
GCM
String
Y
N
GCM 발송요청수
HOST_URL
String
Y
N
처리하는 리시버 URL
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_message.ctl
Response
{“HEADER”:{“RESULT_CODE”:”0000”, “RESULT_BODY”:”OK”},
“BODY”:{“APNS”:”0”, “REG_SUCCESS_CNT”:”1”, “UPNS”:”0”, “REG_FAIL_CNT”:”0”, “GCM”:”1”, “SENDMSG_SEQNO”:”405”, “HOST_URL”:”http://211.241.199.139:8085”}}
TYPE : 예약발송 응답 메세지
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
N
N
처리 Controller
BODY
RESERVE_SEQNO
String
발송메세지 고유 번호. 예약발송 취소시 사용
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_message.ctl
Response
{“HEADER”:{“RESULT_CODE”:”0000”, “RESULT_BODY”:”OK”},
“BODY”:{“RESERVE_SEQNO”:”20”}}
4-16. PUSH 그룹/ 회원발송/비회원발송/전체 발송¶
- 서비스명
PUSH 그룹/ 회원발송/비회원발송/전체 발송
- Controller URL
rcv_register_groupmessage.ctl
- 설명
PUSH 그룹/ 회원발송/비회원발송/전체 발송
Request (POST 방식 호출)
항목
값
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*) ex)
PSID
String
N
PSID 데이터 포멧 json 배열(*레가시 연동 서버에 대해서는 불필요*) ex)
TYPE
String
Y
E:개별발송 / G:그룹발송 / A:전체발송/ M:회원발송/ N: 비회원발송
ex) M
GROUPSEQ Y 그룹 시퀀스번호
String
Y
그룹 시퀀스 그룹발송일 때 만 필요 아닐땐 Blank
ex)1
MESSAGE
String
Y
PUSH 메시지
ex) 테스트 푸쉬를 보냅니다.
PRIORITY
String
Y
우선순위. 여기서는 3으로 하드 코딩
ex) 3
BADGENO
String
Y
읽음확인여부에 따라Badge를 카운트를 증가할 필요가 있는 메시지일 경우 1, 읽음 확인이 필요하지 않는 메시지일 경우 0
RESERVEDATE
String
Y
예약발송일시(YYYYMMDD HHMISS, 즉시발송은 Blank)
ex) ex)20150720 123000
SERVICECODE
String
Y
푸시관리페이지에서 푸시서비스 매칭시큰 코드. ex) 0001
SOUNDFILE
String
Y
사운드 파일명 ex)alert.aif
EXT
String
N
PUSH 부가 히든메시지. 없으면 빈값(blank) 처리. PUSH 커스텀 메시지. ex)
SENDERCODE
String
Y
메시지 구분코드, 관리페이지 푸시>설정>메시지 구분에 등록된 코드 입력 ex)admin
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
ex) kr.co.morpheus.mobile1
DB_IN
String
N
성공메세지를 DB테이블에 저장. Y:저장, N:저장하지 않음. 보내지 않을 경우 UPMC시스템에 설정파일 참조.
ex) N
SPLIT_MSG_CNT
String
N
분할발송 메시지 건수 ( 0일경우 분할발송 안함)
DELAY_SECOND
String
N
분할발송 후 SLEEP 시간 ( 0일경우 분할발송 안함)
SEND_TIME_LIMIT
String
N
발송제한 시간 설정.
발송제한시간이 필요 없을 경우는 빈값을 보낸다.
발송제한 시간 설정 방법
시작시간:분-종료시간:분 형태로 보낸다.
3:00 새벽3시이후 발송되지 않음
15:00 오후 3시부터 발송되지 않음.
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
SENDMSG_SEQNO
String
Y
N
발송메세지 고유 번호.
주의! TYPE : 시스템 개별대량 발송(S)일 경우는 메세지 고유번호가 없으므로 0을 리턴함
REG_SUCCESS_CNT
String
Y
N
푸쉬서버 발송요청수
REG_FAIL_CNT
String
Y
N
푸쉬서버 발송요청 실패수
UPNS
String
Y
N
UPNS 발송요청수
APNS
String
Y
N
APNS 발송요청수
GCM
String
Y
N
GCM 발송요청수
HOST_URL
String
Y
N
처리하는 리시버 URL
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/ rcv_register_groupmessage.ctl
Response
{“BODY”:{“APNS”:”0”,”REG_SUCCESS_CNT”:”1”,”UPNS”:”1”,”REG_FAIL_CNT”:”0”,”GCM”:”0”,”SENDMSG_SEQNO”:”1151”,”HOST_URL”:””},”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”}}
4-17. PUSH CSV/템플릿CSV 발송¶
- 서비스명
PUSH CSV/템플릿CSV 발송
- Controller URL
rcv_register_csvmessage.ctl
- 설명
PUSH CSV/템플릿CSV 발송
Request (POST 방식 호출)
항목
값
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*) ex)
PSID
String
N
PSID 데이터 포멧 json 배열(*레가시 연동 서버에 대해서는 불필요*) ex)
TYPE
String
Y
E:개별발송 / G:그룹발송 / A:전체발송
ex) E
GROUPSEQ Y 그룹 시퀀스번호
String
Y
그룹 시퀀스 그룹발송일 때 만 필요 아닐땐 Blank
ex)1
MESSAGE
String
Y
PUSH 메시지
ex) 테스트 푸쉬를 보냅니다.
PRIORITY
String
Y
우선순위. 여기서는 3으로 하드 코딩
ex) 3
BADGENO
String
Y
읽음확인여부에 따라Badge를 카운트를 증가할 필요가 있는 메시지일 경우 1, 읽음 확인이 필요하지 않는 메시지일 경우 0
RESERVEDATE
String
Y
예약발송일시(YYYYMMDD HHMISS, 즉시발송은 Blank)
ex) ex)20150720 123000
SERVICECODE
String
Y
푸시관리페이지에서 푸시서비스 매칭시큰 코드. ex) 0001
SOUNDFILE
String
Y
사운드 파일명 ex)alert.aif
EXT
String
N
PUSH 부가 히든메시지. 없으면 빈값(blank) 처리. PUSH 커스텀 메시지. ex)
SENDERCODE
String
Y
메시지 구분코드, 관리페이지 푸시>설정>메시지 구분에 등록된 코드 입력 ex)admin
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
ex) kr.co.morpheus.mobile1
DB_IN
String
N
성공메세지를 DB테이블에 저장. Y:저장, N:저장하지 않음. 보내지 않을 경우 UPMC시스템에 설정파일 참조.
ex) N
upload_file
MultipartFile
Y
CSV파일 파일형식은
Morpheus_ServerPlatformR2_Admin_사용자매뉴얼(PUSH관리)_v1.3.doc 문서 5-1-5, 5-1-6 참고
SPLIT_MSG_CNT
String
N
분할발송 메시지 건수 ( 0일경우 분할발송 안함)
DELAY_SECOND
String
N
분할발송 후 SLEEP 시간 ( 0일경우 분할발송 안함)
SEND_TIME_LIMIT
String
N
발송제한 시간 설정.
발송제한시간이 필요 없을 경우는 빈값을 보낸다.
발송제한 시간 설정 방법
시작시간:분-종료시간:분 형태로 보낸다.
3:00 새벽3시이후 발송되지 않음
15:00 오후 3시부터 발송되지 않음.
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
SENDMSG_SEQNO
String
Y
N
발송메세지 고유 번호.
주의! TYPE : 시스템 개별대량 발송(S)일 경우는 메세지 고유번호가 없으므로 0을 리턴함
REG_SUCCESS_CNT
String
Y
N
푸쉬서버 발송요청수
REG_FAIL_CNT
String
Y
N
푸쉬서버 발송요청 실패수
UPNS
String
Y
N
UPNS 발송요청수
APNS
String
Y
N
APNS 발송요청수
GCM
String
Y
N
GCM 발송요청수
HOST_URL
String
Y
N
처리하는 리시버 URL
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/ rcv_register_groupmessage.ctl
Response
{“BODY”:{“APNS”:”0”,”REG_SUCCESS_CNT”:”1”,”UPNS”:”1”,”REG_FAIL_CNT”:”0”,”GCM”:”0”,”SENDMSG_SEQNO”:”1151”,”HOST_URL”:””},”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”}}
4-18. 분할 지연발송 취소¶
- 서비스명
PUSH 분할지연발송 취소
- Controller URL
rcv_sleep_send_cancel.ctl
- 설명
PUSH 분할지연발송일 경우 발송 도중에 취소를 하는 API
주의사항: 여러대의 UPMC가 있을 경우 반드시 발송시 리턴값으로 받은 HOST_URL을 이용하여 해당 서버로 지연발송 취소를 하여야 만 한다.
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
PSID
String
N
PSID 데이터 포멧 json 배열(*레가시 연동 서버에 대해서는 불필요*
SEQNO
String
Y
발송시 리턴받은 메시지 원장 번호
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
ROWS
String
Y
N
1:삭제, 0:미삭제 (발송 진행중 또는 해당 데이터 미존재)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_sleep_send_cancel.ctl
Response
{“BODY”:[{“SEQNO”:”1”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-19. PUSH 예약 메시지 삭제¶
- 서비스명
PUSH 예약 메시지 삭제
- Controller URL
rcv_message_cancel_reservation.ctl
- 설명
PUSH 예약 메시지 삭제
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
RESERVE_SEQNO
String
Y
예약 메시지 메시지 등록 유니크 값
(T_PUSH_RESERVE_MSG 테이블 내의 RESERVE_SEQNO)
ex)120348
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
ROWS
String
Y
N
1:삭제, 0:미삭제 (발송 진행중 또는 해당 데이터 미존재)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_message_cancel_reservation.ctl
Response
{“BODY”:[{“ROWS”:”1”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-20. Public PUSH 수신확인¶
- 서비스명
Public PUSH 수신확인
- Controller URL
rcv_register_sent_ack.ctl
- 설명
GCM, APNS, WMS를 통해 PUSH를 수신한 단말용 수신확인 API
Request (POST 방식 호출)
항목
값
필수
설명
AUTHKEY
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등) 확인.4.0-ee 신규추가
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM) 확인.4.0-ee 신규추가
SEQNO
Y
메시지 마스터 번호
CUID
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
APP_ID
Y
어플리케이션 식별 정보 (패키지명)
PSID
Y
APNS : Token, GCM: Registration id, WNS : Channel URI
SENDDATE
Y
받은 메세지 정보에서 senddate 값을 리턴
DB_IN
Y
받은 메세지 정보에서 db_in 값을 리턴. 주의)UPNS는 모두 대문자임
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_sent_ack.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-21. PUSH 메시지 읽음 확인¶
- 서비스명
PUSH 메시지 읽음확인
- Controller URL
rcv_register_send_result.ctl
- 설명
PUSH 메시지를 전송받은 단말의 앱에서 사용자가 메시지를 확인API
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등) 확인.4.0-ee 신규추가
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM) 확인.4.0-ee 신규추가
SEQNO
String
Y
메시지 마스터 번호
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
PSID
String
Y
APNS : Token, GCM: Registration id, WNS : Channel URI
SENDDATE
String
Y
받은 메세지 정보에서 senddate 값을 리턴
DB_IN
String
Y
받은 메세지 정보에서 db_in 값을 리턴. 주의)UPNS는 모두 대문자임
BADGENO
String
N
다음 푸시발송시 BADGENO를 위해 서버에 세팅 할 BADGENO 값. 현재 단말에 표시되는 BADGENO값을 넘겨준다. 예외. “-1” 일 경우에는 현재서버에 저장된 뱃지카운트에서 하나 뺀다.
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_send_result.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-22. 뱃지 강제셋팅/초기화¶
- 서비스명
뱃지 강제셋팅/초기화
- Controller URL
rcv_init_badgeNo.ctl
- 설명
뱃지 강제셋팅/초기화
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등) 확인.4.0-ee 신규추가
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM) 확인.4.0-ee 신규추가
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
BADGENO
String
Y
강제로 세팅할 뱃지카운트.
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
BODY
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_register_send_result.ctl
Response
{“BODY”:[{}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”}}
4-23. PUSH 재발송¶
- 서비스명
PUSH 메시지 재발송
- Controller URL
rcv_retry_message.ctl
- 설명
PUSH 메시지를 재발송
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
Y
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
SEQNO
String
Y
재발송 할 메시지 마스터 번호
RETRY_TYPE
String
Y
재발송 타입
CON_FAIL : push server(upns,provider)와의 연결 장애로 발송 실패한 메시지에 대한 재 발송
NOT_RECV : 수신확인 안된 메시지에 대한 재 발송
NOT_READ : 읽음확인 안된 메시지에 대한 재 발송
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
SENDMSG_SEQNO
String
Y
발송메세지 고유 번호.
주의! TYPE : 시스템 개별대량 발송(S)일 경우는 메세지 고유번호가 없으므로 0을 리턴함
REG_SUCCESS_CNT
String
Y
N
푸쉬서버 발송요청수
REG_FAIL_CNT
String
Y
N
푸쉬서버 발송요청 실패수
UPNS
String
Y
N
UPNS 발송요청수
APNS
String
Y
N
APNS 발송요청수
GCM
String
Y
N
GCM 발송요청수
HOST_URL
String
Y
N
처리하는 리시버 URL
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/ rcv_retry_message.ctl
Response
{“HEADER”:{“RESULT_CODE”:”0000”, “RESULT_BODY”:”OK”},
“BODY”:{“APNS”:”0”, “REG_SUCCESS_CNT”:”1”, “UPNS”:”0”, “REG_FAIL_CNT”:”0”, “GCM”:”1”, “SENDMSG_SEQNO”:”405”, “HOST_URL”:”http://211.241.199.139:8085”}}
4-24. 앱삭제여부를 위한 API¶
- 서비스명
앱삭제여부를 위한 API
- Controller URL
rcv_appAlive.ctl
- 설명
앱삭제여부를 위한 API
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
PSID
String
Y
PSID
CUID
String
Y
사용자 아이디 (로그인 아이디 등 유일한 정보)
DEVICE_ID
String
Y
디바이스 식별 정보(UUID등)
PNSID
String
Y
PUSH 유형 (UPNS,UPNC,GCM,APNS,WNS,AOM)
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
PSID
String
Y
N
UPNS는 등록 후 발급된 PSID
APPID
String
Y
N
어플리케이션 식별 정보
(패키지명)
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_service.ctl
Response
{“BODY”:[{“PSID”:”60d3b18f1e5f4c6c6a8971936d4b320c7f69dc94”,”APPID”:”com.push.app”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-25. UPNS 유저등록 카운트수 조회¶
- 서비스명
UPNS 유저등록 카운트수 조회
- Controller URL
getRedisUpnsUserCntInfo.ctl
- 설명
UPNS 유저등록 카운트수 조회
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
UPNS_GROUP1
String
Y
N
넣은 값 리턴.
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_service.ctl
Response
{“BODY”:[{“UPNS_GROUP_1”:”20053”,”UPNS_GROUP_2”:”20052”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}
4-26. UPNS 유저등록카운트 수동셋팅¶
- 서비스명
UPNS 유저등록카운트 수동셋팅
- Controller URL
redisUpnsUserCntSet.ctl
- 설명
UPNS 유저등록카운트 수동셋팅
Request (POST 방식 호출)
항목
타입
필수
설명
AUTHKEY
String
N
인증보안키 (*레가시 연동 서버에 대해서는 불필요*)
APP_ID
String
Y
어플리케이션 식별 정보 (패키지명)
UPNS_GROUP1
String
Y
DB에 등록되어 있는 UPNS 아이디를 키로 value값을 유저수로 하여 넘긴다.
Response (JSON 방식의 응답)
구분
항목
타입
필수
반복
설명
HEADER
RESULT_CODE
String
Y
N
0000 : 응답 성공
그외 : 에러 메시지
RESULT_BODY
String
Y
N
OK : 응답 성공
그외 : 에러 메시지
SERVICE
String
Y
N
처리 Controller
BODY
UPNS_GROUP1
String
Y
N
넣은 값 리턴.
연동 예시
Request
http://[Receiver IP]:[Receiver Port]/rcv_get_service.ctl
Response
{“BODY”:[{“UPNS_GROUP_1”:”20053”,”UPNS_GROUP_2”:”20052”}],”HEADER”:{“RESULT_CODE”:”0000”,”RESULT_BODY”:”OK”,”SERVICE”:”kr.msp.push.receiver.controller.ReceiverController”}}