Device Procedures¶
본 장에서는 Smart[Fleet]에 연결하고자 하는 단말이 수행하는 절차에 대해서 기술합니다. 기술 된 절차를 좀 더 이해하기 쉽도록 Smart[Fleet] Device Simulator 를 참고하세요.
Device Connection¶
Smart[Fleet]은 단말 연동을 위해서 MQTT 프로토콜을 사용합니다. 단말이 MQTT 프로토콜을 통해서 Smart[Fleet] 플랫폼과 연동하기 위해서는 다음의 설정 값을 사용합니다.
| URL | smartfleet.sktelecom.com
Smart[Fleet] 개발 서버 |
| Port |
|
| username | 할당 받은 Access Token (20자리) 값 |
| password | N/A |
| cleanSession | True |
| version | 3.1.1 |
단말은 정상적으로 접속을 한 후에 RPC 요청을 수신하기 위해서 아래 Topic을 Subscribe 한다.
| Topic | /v1/sensors/me/rpc/request/+ |
Device Registration¶
본 프로시저는 단말을 플랫폼에 등록하고, 단말의 타입에 따라 액티베이션 및 센서가 부착된 차량 정보와 매핑하는 일반적인 등록 절차를 기술한다.
Activation이 필요한 단말의 등록 절차¶
본 프로시저는 단말 동작 전 단말의 활성화(Activation)가 요구되는 단말에 적용되는 등록 절차를 기술한다.
| 순번 | 설명 | ||
|---|---|---|---|
| Prestep | 사전에 각 단말은 SKT에서 제공한 Access Token을 보유하고 있어야 하며, Application (고객사)에서도 동일한 Access Token을 보유하고 있어야 함 | ||
| 1 | Application Owner가 포털이나 HTTP API를 통하여 플랫폼에 단말의 정보를 등록하는 요청함 | ||
| 2 | 플랫폼은 1번 과정에서 요청받은 단말의 정보를 기반으로 단말의 정보를 등록 상기 등록과정에서 오류가 발생한 경우에는 수신 받은 인터페이스에 따라 회신 | ||
| 3 | 단말이 플랫폼에 연결을 시도한다. (Device Connection 참조) | ||
| 4 | RPC를 수신하기 위한 RPC Topic에 Subscribe를 한다. (Device Connection 참조) | ||
| 5 | 차량과 등록된 센서 간 매핑 요청 | ||
| 6 |
|
||
| 7 |
|
||
| 8 | 단말이 7번 단계의 Activation 요청을 수신 | ||
| 9 |
|
||
| 10 | 플랫폼이 고객사(포털 또는 HTTP Response)에게 9번 과정의 단말 RPC 메시지 수신 상태를 전달한다. (매핑과 액티베이션은 추후에 진행되는 것을 명시한다) | ||
| 11 |
|
||
| 12 | 플랫폼은 수신한 Activation 결과를 저장하고, 정상적으로 Activation이 된 경우 단말과 차량을 매핑한다. | ||
| 13 | 플랫폼은 12번의 결과를 고객사에 전달한다. |
Activation이 필요하지 않는 단말의 등록 절차¶
본 프로시저는 단말 동작 전 단말의 활성화(Activation)가 요구되지 않는 단말에 적용되는 등록 절차를 기술한다.
| 순번 | 설명 |
|---|---|
| Prestep | 사전에 각 단말은 SKT에서 제공한 Access Token을 보유하고 있어야 하며, Application (고객사)에서도 동일한 Access Token을 보유하고 있어야 함 |
| 1 | Application Owner가 포털이나 HTTP API를 통하여 플랫폼에 단말의 정보를 등록하는 요청함 |
| 2 | 플랫폼은 1번 과정에서 요청받은 단말의 정보를 기반으로 단말의 정보를 등록 상기 등록과정에서 오류가 발생한 경우에는 수신 받은 인터페이스에 따라 회신 |
| 3 | 단말이 플랫폼에 연결을 시도한다. (Device Connection 참조) |
| 4 | RPC를 수신하기 위한 PRC Topic에 Subscribe를 한다. (Device Connection 참조) |
| 5 | 차량과 등록된 센서 간 매핑 요청 |
| 6 | 플랫폼에서 5번의 요청에 따라 요청 받은 단말이 Activation이 필요한지 여부를 판단한다. |
| 7 | 5번 과정의 매핑 요청에 따라 센서 엔티티에 센서가 연결된 차량의 식별자를 기입하여 논리적인 링크를 구성한다. |
| 8 | 플랫폼이 고객사(포털 또는 HTTP Response)에게 센서와 차량 매핑 결과를 전달한다. |
Device RPC¶
본 프로시저는 어플리케이션에서 요청된 단말 제어 절차를 기술한다.
| 순번 | 설명 | ||||
|---|---|---|---|---|---|
| Prestep | 별도 기술된 Device Registration(activation-procedure) 절차를 거친다. 서비스 등록 단계에서 RPC 결과 및 단말 Attribute 변경 정보를 수신하기 위한 HTTP Server 주소를 기입 받는다. | ||||
| 1 | 고객사의 Application에서 단말 제어 요청이 발생한다. | ||||
| 2 |
|
||||
| 3 |
|
||||
| 4 |
|
||||
| 5 | 플랫폼은 RPC 요청 수신 결과 메시지를 포워딩하여 Application에 상기 2번의 Response 형태로 응답한다. | ||||
| 6 |
|
||||
| 7 | 플랫폼은 상기 6번 과정의 Attribute가 Update 된 경우에 해당 결과를 그대로 고객사의 application에 푸시 형태로 제공한다. 이때, 주소는 Prestep에서 정의한 HTTP Server 주소를 활용한다. |
OBD Device Procedures¶
본 프로시저는 OBD 단말이 데이터를 전송하는 프로시저를 명세합니다.
OBD Trip Data¶
본 프로시저는 OBD 센서에서 발생한 운행 기록을 위한 정보를 업로드 하는 절차를 기술한다.
| 순번 | 설명 | ||||
|---|---|---|---|---|---|
| Prestep | 별도 기술된 Device Registration(activation-procedure) 절차를 정상적으로 수행한다. | ||||
| 1 |
|
||||
| 2 |
|
OBD Event Data¶
본 프로시저는 OBD 센서에서 발생한 운행 이벤트 정보를 업로드 하는 절차를 기술한다.
| 순번 | 설명 | ||||
|---|---|---|---|---|---|
| Prestep | 별도 기술된 Device Registration(activation-procedure) 절차를 정상적으로 수행한다. | ||||
| 1 | 차량에서 플랫폼에 전달할 이벤트가 발생한다. | ||||
| 2 |
|