00.properties

设备属性列表

  • pushMode:

    • 0:设备推送定频数据,设备将以 0.5HZ 的频率定时上报 (Topic:thing/product/{device_sn}/osd)

    • 1:设备推送状态数据,设备在状态变化时上报(Topic:thing/product/{device_sn}/state)

  • accessMode:

    • r:属性只读

    • rw:属性可读写 (Topic:thing/product/{gateway_sn}/property/set)

Column
Name
Type
constraint
Description
accessMode
pushMode

silent_mode

机场静音模式

enum_int

{"0":"非静音模式","1":"静音模式"}

开启静音模式,意味着:1. 风扇转速降低、空调制冷性能下降、炎热天气下作业间隔变长。2. 蜂鸣器声音将关闭,开关舱盖时请注意周围安全。3. 机场待机状态的白色指示灯关闭,其他运行状态的指示灯正常。

rw

1

user_experience_improvement

用户体验改善计划

enum_int

{"0":"初始状态","1":"拒绝加入用户体验改善计划","2":"同意加入用户体验改善计划"}

rw

1

dongle_infos

4G Dongle信息

array

{"size": -, "item_type": struct}

r

1

»imei

dongle imei

text

Dongle 的唯一识别标志

r

0

»dongle_type

Dongle 类型

enum_int

{"6":"旧 Dongle","10":"支持 eSIM 的新 Dongle"}

Dongle 类型

r

0

»eid

dongle eid

text

eSIM 的唯一识别标志,用于公众号查询套餐、购买服务

r

0

»esim_activate_state

eSIM 激活状态

enum_int

{"0":"未激活","1":"已激活"}

需要激活才能使用

r

0

»sim_card_state

SIM 卡状态

enum_int

{"0":"未插入","1":"已插入"}

Dongle 中实体 SIM 卡的插入状态

r

0

»sim_slot

SIM 卡槽使能状态

enum_int

{"0":"未知","1":"实体 SIM 卡","2":"eSIM"}

标识 Dongle 当前正在使用的 SIM 卡槽

r

0

»esim_infos

eSIM 信息

array

{"size": -, "item_type": struct}

r

0

»»telecom_operator

支持的运营商

enum_int

{"0":"未知","1":"移动","2":"联通","3":"电信"}

eSIM 支持的运营商

r

0

»»enabled

eSIM 使能状态

bool

{"false":"未使用","true":"使用中"}

同时刻只能有一个 eSIM 是使能的

r

0

»»iccid

sim iccid

text

SIM 卡的唯一识别标志,可以用于实体 SIM 卡的套餐购买

r

0

»sim_info

SIM 卡信息

struct

可插入 Dongle 的实体 SIM 卡信息

r

0

»»telecom_operator

支持的运营商

enum_int

{"0":"未知","1":"移动","2":"联通","3":"电信"}

SIM 卡支持的运营商

r

0

»»sim_type

SIM 卡类型

enum_int

{"0":"未知","1":"其他普通 SIM 卡","2":"三网卡"}

实体 SIM 卡的类型

r

0

»»iccid

sim iccid

text

SIM 卡的唯一识别标志,可以用于实体 SIM 卡的套餐购买

r

0

drone_battery_maintenance_info

飞行器电池保养信息

struct

0

»maintenance_state

保养状态

enum_int

{"0":"无需保养","1":"待保养","2":"正在保养"}

0

»maintenance_time_left

电池保养剩余时间

int

{"unit_name":"小时 / h"}

向下取整

0

»heat_state

电池加热保温状态

enum_int

{"0":"电池未开启加热或保温","1":"电池在加热中","2":"电池在保温中"}

当飞行器舱内关机时由本物模型上报机场连接飞行器的电池加热保温信息

0

»batteries

电池详细信息

array

{"size": -, "item_type": struct}

当飞行器舱内关机时由本物模型上报机场连接飞行器的电池信息,基本数据与飞行器物模型中电池信息基本保持一致

