Scripting: Introduzione

Training

Lo scripting è il mattone che ti permette di adattare il Beholder Bisogni aziendali senza Ridistribuire l'applicazione. Script, scritti in JavaScript, sono Memorizzata lato server, versionato allora Guidati dai giocatori (Beholder) per l'esecuzione locale. Possono modificare Comportamenti applicativi, regolare l'interfaccia, controllare l'aspetto del gemello digitale e orchestrare i processi. Il risultato: sviluppare rapidamente una risposta funzionale, in modo autonomo, con un linguaggio accessibile.

Viaggio nella creazione dei gemelli digitali

Un gemello digitale immersivo è costruito in quattro fasi complementari: Modellazione Geospaziale, Creazione del catalogo delle attrezzature, Geometria e connessione dati allora Sceneggiatura per aggiungere la logica di business. L'obiettivo è passare da un sistema di riferimento 3D correttamente georeferenziato a un'applicazione che reagisce ai dati in tempo reale, senza ridistribuzione dal lato giocatore.

4 passaggi: Ultima fase di scripting

Le sezioni seguenti descrivono ogni fase, i risultati attesi e i punti di attenzione che garantiscono un gemello robusto, rintracciabile e mantenibile.

1) Modellazione geografica e metadati

Costruire la mappa 3D e il quadro spaziale in cui vive il gemello: siti, edifici, piani, aree, sistemi di coordinate e coordinate. Più ricca è la modellazione (geometria + semantica), più il Gli usi successivi (posizione, navigazione, filtraggio, analisi) saranno semplici e accurati.

  • Lo fa: creare/assemblare modelli 2D/3D, definire la topologia (sito → edificio → piano → area), riempire i sistemi di coordinate.
  • Risultato: Repository spaziale coerente pronto a ricevere apparecchiature.

2) Creazione/importazione di attrezzature

Elenca tutti gli oggetti sorvegliabili (sensori, sistemi, telecamere, veicoli, ecc.) da le fonti aziendali del cliente (CMMS, GIS, IoT, esportazioni Excel, API, ecc.). Standardizzare, pulire e trasforma quei dati in un formato immersivo in modo che diventino entità azionabili.

  • Lo fa: Campi mappati (tipi, identificatori, proprietà, variabili, stati), controllo della qualità, arricchimento se necessario.
  • Risultato: Catalogo di apparecchiature immersive pronti a caricare (tipi + istanze + variabili).

3) Collegamento degli oggetti ↔ equipaggiamenti

Associa oggetti visivi (mesh 3D, simboli 2D) dalla modellazione con l'attrezzatura file di riferimento. Questo passaggio crea il Tracciabilità : un clic su un oggetto apre la forma giusta, una modifica degli aggiornamenti di valore il rendering corretto e le interinterrogazioni (per zona, tipo, criticità) diventano banali.

  • Lo fa: stabilire collegamenti stabili (ID, regole di appartenenza, pattern), validare l'allineamento spaziale.
  • Risultato: Grafo di collegamento robusto tra geometria e dati, testabile nel Beholder.

4) Scripting e logica aziendale

Aggiungi intelligenza locale tramite script JavaScript eseguiti dal Beholder: regole di allerta, stili/animazioni condizionali, percorsi degli operatori, widget e automazioni. Lo scripting consente Cambiamento del comportamento senza ridistribuzione : basta pubblicare gli script lato server.

  • Lo fa: scrivere script per perimetro, ascoltare handle, applicare reazioni UI/twin, log.
  • Risultato: Libreria di script versionata, documentata e testata.

Ruolo e scopo della scrittura

  • Reagire ai dati ricevute tramite l'Hub (stati, metriche, eventi) e attivano azioni locali.
  • Personalizzazione dell'interfaccia utente : semplificare i percorsi, aggiungere elementi di supporto, indicare le priorità.
  • Stile del gemello : cambiare l'aspetto dell'equipaggiamento, mostrare badge/etichette, applicare effetti visivi.
  • Automatizza i processi : sequenze d'azione, gestione delle modalità (giorno/notte), regole di allarme, procedure dell'operatore.

Tutte le operazioni descritte nei tutorial di scripting sono eseguite nel Backend Immersivo, categoria "Contenuti > Business". Qui si struttura il tuo ambito di esecuzione (Workspace), crea i tuoi script (Controller), gestisce le versioni e pubblica.

