On-Premises V2.0

2026-09-20

API-Einführung

On-Premises OpenAPI V2.0 ist eine offene Plattform basierend auf RESTful-Spezifikationen und wurde entwickelt, um Entwicklern die Datenanbindung und Geschäftsintegration zwischen privaten Cloud-Plattformen von Drittanbietern und der DJI FlightHub 2 On-Premises zu ermöglichen.

Über OpenAPI V2.0 können Entwickler Systemintegrationen rund um zentrale Module wie Geräteverwaltung, Flugaufgabenverwaltung und Datenverwaltung (Medien-, Modell- und Kartendaten) realisieren und so Anwendungsfälle wie Datenanbindung, Geräteverwaltung, Aufgabenplanung und leichte Echtzeitsteuerung auf Basis von FlightHub 2 ermöglichen.

Im Vergleich zu V1.0 verfolgt V2.0 als zentrales Ziel geschlossene Szenarien für die Sekundärentwicklung. Auf Grundlage der bestehenden Funktionen vervollständigt V2.0 systematisch die APIs zentraler Module wie Geräteverwaltung, Flugaufgabenverwaltung und Datenverwaltung (Medien, Modell und Karte) und bringt die Gesamtzahl der Schnittstellen auf über 300 (V1.0 hatte 67).

Gleichzeitig wurde in dieser Version das Schnittstellensystem optimiert, indem die Dokumentation für Public Cloud und On-Premises voneinander getrennt wurde. Dadurch wird die Kategorisierung der Schnittstellen klarer, was Entwicklern ein schnelleres Verständnis und eine einfachere Integration ermöglicht und gleichzeitig eine agilere Iterationsweise von OpenAPI in der Zukunft erleichtert.

Funktionsliste

FunktionBeschreibung
Organisations- und ProjektverwaltungBietet Abfrage- und Verwaltungsfunktionen für Projekte, Mitglieder und Rollenberechtigungen.
GeräteverwaltungUnterstützt die Abfrage und Verwaltung von Geräten, einschließlich Geräteliste, Echtzeitstatus, Thing-Model-Shadow, HMS-Gesundheitsereignisse sowie Netzwerk- und RTK-Konfiguration – zum Aufbau von Geräteverwaltungs- und Konfigurationssystemen.
FlugaufgabenUnterstützt das Erstellen von Flugaufgaben, das Abfragen von Aufgabenlisten und Ausführungsdetails, Flugaufzeichnungen, AI-Warnungen und mehr – zum Aufbau von Flugaufgaben-Verwaltungssystemen.
EchtzeitsteuerungUnterstützt das Abfragen und Erlangen der Cloud-Steuerungsberechtigung, das Senden von Point-to-Point-Flugbefehlen, POI-Umkreisflug, Kamerasteuerungsbefehlen und mehr – ermöglicht eine leichte Echtzeitsteuerung auf Geschäftsebene.
LivestreamUnterstützt die Verwaltung von Livestream und Bypass-Streaming, das Umschalten von Objektiven und Qualitätsstufen und mehr – zum Aufbau von Livestream-Verwaltungssystemen.
MedienverwaltungUnterstützt das Abfragen, Verwalten und Herunterladen von Mediendateien – zum Aufbau von Medienverwaltungssystemen.
ModellverwaltungUnterstützt das Starten von Rekonstruktionsaufgaben und die Verwaltung von Modell-Assets – zum Aufbau von Modellverwaltungssystemen.
FlugroutenverwaltungUnterstützt das Abrufen von Flugroutenlisten, die Verwaltung von Flugroutendateien und mehr – zum Aufbau von Flugroutendatei-Verwaltungssystemen.
KartendatenverwaltungUnterstützt Annotationsverwaltung, Verwaltung benutzerdefinierter Flugbereiche, Abfrage von Signal-Heatmaps und mehr.
VeränderungserkennungUnterstützt das Starten von Veränderungsanalyseaufgaben und das Abfragen von Erkennungsergebnissen – anwendbar auf Szenarien wie Baustellenüberwachung und Inspektionsvergleich.
Offene ModellierungUnterstützt das Starten von Modellierungsaufgaben mit Mediendaten aus Plattformen von Drittanbietern.

Schnittstellendokumentation

  • Die Schnittstellendokumentation umfasst die OpenAPI-Funktionsliste, Tutorials, Schnittstellenliste und Schnittstellenbeschreibungen. Siehe: OpenAPI Schnittstellendokumentation.

Beispielquellcode

