7. 메시지 포맷¶
Smart[Fleet] 플랫폼에 연동되는 다양한 차량 센서들이 플랫폼에 전송하는 메세지에 대해서 정의합니다.
이 매뉴얼은 단말이 MQTTS 프로토콜로 Smart[Fleet] 플랫폼과 연동하기 위한 메시지 포맷입니다. Entity 등록을 위한 HTTP Rest API 사용은 4. 구성요소(Entity) 등록 문서를, App 개발자를 위한 Smart[Fleet] API 는 6. API 규격 문서를 참고하십시오.
주석
본 장에 명세된 표 내용 중 M
/ O
는 Mandatory
/ Optional
의 약자로, Mandatory는 필수로 포함해야 하는 데이터를 Optional은 필요에 따라 기입이 여부를 개발사에서 판단하시면 됩니다.
7.1. 메시지 기본 구조¶
Smart[Fleet] 플랫폼의 기본 메시지 구조는 Header
와 Payload
형태로 구조화 되어 있습니다. 각 메시지는 해당 메시지의 타입인 ty
로 구분하고 ty
에 따라 pld
child의 내용이 상이합니다.
Example Code :
{
// Header
"ts" : 1505434907995,
// Message Type
"ty" : 2,
// Payload
"pld" : {
"tid" : 1,
"fc" : 12,
"lon" : 127.114513,
"lat" : 37.380241,
"rpm" : 323,
"em" : 28,
"el" : 25,
"xyz" : "23123,49923,123",
"vv" : "11.4"
}
}
7.1.1. 메시지 타입¶
Smart[Fleet] 플랫폼은 외부 인터페이스와 다양한 형태의 메시지 주고 받을 때,
해당 메세지를 ty
값으로 구분하여 인식하게 됩니다.
7.1.1.1. 주기보고 메세지 타입¶
주기보고 메시지는 Smart[Fleet] 규격을 따르는 단말 또는 센서가 주기적으로 차량의 운행 정보를 전달할 때 명세하는 메시지 타입입니다. 아래 표와 같이 센서 타입별로 구분되어 있습니다.
ty | 설명 |
---|---|
1 | GPS 단말의 Trip 메세지 |
2 | GPS 단말의 MicroTrip 메시지 |
3 | OBD 단말의 Trip 메시지 |
4 | OBD 단말의 MicroTrip 메시지 |
5 | ADAS 단말의 Trip 메시지 |
6 | ADAS 단말의 MicroTrip 메시지 |
7 | BlackBox 단말의 Trip 메시지 |
8 | BlackBox 단말의 MicroTrip 메시지 |
9 | DTAG 단말의 Trip 메세지 |
10 | DTAG 단말의 MicroTrip 메시지 |
7.1.1.2. 이벤트 메세지 타입¶
이벤트 메시지는 Smart[Fleet] 규격을 따르는 단말 또는 센서가 인식한 이벤트 메시지를 Smart[Fleet]에 전송할 때 명세하는 메시지 타입입니다.
ty | 설명 |
---|---|
101 | 차량 고장 및 진단 이벤트 메시지 |
102 | 운행 중 차량 사고 이벤트 메시지 |
103 | 주차 중 차량 충격 이벤트 메시지 |
104 | 차량 배터리 이상 이벤트 메시지 |
105 | 차량 센서 탈착 이벤트 메시지 |
106 | 차량 센서 종료 이벤트 메시지 |
107 | ADAS 센서가 감지한 이벤트 메시지 |
108 | BlackBox 부팅 이벤트 메시지 |
109 | BlackBox 모드 변경 이벤트 메시지 |
110 | BlackBox 세팅 이벤트 메시지 |
111 | BlackBox 이미지 업로드 리포트 메시지 |
112 | BlackBox 인지 이벤트 메시지 |
113 | DTAG eCall 이벤트 메시지 |
114 | DTAG gSensor 이벤트 메시지 |
115 | DTAG Cheating 이벤트 메시지 |
116 | DTAG ColdStart 이벤트 메시지 |
7.1.2. Aggregated Microtrip¶
Microtrip 데이터는 여러개의 데이터를 모아서 한번에 보낼 수 있습니다. 각 수집한 Microtrip 데이터는 JSON Array 데이터를 기반으로 다음과 같이 패킷을 합쳐 보낼 수 있습니다.
{
"ty":2,
"ts":1508215121898,
"pld":
[
{
"tid":301,
"lon":127.062512,
"lat":37.510296,
"alt":102,
"sp":90,
"dop":13,
"nos":5,
"clt":1508215121888
},
{
"tid":301,
"lon":127.062512,
"lat":37.510296,
"alt":113,
"sp":74,
"dop":11,
"nos":4,
"clt":1508215121893
},
{
"tid":301,
"lon":127.062512,
"lat":37.510296,
"alt":115,
"sp":71,
"dop":14,
"nos":5,
"clt":1508215121898
}
]
}
주석
페이로드가 Microtrip 여러개를 Aggregation 하여 전송할 때는 시간의 순서에 맞추어 전송하여야 합니다. 플랫폼에서 시간에 따라 Re-ordering을 수행하지 않습니다.
7.2. 센서 타입별 주기보고 메시지 포맷¶
7.2.1. GPS¶
GPS 단말에서 발생한 위치 데이터를 플랫폼에 전달하기 위해 필요한 메시지를 정의합니다.
7.2.1.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
주석
표에 M/O는 Mandatory/Optional의 약자로, Mandatory는 필수로 포함해야하는 데이터를 Optional은 필요에 따라 기입이 여부를 개발사에 판단합니다.
7.2.1.2. Payload Types¶
7.2.1.2.1. GPS Trip Message¶
Trip Message는 차량이 운행이 종료된 후에 전달하는 메시지입니다.
Key | Type | M/O | Description | Note |
---|---|---|---|---|
tid | Int | M | Trip 고유 번호 | |
stt | Int | M | Trip의 시작 날짜 및 시간 | UTC |
edt | Int | M | Trip의 종료 날짜 및 시간 | UTC |
dis | Int | O | Trip의 주행거리 | Meter |
stlat | Int | O | 운행 시작 좌표의 위도 | |
stlon | Int | O | 운행 시작 좌표의 경도 | |
edlat | Int | O | 운행 종료 좌표의 위도 | |
edlon | Int | O | 운행 종료 좌표의 경도 | |
hsts | Int | O | Trip의 최고 속도 | |
mesp | Int | O | Trip의 평균 속도 | |
fwv | String | O | 펌웨어 버전 | |
dtvt | Int | O | 주행시간 |
Example Code :
{
"ty" : 1,
"ts" : 1505434907995,
"pld" : {
"tid" : 10,
"stt" : 1505433907995,
"edt" : 1505434907995,
"dis" : 101,
"stlon" : 127.114513,
"stlat" : 37.380241,
"edlon" : 126.114513,
"edlat" : 36.380241,
"hsts" : 121,
"mesp" : 63,
"fwv" : "1.0.1",
"dtvt" : 88
}
}
7.2.1.3. GPS Microtrip¶
Microtrip 메세지는 차량이 운행을 시작한 후 설정된 주기에 따라 전송하는 차량 운행에 대한 위치 데이터입니다. 주기는 각 어플리케이션 마다 상이하므로, 아래의 값은 플랫폼에 전송하는 해당 시점에 데이터를 추출하여 기입합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
lat | Int | M | 위도 (WGS84) |
lon | Int | M | 경도 (WGS84) |
alt | Int | M | 고도 (WGS84) |
clt | Int | M | 단말기 기준 수집 시간 |
sp | Int | O | Ground Speed (based on NMEA Protocol / km/h) |
dop | Int | O | Dilution of Precision 값 (based on NMEA protcol) |
nos | Int | O | 위성 갯수 정보 (based on NMEA protocol) |
tdis | Int | O | Microtrip 동안 이동한 거리 |
Example Code :
{
"ts" : 1505434907995,
"ty" : 2,
"pld" : {
"tid" : 1,
"lon" : 127.114513,
"lat" : 37.380241,
"alt" : 280.2,
"clt" : 1505434907995,
"sp" : 10.2,
"dop" : 15.2,
"nos" : 5
}
}
7.2.2. OBD¶
OBD 단말에서 발생한 데이터를 플랫폼에 전달하기 위해 필요한 메시지를 정의합니다.
7.2.2.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
7.2.2.2. Payload Type¶
7.2.2.2.1. OBD Trip¶
Trip Message는 차량이 운행이 종료된 후에 전달하는 메시지입니다.
Key | Type | M/O | Description | Note |
---|---|---|---|---|
tid | Int | M | Trip 고유 번호 | |
stt | Int | M | Trip의 시작 날짜 및 시간 | UTC |
edt | Int | M | Trip의 종료 날짜 및 시간 | UTC |
dis | Int | M | Trip의 주행거리 | Meter |
tdis | Int | M | 차량의 총 주행거리 | Meter |
fc | Int | M | 연료소모량 | |
stlat | Int | M | 운행 시작 좌표의 위도 | |
stlon | Int | M | 운행 시작 좌표의 경도 | |
edlat | Int | M | 운행 종료 좌표의 위도 | |
edlon | Int | M | 운행 종료 좌표의 경도 | |
ctp | Int | M | 부동액(냉각수) 평균온도 | |
coe | Int | M | Trip의 탄소 배출량 | |
fct | Int | M | 연료차단 상태의 운행시간 | |
hsts | Int | M | Trip의 최고 속도 | |
mesp | Int | M | Trip의 평균 속도 | |
idt | Int | M | Trip의 공회전 시간 | |
btv | Int | M | 배터리 전압(시동OFF후 전압) | |
gnv | Int | M | 발전기 전압(주행중 최고 전압) | |
wut | Int | M | Trip의 웜업시간(주행전 시동 시간) | |
usm | Int | O | BT가 연결된 휴대폰 번호 | |
est | Int | O | 80~100km 운행 시간 | |
fwv | Int | O | 펌웨어 버전 | |
dtvt | Int | O | 주행시간 |
Example Code :
{
"ty" : 1,
"ts" : 1505434907995,
"pld" : {
"tid" : 10,
"stt" : 1505433907995,
"edt" : 1505434907995,
"dis" : 101,
"tdis" : 16813,
"fc" : 83,
"stlon" : 127.114513,
"stlat" : 37.380241,
"edlon" : 126.114513,
"edlat" : 36.380241,
"ctp" : 48,
"coe" : 392,
"fct" : 123,
"hsts" : 121,
"mesp" : 63,
"idt" : 3,
"btv" : 14.5,
"gnv" : 12.3,
"wut" : 181,
"dtvt" :2301
}
}
7.2.2.2.2. OBD Microtrip¶
Microtrip 메세지는 차량이 운행을 시작한 후 설정된 주기에 따라 전송하는 차량 운행 상세 데이터입니다. 주기는 각 어플리케이션 마다 상이하므로, 아래의 값은 플랫폼에 전송하는 해당 시점에 데이터를 추출하여 기입합니다.
Key | Type | M/O | Description | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tid | Int | M | Trip 고유 번호 | ||||||||||||||||||||||||||||||||||||
fc | Int | O | 연료소모량 | ||||||||||||||||||||||||||||||||||||
lat | Int | M | 위도 (WGS84) | ||||||||||||||||||||||||||||||||||||
lon | Int | M | 경도 (WGS84) | ||||||||||||||||||||||||||||||||||||
lc | Int | O | 측정 한 위치 값의 정확도 | ||||||||||||||||||||||||||||||||||||
clt | Int | M | 단말기 기준 수집 시간 | ||||||||||||||||||||||||||||||||||||
cdit | Int | O | Trip의 현재시점까지 주행거리 | ||||||||||||||||||||||||||||||||||||
rpm | Int | O | rpm | ||||||||||||||||||||||||||||||||||||
sp | Int | O | 차량 속도 | ||||||||||||||||||||||||||||||||||||
em | Int | O | 한 주기 동안 발생한 이벤트에 대해서 Hexa String으로 표기한다.
한 주기 동안 차량이 급유턴과 급가속을 동시에 진행한 경우에는 28 로 표현
|
||||||||||||||||||||||||||||||||||||
el | Int | O | 엔진 부하 | ||||||||||||||||||||||||||||||||||||
xyz | Int | O | 가속도 X, Y 및 각속도 Y 값 (Delimeter는comma) | ||||||||||||||||||||||||||||||||||||
vv | Int | O | 배터리 전압 (시동 OFF 후 전압) | ||||||||||||||||||||||||||||||||||||
tpos | Int | O | 엑셀 포지션 값 |
Example Code :
{
"ts" : 1505434907995,
"ty" : 2,
"pld" : {
"tid" : 1,
"fc" : 12,
"lon" : 127.114513,
"lat" : 37.380241,
"rpm" : 323,
"em" : 28,
"el" : 25,
"xyz" : "23123,49923,123",
"vv" : "11.4"
}
}
7.2.3. ADAS¶
ADAS 단말에서 발생한 데이터를 플랫폼에 전달하기 위해 필요한 메시지를 정의합니다.
7.2.3.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
7.2.3.2. Payload Type¶
7.2.3.2.1. ADAS Trip¶
ADAS Trip 메세지는 ADAS 단말이 주행을 완료한 경우에 사용하는 메시지 포맷입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
lat | Int | M | 운행 종료 시 위도 (WGS84) |
lon | Int | M | 운행 종료 시 경도 (WGS84) |
dop | Int | O | Dilution of Precision 값 (based on NMEA protcol) |
nos | Int | O | 위성 갯수 정보 (based on NMEA protocol) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 5,
"pld" : {
"tid" : 11123,
"lon" : 127.114513,
"lat" : 37.380241,
}
}
7.2.3.2.2. ADAS Microtrip¶
ADAS Microtrip 메세지는 ADAS 단말에서 인지한 ADAS 및 GPS 위치 정보를 주기적으로 올릴때 사용하는 메시지 포맷입니다. 일반적으로는 ADAS와 GPS가 함께 있는 경우에 활용하며, 메시지는 ADAS 부착 차량의 운행 시작부터 운행 종료까지 주기적으로 전송합니다.
Key | Type | M/O | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tid | Int | M | Trip 고유 번호 | ||||||||||
clt | Int | M | 단말기 기준 수집 시간 | ||||||||||
lat | Int | M | 위도 (WGS84) | ||||||||||
lon | Int | M | 경도 (WGS84) | ||||||||||
dop | Int | O | Dilution of Precision 값 (based on NMEA protcol) | ||||||||||
nos | Int | O | 위성 갯수 정보 (based on NMEA protocol) | ||||||||||
dir | Int | M |
|
||||||||||
sp | Int | M | 차량 속도 (km/h) | ||||||||||
ldw | Int | M |
|
||||||||||
rld | Int | O |
|
||||||||||
lld | Int | O |
|
||||||||||
fcw | Int | M |
|
||||||||||
hdw | Int | O | 전방 차량과의 거리 (단위 : m) | ||||||||||
brk | Int | O |
|
||||||||||
chcmr | Int | M |
|
||||||||||
chdir | Int | M |
|
||||||||||
chbrk | Int | M |
|
Example Code :
{
"ts" : 1505434907995,
"ty" : 6,
"pld" : {
"tid" : 11123,
"lon" : 127.114513,
"lat" : 37.380241,
"sp" : 113,
"dir" : 31,
"ldw" : 32,
"rld" : 20,
"lld" : 50,
"fcw" : 30,
"hdw" : 50,
"brk" : 0,
"chcmr" : 0,
"chdir" : 0,
"chbrk" : 0
}
}
7.2.4. BlackBox¶
BlackBox 단말에서 발생한 데이터를 플랫폼에 전달하기 위해 필요한 메시지를 정의합니다.
7.2.4.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
7.2.4.2. Payload Type¶
7.2.4.2.1. BlackBox Trip¶
BlackBox Trip 메세지는 BlackBox 장착한 차량이 주행 또는 주차 상태를 완료한 경우에 사용하는 메시지 포맷입니다. 단 BlackBox의 Trip은 주행과 주차로 설정합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
clt | Int | M | 단말기 기준 수집 시간 |
stlat | Int | M | 운행 시작 시 위도 (WGS84) |
stlon | Int | M | 운행 시작 시 경도 (WGS84) |
edlat | Int | M | 운행 종료 시 위도 (WGS84) |
edlon | Int | M | 운행 종료 시 경도 (WGS84) |
dis | Int | M | 총 운행거리 (meter) |
try | Int | M |
|
vlt | Int | M | 자동차 배터리 전압 (운행 종료 시) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 7,
"pld" : {
"tid" : 11123,
"stlon" : 127.114513,
"stlat" : 37.380241,
"edlon" : 127.114513,
"edlat" : 37.380241,
"try" : 1,
"vlt" : 12.1,
"clt" : 1502391230123
}
}
7.2.4.2.2. BlackBox Microtrip¶
BlackBox Microtrip 메세지는 Blackbox 단말에서 인지한 정보를 주기적으로 플랫폼에서 사용하는 메시지 포맷입니다. 일반적으로는 ADAS와 GPS가 함께 있는 경우에 활용하며, 메시지는 ADAS 부착 차량의 운행 시작부터 운행 종료까지 주기적으로 전송합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
clt | Int | M | 단말기 기준 수집 시간 |
try | Int | M |
|
lat | Int | O | 위도 (WGS84) Mandatory when Driving |
lon | Int | O | 경도 (WGS84) Mandatory when Driving |
sp | Int | O | Ground Speed (based on NMEA Protocol, km/h) Mandatory when Driving |
vlt | Int | O | 자동차 배터리 전압 Mandatory when Parking |
tem | Int | O | 자동차 내부 온도 Mandatory when Parking |
tim | Int | O | 주차 시간 (or 주차 남은 시간) Mandatory when Parking |
Example Code :
{
"ts" : 1505434907995,
"ty" : 6,
"pld" : {
"tid" : 11123,
"try" : 1
"lon" : 127.114513,
"lat" : 37.380241,
"sp" : 113,
}
}
7.2.5. DTAG¶
Driving Tag(DTAG) 단말에서 발생한 데이터를 플랫폼에 전달하기 위해 필요한 메시지를 정의합니다.
7.2.5.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
7.2.5.2. Payload Type¶
7.2.5.2.1. DTAG Trip¶
DTAG Trip 메세지는 DTAG 단말을 장착한 차량이 주행을 완료한 경우에 사용하는 메시지 포맷입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
lat | Int | M | 운행 종료 시 위도 (WGS84) |
lon | Int | M | 운행 종료 시 경도 (WGS84) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 9,
"pld" : {
"tid" : 11123,
"lon" : 127.114513,
"lat" : 37.380241
}
}
7.2.5.2.2. DTAG Microtrip¶
DTAG Microtrip 메세지는 DTAG 단말에서 인지한 정보를 주기적으로 플랫폼에 전달하는 메시지 포맷입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | Trip 고유 번호 |
clt | Int | M | 단말기 기준 수집 시간 |
lat | Int | M | 운행 종료 시 위도 (WGS84) |
lon | Int | M | 운행 종료 시 경도 (WGS84) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 10,
"pld" : {
"tid" : 11123,
"lon" : 127.114513,
"lat" : 37.380241
}
}
7.3. 이벤트 데이터 포맷¶
단말에서 비주기적으로 발생한 이벤트를 플랫폼에 전송하기 위한 메시지 포맷입니다. 이벤트 기반 데이터 전송을 위한 프로시저는 5.4.2 Event Data 를 참고하십시오.
7.3.1. Message Header¶
Key | Type | M/O | Description |
---|---|---|---|
ty | Int | M |
|
ts | Int | O | 정보 수집 시간 |
pld | M | 아래 각 페이로드 메시지를 참고 |
7.3.2. Payload Type¶
7.3.2.1. Diagnostic Information [ty:101]¶
OBD에서 인지한 차량 진단 코드(DTC)를 전송하는 메시지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호(Not required) |
dtcc | String | M | 차량고장코드 (Delimeter Comma) |
dtck | Int | M | 0=confirm 1=pending 2=permanent |
dtcs | Int | M | DTC Code의 개수 |
주석
OBD가 플랫폼에 DTC 코드를 전송하는 방식은 2가지입니다.
- 차량 주행이 시작한 후에 감지된 Diagnostic Information을 전송하는 방법
- 플랫폼을 통해서 OBD에 DTC 코드 보고를 요청하는 RPC 방법
Example Code :
{
"ts" : 1505434907995,
"ty" : 101,
"pld" : {
"tid": 1,
"dtcc": "P2502",
"dtck": 0,
"dtcs": 2
}
}
7.3.2.2. Collision warning (Driving) [ty:102]¶
운행 중 OBD가 감지한 차량 접촉 사고에 대한 위치 정보를 전달하는 메세지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호 |
dclat | Int | M | 위도 (WGS84) |
dclon | Int | M | 경도 (WGS84) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 102,
"pld" : {
"tid": 1,
"dclat" : 37.380241,
"dclon" : 127.114513
}
}
7.3.2.3. Collision warning (Parking) [ty:103]¶
주차 중 OBD가 감지한 차량 접촉 사고에 대한 위치 정보를 전달하는 메세지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호 |
plat | Int | M | 위도 (WGS84) |
plon | Int | M | 경도 (WGS84) |
Example Code :
{
"ts" : 1505434907995,
"ty" : 103,
"pld" : {
"tid" : 101,
"plat" : 37.380241,
"plon" : 127.114513
}
}
7.3.2.4. Battery Warning [ty:104]¶
차량 배터리 소모에 대한 위험 알림 메시지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호 |
wbv | Int | M | 배터리 전압 |
Example Code :
{
"ts" : 1505434907995,
"ty" : 104,
"pld" : {
"wbv" : 13
}
}
7.3.2.5. Unplugged Warning [ty:105]¶
OBD가 차량으로부터 탈착되는 이벤트에 대한 알림 메시지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호 |
unpt | Int | M | 탈착 시간 |
pt | Int | M | 부착 시간 |
Example Code :
{
"ts" : 1505434907995,
"ty" : 105,
"pld" : {
"unpt": 1505433907995,
"pt": 1505434907995
}
}
7.3.2.6. Turn-off Warning [ty:106]¶
OBD가 종료된 경우, 종료 이전에 종료에 대한 이유를 플랫폼에 전달하기 위한 알림 매시지를 정의합니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | O | Trip 고유 번호 |
rs | String | M | 단말 종료 원인 |
Example Code :
{
"ts" : 1505434907995,
"ty" : 106,
"pld" : {
"rs": "unexpected reason"
}
}
7.3.2.7. ADAS Event [ty:107]¶
ADAS에서 인지한 이벤트 정보를 전송하는 메시지 포맷입니다.
Key | Type | M/O | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tid | Int | O | Trip 고유 번호 | ||||||||||
lat | Int | O | 위도 (WGS84) | ||||||||||
lon | Int | O | 경도 (WGS84) | ||||||||||
dop | Int | O | Dilution of Precision 값 (based on NMEA protcol) | ||||||||||
nos | Int | O | 위성 갯수 정보 (based on NMEA protocol) | ||||||||||
dir | Int | M |
|
||||||||||
sp | Int | M | 차량 속도 (km/h) | ||||||||||
ldw | Int | M |
|
||||||||||
fcw | Int | M |
|
Example Code :
{
"ts" : 1505434907995,
"ty" : 107,
"pld" : {
"tid" : 11123,
"lon" : 127.114513,
"lat" : 37.380241,
"sp" : 113,
"dir" : 31,
"ldw" : 32,
"fcw" : 30
}
}
7.3.2.8. BlackBox 부팅 이벤트 [ty:108]¶
블랙박스가 정상적으로 부팅을 완료한 후에 플랫폼에 전달하는 이벤트 메세지입니다.
Key | Type | M/O | Description |
---|---|---|---|
auth | Int | M | 단말 인증 정보 |
fwv | String | M | 단말 Firmware 버전 |
bfwv | String | M | 블랙박스 Firmware 버전 |
bnm | String | M | 블랙박스 모델명 |
mfwv | String | M | 모듈 펌웨어 버전 |
sfwv | String | M | 안전운전도우미 펌웨어 버전 |
fqual | Int | O | 전방카메라 영상품질 설정 |
fsharp | Int | O | 전방카메라 선명도 설정 |
fntbr | Int | O | 전방카메라 야간영상밝기 설정 |
fnv | Int | O | 전방카메라 Nightvision 설정 |
fmode | Int | O | 전방카메라 영상모드 설정 |
rqual | Int | O | 후방카메라 영상품질 설정 |
rntbr | Int | O | 후방카메라 야간영상밝기 설정 |
rprec | Int | O | 후방카메라 주차녹화 설정 |
dcs | Int | O | 주행 충돌 민감도 설정 |
pcs | Int | O | 주차 충돌 민감도 설정 |
fms | Int | O | 전방 모션 민감도 설정 |
rms | Int | O | 후방 모션 민감도 설정 |
spk | Int | O | 스피커 볼륨 설정 |
mic | Int | O | 마이크 볼륨 설정 |
cutps | Int | O | 주차시 시스템 차단 온도 설정 |
cutpl | Int | O | 주차시 LCD 차단 온도 설정 |
parke | Int | O | 주차 모드 활성화 여부 설정 |
cuv | Int | O | 주차시 전원 차단 전압 설정 |
cutm | Int | O | 주차시 전원 차단 온도 설정 |
loff | Int | O | 라이브뷰 화면 설정 |
lbr | Int | O | LCD 화면 밝기 설정 |
boot | Int | O | 부팅시 PIP 화면 설정 |
menu | Int | O | 메뉴 상시 보임 설정 |
led | Int | O | 시큐리티 LED 설정 |
pet | Int | O | 주차 충격 감지 타이머 설정 |
cutt | Int | O | 주차 시 전원차단 시간 설정 |
ldws | Int | O | 차선이탈 설정 |
ldsl | Int | O | 차선이탈 민감도 설정 (좌측) |
ldsr | Int | O | 차선이탈 민감도 설정 (우측) |
ldwb | Int | O | 차선이탈 경고음 설정 |
fcws | Int | O | 전방추돌 설정 |
fcwb | Int | O | 전방추돌 경고음 설정 |
fvsa | Int | O | 앞차출발 설정 |
fvs | Int | O | 앞차출발 민감도 설정 |
fvwb | Int | O | 앞차출발 경고음 설정 |
tlds | Int | O | 신호등 알림 설정 |
sac | Int | O | 촬영 화각 설정 |
saac | Int | O | 안전운전 도우미 설정 |
vcc | Int | O | 차종 설정 |
aspvc | Int | O | ADAS 스피커 볼륨 설정 |
marc | Int | O | 메모리 할당 비율 설정 |
drmc | Int | O | 주행 녹화 모드 (표준, 타임랩스) 설정 |
prmc | Int | O | 주차 녹화 모드 (표준, 타임랩스) 설정 |
laoc | Int | O | LCD 상시 켜짐 설정 |
7.3.2.9. BlackBox 모드 변경 이벤트 [ty:109]¶
블랙박스가 주행 <-> 주차 모드로 상호 변경 시 전달하는 이벤트 메시지 입니다.
Key | Type | M/O | Description |
---|---|---|---|
mod | Int | M |
|
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
tim | Int | O | 블랙박스 모드변경 시간 |
psc | Int | O | 주차 충격 수 |
pmc | Int | O | 주차 모션 수 |
cam | Int | O |
|
7.3.2.10. BlackBox 사용자 세팅 이벤트 메시지 [ty:110]¶
사용자가 세팅한 블랙박스 설정 값 전달을 위한 이벤트 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
fqual | Int | O | 전방카메라 영상품질 설정 |
fsharp | Int | O | 전방카메라 선명도 설정 |
fntbr | Int | O | 전방카메라 야간영상밝기 설정 |
fnv | Int | O | 전방카메라 Nightvision 설정 |
fmode | Int | O | 전방카메라 영상모드 설정 |
rqual | Int | O | 후방카메라 영상품질 설정 |
rntbr | Int | O | 후방카메라 야간영상밝기 설정 |
rprec | Int | O | 후방카메라 주차녹화 설정 |
dcs | Int | O | 주행 충돌 민감도 설정 |
pcs | Int | O | 주차 충돌 민감도 설정 |
fms | Int | O | 전방 모션 민감도 설정 |
rms | Int | O | 후방 모션 민감도 설정 |
spk | Int | O | 스피커 볼륨 설정 |
mic | Int | O | 마이크 볼륨 설정 |
cutps | Int | O | 주차시 시스템 차단 온도 설정 |
cutpl | Int | O | 주차시 LCD 차단 온도 설정 |
parke | Int | O | 주차 모드 활성화 여부 설정 |
cuv | Int | O | 주차시 전원 차단 전압 설정 |
cutm | Int | O | 주차시 전원 차단 온도 설정 |
loff | Int | O | 라이브뷰 화면 설정 |
lbr | Int | O | LCD 화면 밝기 설정 |
boot | Int | O | 부팅시 PIP 화면 설정 |
menu | Int | O | 메뉴 상시 보임 설정 |
led | Int | O | 시큐리티 LED 설정 |
pet | Int | O | 주차 충격 감지 타이머 설정 |
cutt | Int | O | 주차 시 전원차단 시간 설정 |
ldws | Int | O | 차선이탈 설정 |
ldsl | Int | O | 차선이탈 민감도 설정 (좌측) |
ldsr | Int | O | 차선이탈 민감도 설정 (우측) |
ldwb | Int | O | 차선이탈 경고음 설정 |
fcws | Int | O | 전방추돌 설정 |
fcwb | Int | O | 전방추돌 경고음 설정 |
fvsa | Int | O | 앞차출발 설정 |
fvs | Int | O | 앞차출발 민감도 설정 |
fvwb | Int | O | 앞차출발 경고음 설정 |
tlds | Int | O | 신호등 알림 설정 |
sac | Int | O | 촬영 화각 설정 |
saac | Int | O | 안전운전 도우미 설정 |
vcc | Int | O | 차종 설정 |
aspvc | Int | O | ADAS 스피커 볼륨 설정 |
marc | Int | O | 메모리 할당 비율 설정 |
drmc | Int | O | 주행 녹화 모드 (표준, 타임랩스) 설정 |
prmc | Int | O | 주차 녹화 모드 (표준, 타임랩스) 설정 |
laoc | Int | O | LCD 상시 켜짐 설정 |
datc | Int | O | 날짜 및 시간 설정 |
mff | Int | O | 메모리 포맷 |
crst | Int | O | 설정 초기화 |
sdupt | Int | O | 안전운전 도우미 업데이트 |
7.3.2.11. BlackBox 이미지 업로드 이벤트 메시지 [ty:111]¶
블랙박스 장치가 촬영하고 업로드한 이벤트를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
kind | Int | M |
|
url | String | M | 업로드된 이미지 url |
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
tm | Int | O | 이벤트 발생 시간 |
7.3.2.12. BlackBox 인지 이벤트 메시지 [ty:112]¶
블랙박스 장치가 인지한 차량 관련 이벤트 정보를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
wid | Int | M |
|
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
tim | Int | O | 블랙박스 알람 시간 |
ldws | Int | O | 인지 알람이 LDW(Left/Right) 인 경우, 차량이 차선을 벗어난 정도 (단위 : Centimeter) |
fcws | Int | 0 | 인지 알림이 FCW 인 경우, 차량의 선행 차량과의 간격 (단위 : Centimeter) |
7.3.2.13. DTAG eCall 이벤트 메시지 [ty:113]¶
DTAG 단말에서 인식한 응급 이벤트 정보를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | 연계된 Trip의 식별자 |
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
clt | Int | M | 단말기 기준 수집 시간 |
7.3.2.14. DTAG gSensor 이벤트 메시지 [ty:114]¶
DTAG 단말에서 인식한 G값 이벤트 정보를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | 연계된 Trip의 식별자 |
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
clt | Int | M | 단말기 기준 수집 시간 |
gvl | Int | M | 단말기에서 인식한 G 값 |
7.3.2.15. DTAG Cheating 이벤트 메시지 [ty:115]¶
블랙박스 장치가 촬영하고 업로드한 이벤트를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | 연계된 Trip의 식별자 |
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
clt | Int | M | 단말기 기준 수집 시간 |
cht | Int | M | 치팅으로 인식한 값 |
7.3.2.16. DTAG ColdStart 이벤트 메시지 [ty:116]¶
블랙박스 장치가 촬영하고 업로드한 이벤트를 전달하기 위한 메시지입니다.
Key | Type | M/O | Description |
---|---|---|---|
tid | Int | M | 연계된 Trip의 식별자 |
lat | Int | O | 위도 (WGS84) |
lon | Int | O | 경도 (WGS84) |
clt | Int | M | 단말기 기준 수집 시간 |
ctime | Int | M | 콜드 스타트 데이터 값 (sec) |
7.4. RPC 메시지 포맷¶
Device를 제어하기 위한 RPC Message Type을 명세합니다. 기술되지 않는 제어는 단말과 어플리케이션 상호 간에만 규약 되어 있다면, Vendor Specific Message를 사용합니다.
7.4.1. Vendor Specific Message¶
각 단말 업체에서 별도로 관리하는 제어 요청 메시지이며, 다른 제어 메시지도 본 포맷을 확장하여 명시됩니다.
7.4.1.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | 원격 제어하고자 하는 기능에 대해서 명세 |
params | String | M | 기능에 대한 파라미터를 명세 |
7.4.1.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.1.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | 결과 값에 따른 추가 정보 명세 |
7.4.2. Device Activation (OBD)¶
차량용 OBD 센서를 차량에 부착한 후 활성화하기 위해 필요한 RPC 메시지를 명세합니다.
7.4.2.1. Request¶
Key | Type | M/O | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
method | String | M | activationReq 로 명세 | ||||||||||||||||||||||||||||
params | String | M |
|
Example Code :
{
"method" : "activationReq",
"params" : {
"vid" : "25나0660",
"upp" : 1,
"elt" : 1999,
"fut" : 1,
"mty" : "Automatic"
}
}
7.4.2.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.2.3. Result¶
Key | Type | M/O | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 | ||||||||
addInfo | String | M |
|
Example Code :
{
"result" : 2000,
"addInfo" : {
"vid" : "25나0660"
}
}
7.4.3. Device Turn-On¶
차량용 센서를 원격으로 Turn-On 하는 RPC 메세지를 정의합니다.
7.4.3.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | turnOnReq 로 명세 |
params | String | M | (null) |
Example Code :
{
"method" : "turnOnReq",
"params" : {
}
}
7.4.3.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.3.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | M | (null) |
Example Code :
{
"result" : 2000,
"addInfo" : {
}
}
7.4.4. Firmware Update¶
차량용 OBD의 펌웨어 업데이트를 위한 RPC 메시지를 명세합니다.
7.4.4.1. Request¶
Key | Type | M/O | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
method | String | M | fwupdate 로 명세 | ||||||||||||
params | String | M |
|
Example Code :
{
"method" : "fwupdate",
"params" : {
"pkv" : "1.0.1",
"url" : "ftps://smartfleet.sktelecom.com:10011/dev0001/fw_1_1_3.dat"
}
}
7.4.4.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.5. OBD Reset¶
차량용 OBD의 재시작을 위한 RPC 메시지
7.4.5.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | reset 로 명세 |
params | String | M | N/A |
Example Code :
{
"method" : "reset",
"params" : ""
}
7.4.5.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.5.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | 결과 값에 따른 추가 정보 명세 |
Example Code :
{
"result" : 2000
}
7.4.6. Device Serial Number Check¶
차량용 OBD의 시리얼 번호 확인용 RPC 메시지
7.4.6.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | serial 로 명세 |
params | String | M | N/A |
Example Code :
{
"method" : "serial",
"params" : ""
}
7.4.6.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.6.3. Result¶
Key | Type | M/O | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 | ||||||||
addInfo | String | M |
|
Example Code :
{
"result" : 2000,
"addInfo" : {
"sn" : "70d71b00-71c9-11e7-b3e0-e5673983c7b9"
}
}
7.4.7. Clear Device Data¶
차량용 OBD 데이터 삭제
7.4.7.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | cleardata 로 명세 |
params | String | M | N/A |
Example Code :
{
"method" : "cleardata",
"params" : ""
}
7.4.7.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.7.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
Example Code :
{
"result" : 2000
}
7.4.8. Firmware Update (Chunk-based)¶
Chunk 기반으로 차량용 OBD의 펌웨어 업데이트를 위한 RPC 메시지를 명세합니다.
7.4.8.1. Request¶
Key | Type | M/O | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
method | String | M | fwupchunk 로 명세 | ||||||||||||||||||||
params | String | M |
|
Example Code :
{
"method" : "fwupchunk",
"params" : {
"tsz" : 4932321,
"csz" : 10000,
"idx" : 13,
"pyl" : "83a27473cf0000015e82e9b55ba2747902a3706c64"
}
}
7.4.8.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.8.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
Example Code :
{
"result" : 2000
}
7.4.9. Blackbox Authentication RPC¶
블랙박스 인증을 위한 RPC 메시지입니다.
7.4.9.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | bbxauthReq |
params | String | M | N/A |
7.4.9.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.9.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
7.4.10. Blackbox Power Off RPC¶
원격으로 블랙박스를 종료하기 위한 메시지입니다.
7.4.10.1. Request¶
Key | Type | M/O | Description |
---|---|---|---|
method | String | M | bbxpwroffReq |
params | String | M | N/A |
7.4.10.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.10.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
7.4.11. Blackbox Remote Setting RPC¶
원격으로 블랙박스를 설정하기 위한 메시지입니다.
7.4.11.1. Request¶
Key | Type | M/O | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
method | String | M | bbxsettingReq |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
params | object | M |
|
7.4.11.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.11.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
7.4.12. Blackbox Image Capture RPC¶
원격으로 블랙박스 이미지 캡쳐를 요청하는 메시지입니다.
7.4.12.1. Request¶
Key | Type | M/O | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
method | String | M | bbxcapimgReq |
||||||||
params | String | M |
|
7.4.12.2. Response¶
단말의 RPC 수신 여부를 Common Response Code 에 따라 명세 합니다.
7.4.12.3. Result¶
Key | Type | M/O | Description |
---|---|---|---|
result | Int | M | resultCode 에 정의된 제어 결과 추가 |
addInfo | String | O | N/A |
7.4.13. Common Response Code for RPC Result¶
본 코드는 RPC를 수신한 단말이 수신 정상 여부 또는 제어에 대한 결과를 플랫폼 및 Application 에 전달하기 위한 값을 정의합니다.
정의되지 않은 코드 이외에 Application을 위해 필요한 코드는 Application 시나리오에 따라 추가 가능하나 아래 Code Class
의 범위를 따라야 합니다.
7.4.13.1. Code Class¶
Status Class | Code | Description |
---|---|---|
Success | 2XXX | RPC 결과가 정상적으로 동작하는 경우 |
Sensor Error | 4XXX | RPC 결과를 수신한 단말이 비정상적으로 동작한 경우 |
Platform Error | 5XXX | RPC 요청에 대해서 플랫폼이 비정상적으로 동작한 경우 |
7.4.13.2. Successful Response Class¶
Code | Description |
---|---|
2000 | RPC 정상적 수행 |
2001 | RPC 메시지 정상적으로 수신 |
7.4.13.3. Sensor Error Response Class¶
Code | Description |
---|---|
4000 | 디바이스가 수행할 수 없는 RPC 메시지 수신 |
4001 | 잘못된 RPC 파라미터 수신 |
4002 | 접근 불가 |
4003 | 동일한 RPC 중복 수신 |