0

»»capacity_percent

电池剩余电量

int

{"max":100,"min":0}

保留小数点后一位,正常范0-100,设备端获取不到数据的异常值为 32767

0

»»index

电池序号

enum_int

{"0":"左电池","1":"右电池"}

0

»»voltage

电压

int

{"unit_name":"毫伏 / mV"}

正常范围0-28000mV,设备端获取不到数据的异常值为32767

0

»»temperature

温度

float

{"unit_name":"摄氏度 / °C"}

保留小数点后一位,正常范围-40-150°C,设备端获取不到数据的异常值为32767

0

air_conditioner

机场空调工作状态信息

struct

r

0

»air_conditioner_state

机场空调状态

enum_int

{"0":"空闲模式(无制冷、制热、除湿等)","1":"制冷模式","2":"制热模式","3":"除湿模式","4":"制冷退出模式","5":"制热退出模式","6":"除湿退出模式","7":"制冷准备模式","8":"制热准备模式","9":"除湿准备模式"}

机场空调工作状态信息,空调仅存在一种工作模式

0

»switch_time

剩余等待可切换时间

int

{"unit_name":"秒 / s"}

模式切换顺序为准备模式、工作(制冷、制热、除湿)模式、退出模式、空闲模式。本属性将上报,可以切换下一个模式指令还需要等待的时间。例如当前机场空调在进入制冷模式后,必须制冷5分钟后才可以退出制冷模式,本属性将上报还需要多久退出制冷模式,为0表示随时可退出

0

maintain_status

保养信息

struct

r

0

»maintain_status_array

保养信息数组

array

{"size": -, "item_type": struct}

0

»»state

保养状态

enum_int

{"0":"无保养","1":"有保养"}

0

»»last_maintain_type

上一次保养类型

enum_int

{"0":"无保养","17":"机场常规保养","18":"机场深度保养"}

0

»»last_maintain_time

上一次保养时间

date

{"unit_name":"秒 / s"}

0

»»last_maintain_work_sorties

上一次保养时作业架次

int

{"max":"2147483647","min":"0","step":"1"}

0

position_state

搜星状态

struct

r

0

»is_calibration

是否标定

enum_int

{"0":"未标定","1":"已标定"}

0

»is_fixed

是否收敛

enum_int

{"0":"未开始","1":"收敛中","2":"收敛成功","3":"收敛失败"}

0

»quality

搜星档位

enum_int

{"1":"1档","2":"2档","3":"3档","4":"4档","5":"5档","10":"RTK fixed"}

0

»gps_number

GPS 搜星数量

int

0

»rtk_number

RTK 搜星数量

int

0

emergency_stop_state

紧急停止按钮状态

enum_int

{"0":"关闭","1":"开启"}

r

0

drone_charge_state

飞行器充电状态

struct

飞行器充电状态

r

0

»capacity_percent

电量百分比

int

{"max":"100","min":"0"}

0

»state

充电状态

enum_int

{"0":"空闲","1":"充电中"}

0

backup_battery

机场备用电池信息

struct

r

0

»switch

备用电池开关

enum_int

{"0":"关闭","1":"开启"}

0

»voltage

备用电池电压

int

{"desc":"备用电池关闭时电压为0","max":"30000","min":"0","step":"1","unit_name":"毫伏 / mV"}

0

»temperature

备用电池温度

float

{"step":"0.1","unit_name":"摄氏度 / °C"}

保留小数点后一位

0

alarm_state

机场声光报警状态

enum_int

{"0":"关闭","1":"开启"}

r

0

battery_store_mode

电池运行模式

enum_int

{"1":"计划模式","2":"待命模式"}

计划模式适合规律作业场景,无任务时电池电量保持在55%~60%,电池寿命较长。待命模式适合应急作业场景,无任务时电池电量保持在90%~95%,电池寿命较短。

r