Nachdem Sie den Beispielquellcode bereitgestellt und erfolgreich ausgeführt haben, können Sie die auf OpenAPI V2.0 basierende Funktionsoberfläche erleben. Anhand des Beispielquellcodes können Sie sich außerdem schnell mit der Anbindung und Verwendung der OpenAPI vertraut machen und so die Entwicklung und Integration beschleunigen.

Klicken Sie auf Beispielquellcode, um den Quellcode und die Anbindungsanleitung zu erhalten.

Produktarchitektur

Schnellstart

Umgebungseinrichtung (spezifisch für die FlightHub 2 On-Premises Version)

Beachten Sie das Bereitstellungshandbuch der DJI FlightHub 2 On-Premises Version, um die lokale Version von FlightHub 2 bereitzustellen.

Authentifizierung und Autorisierung

Beziehen Sie sich auf das Dokument Tutorial zur Authentifizierung und Autorisierung, um die Prinzipien der OpenAPI-Authentifizierung und -Autorisierung zu verstehen und x-user-token und X-Project-Uuid zu erhalten. Diese beiden Parameter müssen im Header-Feld der meisten Schnittstellen übergeben werden, um die Sicherheit von OpenAPI zu gewährleisten und die Zugriffskontrolle auf FlightHub 2 zu realisieren.

Beispielcode

1. Status des FlightHub 2-Echtzeitsteuerungsdienstes abfragen

Nachdem die FlightHub 2 On-Premises Version erfolgreich bereitgestellt wurde, rufen Sie die Schnittstelle auf, um den Status des Echtzeitsteuerungsdienstes abzufragen: FlightHub 2-Systemstatus abfragen

```http
GET /openapi/v2.0/drc/health HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Project-Uuid: xxxxxxxxxx
x-user-token: xxxxxxxx 

Ein Rückgabewert von 0 zeigt an, dass der FlightHub 2-Echtzeitsteuerungsdienst normal funktioniert:

```http 
{
  "code": 0,
  "message": "OK",
  "data": null
}

2. Liste der Projekte unter der Organisation abrufen

Erstellen Sie eine Organisation, ein Projekt und binden Sie Geräte in FlightHub 2 ein. Beziehen Sie sich auf den Abschnitt Plattformgrundlagen > Organisationsverwaltung dieses Handbuchs zur Erstellung von Organisationen und Projekten in FlightHub 2, und rufen Sie anschließend die Schnittstelle Liste der Projekte unter der Organisation abrufen auf, um die Liste der erstellten Projekte zu erhalten.

GET /openapi/v2.0/manage/api/v1/organizations/{uuid}/projects?usage=complete&sort_column=create_time&sort_type=desc&page=1&page_size=20 HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Project-Uuid: xxxxxxxxxx
x-user-token: xxxxxxxx 

Die Liste der erstellten Projekte wird zurückgegeben:

```http 
{
  "code": 0,
  "message": "OK",
  "data": {
    "list": [
      {
        "name": "c2c_test",
        "introduction": "a",
        "uuid": "b2c3d4e5-6789-0123-bcde-f12345678901",
        "project_id": "PRJ202401001",
        "org_uuid": "a1b2c3d4-5678-9012-abcd-ef1234567890",
        "status": "active",
        "c2c_enable": true,
        "dock_rotation_disabled": false,
        "c2c_task_enable": true,
        "created_at": 1700000000,
        "updated_at": 1700100000
      }
    ]
  }
}

3. Livestream starten

Beziehen Sie sich auf das Kapitel Geräteverwaltung dieses Handbuchs zur Gerätebindung in FlightHub 2, beziehen Sie sich anschließend auf das Livestream-Verwaltungs-Tutorial, um das Streaming zu starten.

```http 
POST /openapi/v2.0/drc/api/v2/projects/{proj_uuid}/live-channels/stream/start HTTP/1.1
Host: 127.0.0.1:30812
X-Project-Uuid: xxxxxxxxxx
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
Content-Type: application/json
x-user-token:  xxxxxxxx 
Content-Length: 130

{
    "sn": "1ZNBH1Dxxxxxxx",
    "camera": "165-0-7",
    "video": "normal-0",
    "gateway_sn": "7CTDM3Dxxxxxxx",
    "video_quality": 0
}

Ein Rückgabewert von 0 zeigt an, dass die Streaming-Aufgabe erfolgreich versendet wurde und das Gerät gemäß der Konfiguration mit dem Streamen an den Medienserver beginnt:

```c
{
  "code": 0,
  "message": "OK",
  "data": null
}
Last Updated: