Common Push Type
ThinQ Connect v2.0 API에서 사용되는 푸시 타입 및 각 푸시 타입별 응답 메시지 형식을 설명합니다.
푸시 타입
발생 가능한 푸시 타입과 각각의 정의는 다음과 같습니다.
Push Type |
Description |
---|---|
DEVICE_REGISTERED |
디바이스가 추가됨 |
DEVICE_UNREGISTERED |
디바이스가 삭제됨 |
DEVICE_ALIAS_CHANGED |
디바이스 닉네임이 변경됨 |
DEVICE_PUSH |
디바이스 동작 완료, 디바이스 부품 교체 등을 사용자에게 알려주기 위해 사용됨. (예: 세탁 완료, 필터 교체 등) |
DEVICE_EVENT |
디바이스 상태가 변경됨 |
USER_PUSH_SUBSCRIBED |
(비동기) 사용자 구독 API 호출 결과 |
USER_PUSH_UNSUBSCRIBED |
(비동기) 사용자 구독 해지 API 호출 결과 |
DEVICE_PUSH_SUBSCRIBED |
(비동기) 복수 디바이스 푸시 구독 API 호출 결과 |
DEVICE_PUSH_UNSUBSCRIEBED |
(비동기) 복수 디바이스 푸시 구독 해지 API 호출 결과 |
DEVICE_EVENT_SUBSCRIBED |
(비동기) 복수 디바이스 이벤트 구독 API 호출 결과 |
DEVICE_EVENT_UNSUBSCRIBED |
(비동기) 복수 디바이스 이벤트 구독 해지 API 호출 결과 |
DEVICE_PROFILE |
(비동기) 복수 디바이스 프로파일 조회 API 호출 결과 |
DEVICE_STATUS |
(비동기) 복수 디바이스 상태 조회 API 호출 결과 |
DEVICE_CONTROL |
(비동기) 복수 디바이스 제어 API 호출 결과 |
DEVICE_REGISTERED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "PbQXevqTtG8DK68scb9Z5G", "requestId": "2G4uqKaPzYnixbxYkRSbcc", "response": { "alias": "S3BFWIFI", "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "modelName": "S3BF_WIFI", "pushType": "DEVICE_REGISTERED", "reportable": true, "serviceId": "{YOUR_SERVICE_ID}", "userNumber": "{EMP_USER_NUMBER}" }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T06:59:10.833144" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
serviceId |
string |
서비스 ID |
userNumber |
string |
디바이스를 등록한 사용자 ID |
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
modelName |
string |
디바이스 모델 이름 |
alias |
string |
디바이스 별명 |
reportable |
bool |
디바이스 이벤트 허용 여부 |
DEVICE_UNREGISTERED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "PbQXevqTtG8DK68scb9Z5G", "requestId": "2G4uqKaPzYnixbxYkRSbcc", "response": { "alias": "S3BFWIFI", "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "modelName": "S3BF_WIFI", "pushType": "DEVICE_UNREGISTERED", "serviceId": "{YOUR_SERVICE_ID}", "userNumber": "{EMP_USER_NUMBER}" }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T06:59:10.833144" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
serviceId |
string |
서비스 ID |
userNumber |
string |
디바이스를 등록한 사용자 ID |
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
modelName |
string |
디바이스 모델 이름 |
alias |
string |
디바이스 별명 |
DEVICE_ALIAS_CHANGED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "PbQXevqTtG8DK68scb9Z5G", "requestId": "2G4uqKaPzYnixbxYkRSbcc", "response": { "alias": "S3BFWIFI", "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "modelName": "S3BF_WIFI", "pushType": "DEVICE_ALIAS_CHANGED", "serviceId": "{YOUR_SERVICE_ID}", "userNumber": "{EMP_USER_NUMBER}" }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T06:59:10.833144" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
serviceId |
string |
서비스 ID |
userNumber |
string |
디바이스를 등록한 사용자 ID |
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
modelName |
string |
디바이스 모델 이름 |
alias |
string |
디바이스 별명 |
DEVICE_PUSH
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "FSXap88EWWG5A9t94rBGFh", "requestId": "BTn4NJK2858wmwJrfcNGpu", "response": { "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "modelName": "S3BF_WIFI", "pushCode": "STYLING_IS_COMPLETE", "pushType": "DEVICE_PUSH", "serviceId": "{YOUR_SERVICE_ID}", "userList": [ "{USER_NUMBER}" ] }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:34:07.218769" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
pushCode |
string |
디바이스에서 발생한 푸시 |
serviceId |
string |
서비스 ID |
userList |
array (string) |
디바이스 푸시를 구독 중인 사용자 목록 |
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
modelName |
string |
디바이스 모델 이름 |
DEVICE_EVENT
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "9VrtBGvykATMJ2HUrVYyfF", "requestId": "DsSwmHjsHHKVaFvPsPsP2i", "response": { "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "modelName": "S3BF_WIFI", "pushType": "DEVICE_EVENT", "result": { "remoteControlEnable": { "remoteControlEnabled": true }, "runState": { "currentState": "INITIAL" }, "timer": { "relativeHourToStop": 0, "relativeMinuteToStop": 0, "remainHour": 0, "remainMinute": 0, "totalHour": 0, "totalMinute": 0 } }, "serviceId": "{YOUR_SERVICE_ID}", "userList": [ "{USER_NUMBER}" ] }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:39:57.075405" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
serviceId |
string |
서비스 ID |
userList |
array (string) |
디바이스 이벤트를 구독하는 사용자 목록 |
result |
array or object |
디바이스 상태 데이터 |
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
modelName |
string |
디바이스 모델 이름 |
USER_PUSH_SUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "6Wv3DMDsSWKvigZoxB90iw", "requestId": "eDBuBTfRySZVhwiZrqkWpp", "response": { "pushType": "USER_PUSH_SUBSCRIBED", "userNumber": {USER_NUMBER}, "serviceId": {SERVICE_ID}, "result": {} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:19:26.123128" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
userNumber |
string |
API를 호출한 사용자의 User Number |
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
result |
string |
비어있는 값을 반환합니다. |
USER_PUSH_UNSUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "6Wv3DMDsSWKvigZoxB90iw", "requestId": "eDBuBTfRySZVhwiZrqkWpp", "response": { "pushType": "USER_PUSH_UNSUBSCRIBED", "userNumber": {USER_NUMBER}, "serviceId": {SERVICE_ID}, "result": {} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:19:26.123128" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
userNumber |
string |
API를 호출한 사용자의 User Number |
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
result |
string |
비어있는 값을 반환합니다. |
DEVICE_PUSH_SUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "0nvVEXz4TzOGgkc35fpXtg", "requestId": "imrXNdmqiqx7hKFJC5Fb2M", "response": { "deviceId": {DEVICE_ID}, "deviceType": "DEVICE_AIR_CONDITIONER", "pushType": "DEVICE_PUSH_SUBSCRIBED", "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER}, "result": {} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2021-04-01T13:59:34.759463" }
Property Name |
Type |
Description |
---|---|---|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
pushType |
string |
|
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
string |
비어있는 값을 반환합니다. |
DEVICE_PUSH_UNSUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg", "requestId": "b5YwFXSWHz3GqBCZbRjTZS", "response": { "deviceId": {DEVICE_ID}, "deviceType": "DEVICE_AIR_CONDITIONER", "pushType": "DEVICE_PUSH_UNSUBSCRIBED", "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER}, "result": {} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2021-04-01T13:55:28.622032" }
Property Name |
Type |
Description |
---|---|---|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
pushType |
string |
|
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
string |
비어있는 값을 반환합니다. |
DEVICE_EVENT_SUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg", "requestId": "c6TqAaWAAx9EsnWWzG624J", "response": { "deviceId": {DEVICE_ID}, "deviceType": "DEVICE_AIR_CONDITIONER", "pushType": "DEVICE_EVENT_SUBSCRIBED", "result": {}, "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2021-04-02T01:39:49.151744" }
Property Name |
Type |
Description |
---|---|---|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
pushType |
string |
|
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
object |
비어있는 값을 반환합니다. |
DEVICE_EVENT_UNSUBSCRIBED
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "Ig7pfvgQQFiLjrKoBFJ0xg", "requestId": "kYjrAq5BLD6D93Pg2RFR3t", "response": { "deviceId": {DEVICE_ID}, "deviceType": "DEVICE_AIR_CONDITIONER", "pushType": "DEVICE_EVENT_UNSUBSCRIBED", "result": {}, "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER} }, "responseCode": "0000", "statusCode": 200, "timestamp": "2021-04-02T01:41:46.437116" }
Property Name |
Type |
Description |
---|---|---|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
pushType |
string |
|
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
object |
비어있는 값을 반환합니다. |
DEVICE_PROFILE
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "9VrtBGvykATMJ2HUrVYyfF", "requestId": "DsSwmHjsHHKVaFvPsPsP2i", "response": { "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "pushType": "DEVICE_PROFILE", "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER}, "result": { DEVICE_PROFILE }, }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:39:57.075405" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
array or object |
API 요청에 대한 결과 - 디바이스 프로파일 디바이스 프로파일의 구조는 가전 타입 별로 다르며, 각 가전 별 프로파일에 대한 설명은 Device Profile을 참조하십시오. |
DEVICE_STATUS
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "9VrtBGvykATMJ2HUrVYyfF", "requestId": "DsSwmHjsHHKVaFvPsPsP2i", "response": { "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "pushType": "DEVICE_STATUS", "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER}, "result": { DEVICE_STATUS }, }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:39:57.075405" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Numbe |
result |
array or object |
API 요청에 대한 결과 - 디바이스 프로파일 기반의 디바이스 상태 데이터 디바이스 프로파일의 구조는 가전 타입 별로 다르며, 각 가전 별 프로파일에 대한 설명은 Device Profile을 참조하십시오. |
DEVICE_CONTROL
이 푸시 타입 발생 시, 전달되는 메시지 형식은 다음과 같습니다.
{ "messageId": "9VrtBGvykATMJ2HUrVYyfF", "requestId": "DsSwmHjsHHKVaFvPsPsP2i", "response": { "deviceId": "TQS-B2E5FF4D-FC14-4E6F-928C-EFC8536B60EA", "deviceType": "DEVICE_STYLER", "pushType": "DEVICE_CONTROL", "serviceId": {SERVICE_ID}, "userNumber": {USER_NUMBER}, "result": {}, }, "responseCode": "0000", "statusCode": 200, "timestamp": "2020-08-26T07:39:57.075405" }
Property Name |
Type |
Description |
---|---|---|
pushType |
string |
|
deviceId |
string |
디바이스 ID |
deviceType |
string |
디바이스 타입 |
serviceId |
string |
서비스를 등록한 후에 발급되는 서비스 ID |
userNumber |
string |
API를 호출한 사용자의 User Number |
result |
object |
비어있는 값을 반환합니다. |