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 호출 시 서버로 전송한다.

  1. asking_authorization.ctl 을 요청하여 AUTHKEY 발급

  2. 서버로부터 발급 받은 AUTHKEY를 단말기에서 메모리에 저장한다.

  3. 이후 모든 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

발송제한 시간 설정.

발송제한시간이 필요 없을 경우는 빈값을 보낸다.

발송제한 시간 설정 방법

시작시간:분-종료시간:분 형태로 보낸다.

  1. 3:00 새벽3시이후 발송되지 않음

  2. 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

발송제한 시간 설정.

발송제한시간이 필요 없을 경우는 빈값을 보낸다.

발송제한 시간 설정 방법

시작시간:분-종료시간:분 형태로 보낸다.

  1. 3:00 새벽3시이후 발송되지 않음

  2. 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

발송제한 시간 설정.

발송제한시간이 필요 없을 경우는 빈값을 보낸다.

발송제한 시간 설정 방법

시작시간:분-종료시간:분 형태로 보낸다.

  1. 3:00 새벽3시이후 발송되지 않음

  2. 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”}}