跳到主要内容

与 DJI 上云 API 的兼容性对照

说明​

本页对照 DJI 上云 API,说明 Autel 上云 API 的兼容程度,供已对接 DJI 上云 API 的平台评估迁移成本。

对照分四类:完全兼容(可直接复用)、字段差异(同名但语义或格式不同,需适配)、Autel 独有(DJI 无对应能力)、不支持(DJI 有、Autel 暂无)。

已对接 DJI 的平台请重点阅读第二类:这些接口同名但语义不同,按 DJI 逻辑直接复用不会报错,而是静默出错。

一、完全兼容​

项目说明
Topic 体系与方向osd / state / services / events / requests / status / property set / drc 共 14 个 Topic,方向与 DJI 一致
公共字段tid、bid、timestamp、gateway、data、method
交互模式services / events / requests / property/set / drc 五类
接口命名绝大多数 method 名与 DJI 一致(live_start_push、flighttask_prepare、drc_mode_enter、fly_to_point、storage_config_get 等)

二、字段差异(同名但语义或格式不同)​

协议框架层​

项目DJIAutel影响
update_topo 设备标识含 domain、type、sub_type设备管理页含 domain;Topic 定义页示例仅 type、sub_type缺 domain 时无法区分部分设备
物模型版本字段thing_version(text,如 1.1.2)Topic 定义页为 version(int),设备管理页为 thing_version按 DJI 解析取不到版本
property/set 用途只设置属性表中 accessMode=rw 的属性另承载动作类指令与属性表外字段无法用属性表做校验
accessModer / rw另有 w(只写、不上报)设为 w 的属性读不回
字段命名统一 snake_caseset_nest_position 用 backupLat/backupLon/backupAlt风格混用

分模块​

模块项目DJIAutel
直播url_type0 Agora / 1 RTMP / 2 RTSP / 3 GB28181 / 4 WHIP另有 101(4G_RTMP)
直播video_typenormal / wide / zoom / ir另有 thermal、NightVision
直播live_stop_pushvideo_id 必填video_id 为空时停止全部推流
媒体file_upload_callback.result非 0 表示失败当前固定为 0
媒体ext.event_id事件标识当前拼写为 even_id
媒体create_timeISO 8601约束声明 ISO 8601,示例为 YYYY-MM-DD HH:mm:ss
媒体storage_config_get.providerali / aws / minio10 个取值,含互为同义的值
航线航线文件KMZ(WPML)示例后缀为 .aut,与 WPML 的兼容程度见该模块说明
航线break_point.progressfloat,0–1.0int,0–100(量纲相差 100 倍,断点续飞会算错位置)
航线barrier_switch_state无Nest2 为固定语义:0=关闭避障,1=打开避障
航线flighttask_progress.ext含 wayline_mission_state、track_id、break_reason、attitude_head缺 wayline_mission_state、break_reason、attitude_head 三项(track_id 已支持)
航线flight_task_poilat/lon 为浮点角度lat/lon/alt 为整数:纬度、经度 ×1E7,高度单位 mm
负载同名 methodcamera_focus_mode_set、camera_screen_split、camera_exposure_set、ir_metering_*、hsi_info_push、joystick_invalid_notify、gimbal_reset参数结构或枚举与 DJI 不同
负载payload_index全部负载指令均带部分 camera_* method 缺该参数

三、Autel 独有​

以下能力 DJI 上云 API 无直接对应,已对接 DJI 的平台可直接使用:

  • AI 目标识别:机载识别接口(含跟踪、AI 安防、区域搜索、自动变焦),结果经视频流 SEI 输出
  • 媒体扩展:file_upload_status、file_delete、file_reupload、file_cancel
  • 航线扩展:flighttask_stop、flighttask_progress_get、return_specific_home
  • 负载扩展:抛投器、喊话器、Tracer、PSDK 探照灯等
  • 自定义飞行区:Nest2 机巢支持
  • UOM 实名状态:可上报
  • 基站上云:龙鱼基站接入

四、不支持​

项目说明
条件任务task_type 仅 0 立即 / 1 定时,无“2 条件”
simulate_mission无任务模拟器
任务就绪与返航信息无 flighttask_ready、return_home_info、flight_setup_exception_notify、device_exit_homing_notify
DRC 高频 OSD 与链路状态无 drc_status_notify(osd_info_push 已支持)
远程解禁无
AirSense无
flighttask_progress.status无 sent、rejected、timeout(Autel 另有 pending、return)

五、能力矩阵​

能力DJIAutel
航线任务支持(含条件任务、模拟器)支持(不含条件任务与模拟器)
自定义飞行区支持(GeoJSON)支持(fence.yaml)
远程解禁支持不支持
AirSense支持不支持
UOM 实名状态—支持
强制降落等 DRC 指令支持部分未覆盖
机载 AI 识别无支持

六、迁移提示​

  1. 先核对第二类字段差异:同名不同义的接口按 DJI 逻辑复用会静默出错,建议逐项比对后再上线。
  2. payload_index 建议尽早补齐:Autel 部分负载指令当前不带该参数,单负载可用;接入多负载前需确认。
  3. 断点续飞的量纲:break_point.progress 与 DJI 量纲不同,迁移时须换算。
  4. 属性表校验:Autel 的 property/set 除属性外还承载动作类指令,不能完全依赖属性表做校验。