0

activation_time

机场激活时间(unix 时间戳)

int

{"unit_name":"秒 / s"}

r

0

height

椭球高度

double

{"unit_name":"米 / m"}

r

0

alternate_land_point

备降点

struct

r

0

»longitude

经度

float

{}

0

»latitude

纬度

float

{}

0

»safe_land_height

安全高度(备降转移高)

float

{}

0

»is_configured

是否设置备降点

enum_int

{"0":"未设置","1":"已设置"}

0

compatible_status

固件一致性

enum_int

{"0":"不需要一致性升级","1":"需要一致性升级"}

一致性升级:指飞行器某些模块的固件版本与系统匹配版本不一致,需要进行升级。常见的情况例如:飞行器与遥控器已经升级至最新版本,但替换电池时发现电池未升级,此时一致性升级将被提示。普通升级:开发者将飞行器所有模块升级至指定固件版本。

r

1

acc_time

机场累计运行时长

int

{"unit_name":"秒 / s"}

r

1

first_power_on

首次上电时间

int

{"unit_name":"毫秒 / ms"}

r

0

storage

存储容量

struct

r

0

»total

总容量

int

{"unit_name":"千字节 / KB"}

0

»used

已使用容量

int

{"unit_name":"千字节 / KB"}

0

working_current

工作电流

float

{"unit_name":"毫安 / mA"}

r

0

working_voltage

工作电压

int

{"unit_name":"毫伏 / mV"}

r

0

humidity

舱内湿度

float

{"max":"100","min":"0","step":"0.1","unit_name":"相对湿度 / %RH"}

r

0

temperature

舱内温度

float

{"unit_name":"摄氏度 / °C"}

r

0

environment_temperature

环境温度

float

{"unit_name":"摄氏度 / °C"}

r

0

wind_speed

风速

float

{"unit_name":"米每秒 / m/s"}

r

0

rainfall

降雨量

enum_int

{"0":"无雨","1":"小雨","2":"中雨","3":"大雨"}

r

0

live_capacity

网关设备直播能力

struct

r

1

»available_video_number

可选择推流的码流数量

int

0

»coexist_video_number_max

可同时推流的最大码流数量

int

0

»device_list

可选择的视频设备源

array

{"size": -, "item_type": struct}

可选择的视频设备源(设备层,比如飞行器)

0

»»sn

飞行器等视频源设备序列号(SN)

text

0

»»available_video_number

该序列号设备可以被选择推流的码流数

int

0

»»coexist_video_number_max

该序列号设备可以同时被推流的码流数

int

0

»»camera_list

该序列号设备上的相机列表

array

{"size": -, "item_type": struct}

0

»»»camera_index

相机索引

text

使用 {type-subtype-gimbalindex} 的格式

0

»»»available_video_number

该相机级别的视频源可以被选择推流的码流数

int

0

»»»coexist_video_number_max

该相机级别的视频源可以同时被推流的码流数

int

0

»»»video_list

该相机级别的视频源可以选择的码流列表

array

{"size": -, "item_type": struct}

0

»»»»video_index

该相机级别的视频源可以选择的码流索引

text

0

»»»»video_type

该相机级别的视频源可以选择的码流类型

text

0

»»»»switchable_video_types

该视频流支持切换的视频镜头类型

array

{"size": -, "item_type": text}

0

live_status

网关当前整体直播状态推送

array

{"size": -, "item_type": struct}

r

1

»video_id

直播码流标识符

text

某路在推视频码流的标识符,格式为 {sn}/{camera_index}/{video_index}。其中 {sn} 为视频源设备序列号。{camera_index} 为相机索引,使用 {type-subtype-gimbalindex} 的格式。{video_index} 为该相机级别的视频源可以选择的码流索引。

0

»video_type

视频类型

text

{"length":"24"}

表明视频镜头的类型,如normal/wide/zoom/infrared等

0

»video_quality

