Topic: nodes/:id/status
Field | Type | Description |
---|---|---|
msg | string | Node Status Enum: online , offline , neterror |
status | object | |
status.lat | string | |
status.lng | string | |
status.alt | string |
Topic: nodes/:id/network
Field | Type | Description |
---|---|---|
delay | number | Network Delay [ms] |
loss | number | packet loss (0~100)% |
Topic: plans/:id/running
If This plan not running:
{}
If This plan running:
{
"files":{},
"extra":{},
"job":{
"job_id":1,
"files":{},
"extra":{}
}
}
Field | Type | Description |
---|---|---|
files |
map[string]string | key/blob_id |
extra |
map[string]string | key/value |
job |
Object | This plan run log |
job.job_id |
int64 | plan_id + job_id == job.id |
job.files |
map[string]string | Job key/blob_id |
job.extra |
map[string]string | Job key/value |
Topic: plans/:id/term
Any data, NOTE: not json, may be plain
Topic: plans/:id/notification
{"time":1565413755,"level":1,"msg":""}
Field | Type | Description |
---|---|---|
time | uint64 | unix timestamp length 10 |
level | uint | 0-7 levelEnum |
msg | string | message body |
levelEnum: 0-7
level | Name |
---|---|
0 | Emergency |
1 | Alert |
2 | Critical |
3 | Error |
4 | Warn |
5 | Notice |
6 | Info |
7 | Debug |
Reference: RFC5424
Topic: plans/:id/dialog
Field | Type | Description |
---|---|---|
name | string | Opt: A title |
message | string | Opt: A descriptive message |
level | string | Opt: levelEnum |
items | array | Opt: Items |
items.name | string | Name |
items.message | string | Opt: A descriptive message |
items.level | string | Opt: levelEnum |
buttons | array | Opt: Button Group |
buttons.name | string | Button name |
buttons.message | string | Send message payload |
buttons.level | string | Opt: levelEnum |
levelEnum : primary
, success
, info
, warning
, danger
Example 0: Clean Dialog
{}
Example 1: Check Form
{
"name": "Checker ~",
"message": "Not recommended",
"level": "warning",
"items": [
{"name": "Check", "message": "check check", "level": "unkonw"},
{"name": "Drone", "message": "ok", "level": "primary"},
{"name": "Depot", "message": "ok", "level": "success"},
{"name": "Weather: Wind speed", "message": "Strong wind", "level": "warning"},
{"name": "Weather: Rain forecast", "message": "It is raining", "level": "danger"}
],
"buttons": [
{"name": "Cancel", "message": "cancel", "level": "primary"},
{"name": "Confirm","message": "confirm", "level": "danger"}
]
}
Example 2: Ask Status
{
"name": "ARE YOU OK ?",
"buttons": [
{"name": "Fine, thank you.", "message": "fine", "level": "primary"},
{"name": "I feel bad.", "message": "bad", "level": "danger"}
]
}