Fondamenti

  • Manico : Percorso dati che permette un dialogo con l'Hub. Gli script "ascoltano" i cambiamenti di valore e reagiscono.
  • Spazio di lavoro : rappresenta un insieme di Controller applicati durante una sessione Beholder. Solo uno Workspace è attivo al lancio. Lo Workspace rappresenta lo workspace aziendale che sovrascriverà il comportamento predefinito del Beholder per creare una risposta aziendale adattata alle esigenze del cliente.
  • Controller : Un contenitore per uno script (o contenuto parametrico) con il suo tipo, la regola di importazione e le versioni.
    • Controllori di parametrizzazione (prefisso Infos.) — formato JSON. Controlla la configurazione al lancio (ad esempio mappa predefinita, ambito, titolo, indirizzo dell'hub).
    • Controllori di scripting per apparecchiature (senza prefisso) — formato JavaScript. Logica collegata a uno o più apparecchiature.
    • Controllori di scripting applicativo (prefisso App.) — formato JavaScript. Logica generale, indipendente dall'attrezzatura.
    • Controllori di Posizione (prefisso Translation.) — formato testo. Aggiunte le chiavi di traduzione.
  • Regola di importazione —Determina a quali dispositivi si applica uno script di dispositivo. Esempi:
    • Cognome —Prende di mira tutta l'attrezzatura di una famiglia. Ad esempio, tutta Ascensori.
    • Diverse famiglie : separando ogni famiglia tramite |.
    • Tutta l'attrezzatura : Pattern .*.
    • Presenza di una variabile : Pattern $(NomDeVariable) (Si applica solo ai dispositivi con questa variabile).

Ciclo di vita del backend

I compiti tipici di un utente Immersivo che desidera creare script per adattare il Beholder a una necessità aziendale sono i seguenti:

  1. Crea uno spazio di lavoro e definirne le proprietà (diritti di accesso, elenco dei Controller collegati).
  2. Crea un Controller : specifica un nome (presta attenzione al prefisso che determina il tipo), alla descrizione e alla regola di importazione se applicabile.
  3. Modifica la sceneggiatura (o JSON, a seconda del tipo di controller) e Crea una versione.
  4. Pubblica una versione : Solo la versione pubblicata è Riportato dall'osservatore. Un controller può, infatti, versionare i propri script ma ne può pubblicare solo uno alla volta.
  5. Collega il controller allo spazio di lavoro : Solo i Controller collegati allo Workspace attivo vengono eseguiti. Un controller può essere associato a diversi Workspace.
  6. Caricamento lato giocatore : all'avvio (o a seconda della strategia di ricarica), il Beholder recupera lo Workspace, i suoi Controller associati e la versione pubblicata per ciascuno di essi che esegue localmente.

Buone pratiche editoriali

È importante semplificare la manutenzione del tuo progetto e aiutare chi lavorerà sugli spazi di lavoro, sui controller o sugli script che hai creato a seguire le migliori pratiche:

  • Nominare chiaramente : Nomi autoesplicativi per controller, spazi di lavoro e famiglie.
  • Regole precise di importazione : obiettivo chiaro (famiglie, variabili) per evitare effetti collaterali.
  • Versioni brevi e frequenti : Pubblicare a incrementi e modificare i documenti.
  • Isolamento : separando la logica "globale" (App.) della logica "equipaggiamento" (senza prefisso).
  • Reversibilità : Qualsiasi modifica all'interfaccia o alla visuale dovrebbe poter essere annullata facilmente.
  • Prestazioni : favoriscono reazioni basate su eventi e un ambito limitato (handle mirati).

Usi comuni

Lo scripting ti permette di sovraccaricare il funzionamento del Beholder per offrire più possibilità e funzionalità ai tuoi utenti. Lo scripting sarà in grado di agire su:

  • Stato dell'Asset : evidenzia un'attrezzatura che si trova in anomalia, visualizza un messaggio operatore.
  • Personalizzazione UI 2D/3D : arricchisce la mappa (cartucce, bolle), le liste dell'equipaggiamento, i badge di criticità.
  • Query & filtraggio : Focalizzare la visione su un sottoinsieme rilevante di apparecchiature.
  • Geolocalizzazione e flotta : evidenzia la risorsa più vicina, guida un punto, utilizza apparecchiature "virtuali".
  • Storia e heatmap —Abilitare l'analisi di strati storici o di densità.

Passaggi successivi nel tutorial

  • Creare un Spazio di lavoro.
  • Creare un Controller e gestione dei suoi Versioni.
  • Controllori di parametrizzazione (Infos.).
  • Script di Attrezzatura (regole di importazione, targeting, casi d'uso).
  • Scripting applicativo (App.).
  • Posizione (Translation.).
  • Focus tematico: Stato dell'Asset, Personalizzazione Widget2D/3D, Query, Personalizzazione 3D,

Geolocalizzazione, Altre azioni, Ispettore, Personalizzazione HMI, Flotta/GeoTracciamento/GeoMovimento/NavMeshMove, Rapporti, Mappa termica, Storia del percorso.