直播码流的质量

enum_int

{"0":"自动","1":"流畅","2":"高清","3":"超清"}

0

»status

直播状态

enum_int

{"0":"未直播","1":"在直播"}

0

»error_status

错误码

int

{"length":6}

0

wireless_link

图传链路

struct

r

0

»dongle_number

飞行器上 Dongle 数量

int

0

»4g_link_state

4G 链路连接状态

enum_int

{"0":"断开","1":"连接"}

0

»sdr_link_state

SDR 链路连接状态

enum_int

{"0":"断开","1":"连接"}

0

»link_workmode

机场的图传链路模式

enum_int

{"0":"SDR 模式","1":"4G 融合模式"}

0

»sdr_quality

SDR 信号质量

int

{"max":"5","min":"0","step":"1"}

0

»4g_quality

总体 4G 信号质量

int

{"max":"5","min":"0","step":"1"}

0

»4g_uav_quality

天端 4G 信号质量

int

{"max":"5","min":"0","step":"1"}

飞行器端与 4G 服务器之间的信号质量

0

»4g_gnd_quality

地端 4G 信号质量

int

{"max":"5","min":"0","step":"1"}

地面端(如遥控器、DJI Dock等)与 4G 服务器之间的信号质量

0

»sdr_freq_band

SDR 频段

float

0

»4g_freq_band

4G 频段

float

0

media_file_detail

媒体文件上传细节

struct

r

0

»remain_upload

待上传数量

int

0

job_number

机场累计作业次数

int

{"unit_name":"次 / count"}

r

0

drone_in_dock

飞行器是否在舱

enum_int

{"0":"舱外","1":"舱内"}

r

0

network_state

网络状态

struct

r

0

»type

网络类型

enum_int

{"1":"4G","2":"以太网"}

0

»quality

网络质量

enum_int

{"0":"无信号","1":"差","2":"较差","3":"一般","4":"较好","5":"好"}

0

»rate

网络速率

float

{"unit_name":"千字节每秒 / KB/s"}

0

supplement_light_state

补光灯状态

enum_int

{"0":"关闭","1":"打开"}

r

0

cover_state

舱盖状态

enum_int

{"0":"关闭","1":"打开","2":"半开","3":"舱盖状态异常"}

r

0

sub_device

子设备状态

struct

r

0

»device_sn

子设备序列号(SN)

text

0

»product_type

子设备枚举值

text

格式为 {domain-type-subtype}

0

»device_online_status

机场停机坪上的飞行器开机状态

enum_int

{"0":"关机","1":"开机"}

0

»device_paired

机场停机坪上的飞行器是否与机场对频

enum_int

{"0":"未对频","1":"已对频"}

0

flighttask_step_code

机场任务状态

enum_int

{"0":"作业准备中","1":"飞行作业中","2":"作业后状态恢复","3":"自定义飞行区更新中","4":"地形障碍物更新中","5":"任务空闲","255":"飞行器异常","256":"未知状态"}

r

0

mode_code

机场状态

enum_int

{"0":"空闲中","1":"现场调试","2":"远程调试","3":"固件升级中","4":"作业中"}

r

0

firmware_upgrade_status

固件升级状态

enum_int

{"0":"未升级","1":"升级中"}

r

1

firmware_version

固件版本

text

{"length":"64"}

r

1

latitude

纬度

double

{"max":"90","min":"-90","step":"0.01"}

r

0

longitude

经度

double

{"max":"180","min":"-180","step":"0.01"}

网关设备的经度

r

0

设备属性推送

Topic: thing/product/{device_sn}/state 状态数据:设备在状态变化时上报

Topic: thing/product/{device_sn}/osd 定频数据:设备将以 0.5HZ 的频率定时上报

Direction: up

