Versione on-premises V2.0
Introduzione alle API
OpenAPI V2.0 On-Premises è una piattaforma aperta basata sulle specifiche RESTful, progettata per fornire agli sviluppatori l'interoperabilità dei dati e l'integrazione aziendale tra piattaforme cloud private di terze parti e la versione On-Premises di DJI FlightHub 2.
Tramite OpenAPI V2.0, gli sviluppatori possono creare integrazioni di sistema attorno a moduli chiave quali la gestione dei dispositivi, la gestione delle attività di volo e la gestione dei dati (dati multimediali, modelli e mappe) per alimentare casi d'uso come l'interoperabilità dei dati, la gestione dei dispositivi, la pianificazione delle attività e il controllo in tempo reale leggero sopra FlightHub 2.
Rispetto a V1.0, V2.0 ha come obiettivo principale gli scenari di sviluppo secondario a ciclo chiuso. Oltre alle funzionalità esistenti, completa sistematicamente le API per moduli chiave quali la gestione dei dispositivi, la gestione delle attività di volo e la gestione dei dati (multimediali, modelli e mappe), portando il numero totale di interfacce a più di 300 (V1.0 ne aveva 67).
Ristruttura inoltre il sistema delle interfacce separando la documentazione delle interfacce Public Cloud e On-Premises, rendendo la categorizzazione più chiara per un onboarding e un'integrazione più rapidi degli sviluppatori e consentendo futura iterazione più agile di OpenAPI.
Elenco delle funzionalità
| Funzionalità | Descrizione |
|---|---|
| Gestione di organizzazioni e progetti | Fornisce capacità di query e gestione per progetti, membri e autorizzazioni dei ruoli. |
| Gestione dei dispositivi | Supporta la query e la gestione dei dispositivi, inclusi elenco dei dispositivi, stato in tempo reale, shadow del thing model, eventi di integrità HMS, configurazione di rete e RTK, utilizzati per creare sistemi di gestione e configurazione dei dispositivi. |
| Attività di volo | Supporta la creazione di attività di volo, la query degli elenchi delle attività e dei dettagli di esecuzione, dei record di volo e degli allarmi AI, utilizzati per creare sistemi di gestione delle attività di volo. |
| Controllo in tempo reale | Supporta la query e l'acquisizione dell'autorità di controllo cloud, l'emissione di comandi di volo punto a punto, orbita POI, controllo della fotocamera e altro, abilitando un controllo in tempo reale leggero a livello aziendale. |
| Livestream | Supporta la gestione del livestream e del bypass streaming, il cambio di lenti e qualità e altro, utilizzati per creare sistemi di gestione del livestream. |
| Gestione dei file multimediali | Supporta la query, la gestione e il download dei file multimediali, utilizzati per creare sistemi di gestione dei file multimediali. |
| Gestione dei modelli | Supporta l'avvio delle attività di ricostruzione e la gestione degli asset dei modelli, utilizzati per creare sistemi di gestione dei modelli. |
| Gestione delle rotte di volo | Supporta il recupero degli elenchi delle rotte di volo, la gestione dei file delle rotte di volo e altro, utilizzati per creare sistemi di gestione dei file delle rotte di volo. |
| Gestione dei dati della mappa | Supporta la gestione delle annotazioni, la gestione delle aree di volo personalizzate, la query dell'heatmap del segnale e altro. |
| Rilevamento delle modifiche | Supporta l'avvio delle attività di analisi delle modifiche e la query dei risultati di rilevamento, applicabile a scenari come il monitoraggio delle costruzioni e il confronto delle ispezioni. |
| Modellazione aperta | Supporta l'avvio di attività di modellazione utilizzando i dati multimediali di piattaforme di terze parti. |
Documentazione delle interfacce
- La documentazione delle interfacce include l'elenco delle funzionalità OpenAPI, tutorial, elenco delle interfacce e descrizioni delle interfacce. Fai riferimento a: Documentazione delle interfacce OpenAPI.
Codice sorgente di esempio
Dopo la distribuzione e l'esecuzione riuscita del codice sorgente di esempio, puoi provare l'interfaccia delle funzionalità sviluppate sulla base di OpenAPI V2.0. Il codice sorgente di esempio ti aiuta inoltre a comprendere rapidamente come accedere e utilizzare OpenAPI, accelerando lo sviluppo e l'integrazione.
Fai clic su Codice sorgente di esempio per ottenere il codice sorgente e la guida all'accesso.
Architettura del prodotto

Guida rapida
Configurazione dell'ambiente (specifica della versione on-premises di FlightHub 2)
Fai riferimento al Manuale di distribuzione della versione On-Premises di DJI FlightHub 2 per distribuire la versione on-premises di FlightHub 2.
Autenticazione e autorizzazione
Fai riferimento al documento Tutorial di autenticazione e autorizzazione per comprendere i principi di autenticazione e autorizzazione di OpenAPI e ottenere x-user-token e X-Project-Uuid. Questi due parametri devono essere passati nel campo dell'intestazione della maggior parte delle interfacce per garantire la sicurezza di OpenAPI e implementare il controllo degli accessi a FlightHub 2.
Codice di esempio
1. Query dello stato del servizio di controllo in tempo reale di FlightHub 2
Dopo che la versione on-premises di FlightHub 2 è stata distribuita con successo, chiama l'interfaccia per interrogare lo stato del servizio di controllo in tempo reale: Query dello stato del sistema FlightHub 2
```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
Un valore di ritorno pari a 0 indica che il servizio di controllo in tempo reale di FlightHub 2 funziona normalmente:
```http
{
"code": 0,
"message": "OK",
"data": null
}
2. Ottenere l'elenco dei progetti dell'organizzazione
Crea un'organizzazione, configura un progetto e associa i dispositivi in FlightHub 2. Fai riferimento alla sezione "Nozioni di base sulla piattaforma > Gestione dell'organizzazione" di questo manuale per creare organizzazioni e progetti in FlightHub 2, quindi chiama l'interfaccia Ottieni l'elenco dei progetti dell'organizzazione per ottenere l'elenco dei progetti creati.
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
Verrà restituito l'elenco dei progetti creati:
```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. Avviare il livestream
Fai riferimento alla sezione Gestione dei dispositivi di questo manuale per associare i dispositivi in FlightHub 2, quindi fai riferimento al Tutorial di gestione del livestream per avviare lo streaming.
```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
}
Un valore di ritorno pari a 0 indica che l'attività di streaming è stata distribuita con successo e il dispositivo inizierà a inviare lo stream al server multimediale come configurato:
```c
{
"code": 0,
"message": "OK",
"data": null
}
https://dl.djicdn.com/downloads/dji-terra/20240723/DJI%20Terra%20Error%20Code%20Guide%20V4.2.0_EN.pdf