Difference between revisions of "IoTGateway/CoAP-like"
From ESS-WIKI
(→Get Detail Info of Sensor) |
(→Get Sensor Properties) |
||
| Line 219: | Line 219: | ||
===Get Sensor Properties=== | ===Get Sensor Properties=== | ||
| + | '''Request''' | ||
| + | GET /sen/info?query=list&sid=3303 | ||
| + | Direction: GW -> SenHub | ||
| + | TP: GET | ||
| + | Type:0 | ||
| + | Code:1 | ||
| + | PAYLOAD: /sen/info?query=list&sid=3303 | ||
| + | |||
| + | '''Response''' | ||
| + | Direction: SenHub -> GW | ||
| + | TP: Content | ||
| + | Type:2 | ||
| + | Code:69 | ||
| + | PAYLOAD: </3303>;asm="r", rt="ucum.Cel", type="d", st="ipso", u="Cel" | ||
| + | |||
===Get Sensor Model=== | ===Get Sensor Model=== | ||
Revision as of 04:29, 11 March 2016
Contents
Advantech CoAP-like Packet Structure
Header Size: 8 Bytes
Payload Size: 0 ~ 70 (Max) Bytes
| Name | Size ( bits ) |
|---|---|
| Ver | 2 |
| Type (T) | 2 |
| TKL: Token Length | 4 |
| Code | 8 |
| Message ID | 16 |
| Length | 32 |
Type (T) : 2-bit unsigned integer Transaction Type field. Indicates if this message is
- Confirmable (0): Some messages require an acknowledgment
- Non-Confirmable (1): Some other messages do not require an acknowledgment
- Acknowledgment (2): An Acknowledgment message acknowledges that a specific Confirmable message (identified by its Transaction ID) arrived
- Reset (3): A Reset message indicates that a specific Confirmable message was received, but some context is missing to properly process it. This condition is usually caused when
- the receiving node has rebooted and has forgotten some state that would be required to interpret the message
Code : : 8-bit unsigned integer
Request
- GET(0.01): 1
- PUT(0.03): 3
Response
- Change(2.04): 68
- Content(2.05): 69
- Bad Request(4.00): 128
- Unauthorized(4.01): 129
- Not Found(4.04): 132
- Method Not Allowed(4.05): 133
- Not Implemented(5.01): 161
IPSO for CoAP-like
IPSO RESTful API Rule: /{Object ID}/{Object Instance}/{Resource ID}/
IPSO Smart Object ID
| Sensor | Object ID |
|---|---|
| Temperature | 3303 |
| Humidity | 3304 |
| Magnetic | 3314 |
| Accelerometer | 3313 |
| Light Sensor | 3301 |
| Digital Output | 3201 |
| Digital Input | 3200 |
| CO2 | 9001 |
| CO | 9002 |
| Ultrasonic | 9200 |
IPSO Smart Resource ID
| Resource | Object ID |
|---|---|
| DI Status | 5500 |
| DO Status | 5550 |
| Min Range Value | 5603 |
| Max Range Value | 5604 |
| Sensor Value | 5700 |
| Sensor Units | 5701 |
| X Value | 5702 |
| Y Value | 5703 |
| Z Value | 5704 |
| Compass Direction | 5705 |
CoAP-like Command
| URI Resources | Description |
|---|---|
| /dev/info | Information of Sensor Hub |
| /net/info | Information of Net Communication |
| /net/status | Status of Network |
| /sen/info | Information of Sensor |
| /sen/status | Status of Sensors |
| Commands (Key) | Value | Description | For URI Resources | Example |
|---|---|---|---|---|
| action | list | List detail information | /sen/info, /dev/info, /net/info | GET /sen/info?action=list |
| action | observe | Observe status | /sen/status, /net/status | GET /sen/status?action=observe&id=all |
| action | cancel | Cancel observe | /sen/status, /net/status | GET /sen/status?action=cancel&id=all |
| field | id | List all sensor id | /sen/info | GET /sen/info?action=list&field=id |
| field | health | Network health status | /net/status | GET /net/status?field=health |
| id | all | Get all sensor’s data | /sen/info, /sen/status | GET /sen/status?action=observe&id=all |
| id | 0,1,2,3... | Get one of sensor data | /sen/info, /sen/status | GET /sen/status?action=observe&id=0,1 |
CoAP-like Protocols
Get SenHub Info
Get SenHub Device info
Request GET /dev/info?action=list Direction: GW -> SenHub TP: GET Type:0 Code:1 PAYLOAD: /dev/info?action=list
Response Direction: SenHub-> GW TP : Content Type:2 Code:69 PAYLOAD: </dev>;n="Room1", mdl="WISE1020", sw="1.0.01", reset=0
Get SenHub Net info
Request GET /net/info?action=list Direction: GW -> SenHub TP: GET Type:0 Code:1 PAYLOAD: /net/info?action=list
Response Direction: SenHub -> GW TP : Content Type:2 Code:69 PAYLOAD: </net>;n="dust", sw="1.0.01"
Get Sensor Info
Get Sensor id List
Request GET /sen/info?action=list&field=id Direction: GW -> SenHub TP: GET Type:0 Code:1 PAYLOAD: /sen/info?action=list&field=id
Response Direction: SenHub -> GW TP : Content Type:2 Code:69 PAYLOAD: </sen>;0,1,2,3,4,5
Get Detail Info of Sensor
Request GET /sen/info?action=list&id=0 Direction: GW -> SenHub TP: GET Type:0 Code:1 PAYLOAD: /sen/info?action=list&id=0
Response Direction: SenHub -> GW TP: Content Type:2 Code:69 PAYLOAD: </0>;n="Room_Tempature", mdl="mp6050", sid="3303"
Get Sensor Properties
Request GET /sen/info?query=list&sid=3303 Direction: GW -> SenHub TP: GET Type:0 Code:1 PAYLOAD: /sen/info?query=list&sid=3303
Response Direction: SenHub -> GW TP: Content Type:2 Code:69 PAYLOAD: </3303>;asm="r", rt="ucum.Cel", type="d", st="ipso", u="Cel"