Scripting: Introduzione

Training

Lo scripting è il mattone che ti permette di adattare il Beholder Bisogni aziendali senza Ridistribuisci l'applicazione. I copioni, scritti in JavaScript, sono Memorizzata lato server, versionato allora Guidati dai giocatori (Osservatore) per l'esecuzione locale. Possono cambiare 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, punti di riferimento e coordinate. Più ricca è la modellazione (geometria + semantica), più la 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.). Normalizza, pulisci 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 Citato. 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 permette 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 spazio di lavoro è attivo al lancio. Lo Spazio di Lavoro rappresenta lo spazio di lavoro 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, tutti 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 spazi di lavoro.
  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 potrà 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.