API 说明: 负载属性上报是指飞行器挂载的负载的属性上报,如相机的属性上报。一个负载由负载索引唯一确定(负载索引:产品类型-子类型-挂载位置 {type-subtype-gimbalIndex}),type、subtype。数值请参考:产品支持,gimbalindex的对应关系请查看 航线文件格式中的wpml:payloadPositionIndex。 当前会涉及负载属性上报的协议有 网关设备的设备属性推送以及直播功能的直播能力更新。 对于设备属性推送,负载属性上报的内容为相机本身的信息,如 云台俯仰、偏航、横滚的角度等。对于直播能力更新,负载属性上报的内容更多为相机在直播时的能力,如最大可同时推流的码流数量。负载属性具体结构体请参考下文的example。需要注意遥控器的设备属性在一条消息体中上报,而机场的设备属性推送是分多条推送的。

Data:

Column
Name
Type
constraint
Description

data

消息内容

text

{}

内容可参考设备的设备属性

»camera_index

type-subtype-gimbalIndex

text

{}

gimbalIndex为相机位置,type、sub_type。参考:产品支持

Example:

Topic: thing/product/{dock_sn}/state

Topic: thing/product/{dock_sn}/osd

{
    "tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "timestamp": 1667220873846,
    "data": {
        "job_number": 492,
        "acc_time": 1859010,
        "activation_time": 0,
        "maintain_status": {
            "maintain_status_array": [
                {
                    "state": 0,
                    "last_maintain_type": 17,
                    "last_maintain_time": 0,
                    "last_maintain_work_sorties": 0
                }
            ]
        },
        "working_voltage": 25440,
        "working_current": 1120,
        "backup_battery": {
            "voltage": 26631,
            "temperature": 27.9,
            "switch": 1
        },
        "drone_battery_maintenance_info": {
            "maintenance_state": 0,
            "maintenance_time_left": 0
        }
    },
    "gateway": "dock_sn"
} 
{
    "bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "data": {
        "flighttask_step_code": 255,
        "media_file_detail": {
            "remain_upload": 0
        },
        "wireless_link": {
            "4g_freq_band": 2.4,
            "4g_gnd_quality": 0,
            "4g_link_state": 0,
            "4g_quality": 0,
            "4g_uav_quality": 0,
            "dongle_number": 0,
            "link_workmode": 0,
            "sdr_freq_band": 2.4,
            "sdr_link_state": 0,
            "sdr_quality": 0
        }
    },
    "tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "timestamp": 1667220881576,
    "gateway": "dock_sn"
}
{
    "tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "timestamp": 1667220916697,
    "data": {
        "network_state": {
            "type": 2,
            "quality": 0,
            "rate": 5.0970001220703125
        },
        "drone_charge_state": {
            "state": 0,
            "capacity_percent": 100
        },
        "drone_in_dock": 1,
        "rainfall": 0,
        "wind_speed": 0,
        "environment_temperature": 24,
        "temperature": 24.9,
        "humidity": 62,
        "latitude": 22.907809968,
        "longitude": 113.703482143,
        "height": 34.174125671386719,
        "alternate_land_point": {
            "latitude": 22.907898319908661,
            "longitude": 113.70347329676635,
            "safe_land_height": 0,
            "is_configured": 1
        },
        "first_power_on": 1631945855969,
        "position_state": {
            "is_calibration": 1,
            "is_fixed": 2,
            "quality": 5,
            "gps_number": 6,
            "rtk_number": 25
        },
        "storage": {
            "total": 82045336,
            "used": 51772
        },
        "mode_code": 1,
        "cover_state": 0,
        "supplement_light_state": 0,
        "emergency_stop_state": 0,
        "battery_store_mode": 1,
        "alarm_state": 0,
        "putter_state": 0,
        "sub_device": {
            "device_sn": "1581F5BKD225D00BP891",
            "device_model_key": "0-67-0",
            "device_online_status": 0,
            "device_paired": 1
        }
    },
    "gateway": "dock_sn"
}

Topic: thing/product/{aircraft_sn}/state

