Articoli su: Sviluppatori e API
Questo articolo è disponibile anche in:

Integrazione avanzata del codice di integrazione HTML (widget) tramite l'API

Configurazione



Crea un Widget passando un oggetto Options alla funzione Create:

var widget = DigitaService.Widget.Create(options);


Opzioni di Configurazione



Obbligatorie



OpzioneTipoDescrizione
options.elementstring - HTMLElementIn questo elemento HTML verrà iniettato il widget. Puoi passare l'accesso diretto a un elemento HTML esistente o fornire l'ID stringa di tale elemento. Se non si fornisce questa proprietà, il sistema cercherà di trovare un id "digitaservice-widget" nella pagina.
options.enginestringL'URL assoluto dell'applicazione che verrà caricata nel widget.


Opzionali



OpzioneTipoDefaultDescrizione
options.heightstringautoIl widget ha un'altezza predefinita di zero prima di essere caricato. Puoi sostituirla con un valore segnaposto per evitare salti di pagina a seconda di dove viene usato il widget nella pagina madre. Il valore è in pixel come “600px”. Usando options.fixed = true l’altezza sarà bloccata al valore definito, introducendo barre di scorrimento.
options.autoscrollbooleantrueA seconda della lunghezza del contenuto del widget e della visualizzazione dell'utente, potrebbe essere necessario che la pagina contenente il widget debba scorrere. Il comportamento di default, quando un utente utilizza il Widget, è di scorrere la pagina ospitante fino alla parte superiore del widget per migliorare l’usabilità. Per disabilitare questa funzionalità, imposta il parametro autoscroll su false. Questo parametro sarà false se options.fixed è true.
options.sharingurlstringL’URL di host contenente il widgetQuando si utilizza la condivisione sui social, questo è l'URL che gli utenti condivideranno sui social media per portarli alla tua campagna. Se la condivisione è una stringa vuota, verrà usata la pagina di hosting (che contiene il widget) come URL.
options.fixedbooleanfalseSolitamente il widget cambierà dimensione automaticamente per adattarsi al contenuto dell'engine ed evitare le barre di scorrimento. Se impostato su true, l'altezza del widget sarà persistente e non cambierà. Quando utilizzi questa opzione, il valore options.height deve essere diverso da “auto”. Se l'altezza dell'engine è maggiore del valore di height, verranno utilizzate barre di scorrimento per navigare.
options.widthstring“100%”La larghezza del widget. Può essere impostata come una misura CSS, ad esempio “%” o “px”.


Caricamento



Una volta configurato un Widget, è necessario caricarlo. Puoi caricare il widget in qualsiasi momento.

Nota: Assicurati di configurare tutti gli eventuali callback qui sotto prima di caricarlo in modo da poter cogliere tutti gli eventi.

```widget.load();```# Callback per Eventi

onReady


Una volta chiamato widget.load(), il widget verrà caricato e inizializzato. Al termine di questo processo, verrà invocato un callback opzionale onReady.

widget.onReady = function (event) {
   // caricato e pronto all'uso
   console.log(event.type); // “ready”
   console.log(event.data); // {}
};


onError


Una volta chiamato widget.load(), il widget verrà caricato e inizializzato. Qualsiasi errore fatale che si verifica successivamente attiverà un callback opzionale onError.

widget.onError = function (event) {
   throw new Error(event.message);
};


onComplete


Una volta che la partita è stata completata e l'utente sta visualizzando l'ultima schermata. Fornisce anche un data object che descrive quanto accaduto nella partita.

Note: se vuoi agire su questo, potresti voler impostare un timeout all'interno del callback in modo che l'utente abbia tempo per leggere la Schermata Finale dato che viene attivata immediatamente al raggiungimento dell'ultima schermata. Puoi anche usare onClose.

widget.onComplete = function (event) {
   console.log(event.type); // “complete”
   console.log(event.data); // {}
   console.log("Il punteggio dell'utente è stato " + event.data.gameMetrics.score);
};


onResize


Si verifica quando l'Engine è stato ridimensionato, fornendo l'altezza come valore pixel.

widget.onResize = function (event) {
   console.log(event.type); // “resize”
   console.log(event.data); // {}
   console.log("Altezza dell'Applicazione: " + event.data.height);
};


onClose


Le applicazioni possono essere configurate con un pulsante chiudi dedicato che consente all'utente di chiudere implicitamente l'esperienza. Se questo pulsante è configurato e l'utente interagisce con esso, verrà inviato l'evento chiudi. Questo è un buon momento per distruggere il widget dalla tua pagina e concludere il ciclo di vita del widget.

widget.onClose = function () {
   DigitaService.Widget.Destroy();
};


onFirstInteraction


Quando l'utente interagisce (touch/click) per la prima volta con le applicazioni caricate.

widget.onFirstInteraction = function () {
   console.log("L'utente ha interagito con le Applicazioni per la prima volta");
};


onRouteChange


Si verifica quando le Applicazioni hanno cambiato rotta all'interno del widget. (Navigazione tra schermate). L'evento può o meno contenere un oggetto dati a seconda del contesto.

widget.onRouteChange = function (event) {
   console.log(event.type) // “routechange”
   console.log(event.data) // {} o undefined
   console.log("L'utente ha interagito con le Applicazioni per la prima volta");
};


onScrollToTop


Si verifica quando le Applicazioni stanno tentando di scorrere verso l'alto della pagina. Può essere utilizzato sulla pagina principale per garantire che lo scroll non venga attivato (CORS) o necessiti di aggiustamenti. L'evento non contiene un oggetto dati.

```widget.onScrollToTop = function () {
console.log("Scroll in Alto");
};```# Metrics

Ecco un elenco delle metriche principali che possono essere utilizzate in base al tipo di partita:

ChiaveDescrizione
data.gameMetrics.CurrentAttemptI tentativi effettuati dall'utente una volta completata la partita.
data.gameMetrics.prizeIDL'ID del premio.
data.gameMetrics.prizeImageL'immagine del premio.
data.gameMetrics.prizeNameIl nome del premio.
data.gameMetrics.prizeRefIl riferimento del premio.
data.gameMetrics.totalPossibleAttemptsL'importo totale dei tentativi possibili.
data.gameMetrics.userWonvero/falso a seconda dello stato dell'utente.
data.gameMetrics.scoreL'importo totale dei punti aggregati con cui questo utente completa la partita.


Credenziali


ChiaveDescrizione
data.credentials.isPreviewModeVerifica se la partita è in modalità anteprima.
data.credentials.projectIDL'ID dell'App attuale giocata.
data.credentials.projectLanguageLa lingua del progetto nel widget (en, fr).
data.credentials.projectNameIl nome dell'app.
data.credentials.projectTypeIl tipo di app (quiz, memory...).
data.credentials.publisherIDL'ID del publisher.
data.credentials.sessionIDL'ID della sessione del giocatore attuale.

Aggiornato il: 22/02/2025

È stato utile questo articolo?

Condividi il tuo feedback

Annulla

Grazie!