Topic: thing/product/{aircraft_sn}/osd

{
    "bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "data": {
        "52-0-0": {
            "measure_target_altitude": 0,
            "measure_target_distance": 591.70001220703125,
            "measure_target_error_state": 1,
            "measure_target_latitude": 0,
            "measure_target_longitude": 0,
            "payload_index": "52-0-0",
            "version": 1
        },
        "activation_time": 1667935211,
        "attitude_head": 41.7,
        "attitude_pitch": 2.7,
        "attitude_roll": 0,
        "battery": {
            "batteries": [
                {
                    "capacity_percent": 95,
                    "firmware_version": "02.00.20.44",
                    "high_voltage_storage_days": 16,
                    "index": 0,
                    "loop_times": 137,
                    "sn": "4BUPJ99DAD009W",
                    "sub_type": 0,
                    "temperature": 33.3,
                    "type": 0,
                    "voltage": 24303
                },
                {
                    "capacity_percent": 85,
                    "firmware_version": "02.00.20.44",
                    "high_voltage_storage_days": 5,
                    "index": 1,
                    "loop_times": 82,
                    "sn": "4BUPJ9EDAD01CE",
                    "sub_type": 0,
                    "temperature": 32,
                    "type": 0,
                    "voltage": 24311
                }
            ],
            "capacity_percent": 90,
            "landing_power": 0,
            "remain_flight_time": 0,
            "return_home_power": 0
        },
        "distance_limit_status": {
            "distance_limit": 5000,
            "state": 0
        },
        "elevation": 0,
        "firmware_version": "05.01.0214",
        "gear": 1,
        "height": 38.417465209960938,
        "height_limit": 120,
        "home_distance": 0,
        "horizontal_speed": 0,
        "latitude": 0,
        "longitude": 0,
        "maintain_status": {
            "maintain_status_array": [
                {
                    "last_maintain_flight_time": 0,
                    "last_maintain_time": 0,
                    "last_maintain_type": 1,
                    "state": 0
                },
                {
                    "last_maintain_flight_time": 0,
                    "last_maintain_time": 0,
                    "last_maintain_type": 2,
                    "state": 0
                },
                {
                    "last_maintain_flight_time": 0,
                    "last_maintain_time": 0,
                    "last_maintain_type": 3,
                    "state": 0
                }
            ]
        },
        "mode_code": 0,
        "night_lights_state": 0,
        "obstacle_avoidance": {
            "downside": 1,
            "horizon": 1,
            "upside": 1
        },
        "position_state": {
            "gps_number": 0,
            "is_fixed": 0,
            "quality": 0,
            "rtk_number": 0
        },
        "storage": {
            "total": 0,
            "used": 0
        },
        "total_flight_distance": 0,
        "total_flight_sorties": 0,
        "total_flight_time": 0,
        "track_id": "",
        "vertical_speed": 0,
        "wind_direction": 0,
        "wind_speed": 0
    },
    "tid": "2d2040eb-23b0-43dc-b7ac-64838276c4ac",
    "timestamp": 1670422793916,
    "gateway": "dock_sn"
}

设备属性设置

Topic: thing/product/{gateway_sn}/property/set

Direction: down

Data:

Column
Name
Type
constraint
Description

data

消息内容

text

{}

内容可参考设备的设备属性

Example:

{
    "bid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "data":{
        "distance_limit_status": {"state": 1}
    },
    "tid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "timestamp":1643268212187
}

Topic: thing/product/{gateway_sn}/property/set_reply

Direction: up

Data:

Column
Name
Type
constraint
Description

data

消息内容

text

{}

内容可参考设备的设备属性

Example:

{
    "bid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "data":{
        "distance_limit_status": {
            "state": {
                "result": 0  // 0: 成功,1:失败,2:超时,0x123456 具体的错误原因码
                }
       }
    },
    "tid":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "timestamp":1643268212187
}

Last updated