

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Incorpora sessioni di streaming di Amazon WorkSpaces Applications
<a name="embed-streaming-sessions"></a>

Puoi creare un'esperienza dinamica, interattiva e personalizzata per i tuoi utenti incorporando una sessione di streaming WorkSpaces delle Applicazioni nel tuo sito web. Le sessioni di streaming WorkSpaces delle applicazioni integrate consentono agli utenti di interagire con modelli 3D, mappe e set di dati direttamente dal sito Web. Ad esempio, gli utenti possono visualizzare le istruzioni di formazione o il materiale didattico insieme alla sessione di streaming delle WorkSpaces Applicazioni. 

**Topics**
+ [Prerequisiti per incorporare sessioni di streaming di Amazon WorkSpaces Applications](embed-streaming-sessions-prerequisites.md)
+ [Consigli e considerazioni sull'utilizzo per l'incorporamento di sessioni di streaming di Amazon WorkSpaces Applications](embed-streaming-sessions-recommendations-considerations.md)
+ [Fase 1: Specificare un dominio host per le sessioni di streaming di Amazon WorkSpaces Applications integrate](specify-host-domain-embedded-streaming-sessions.md)
+ [Fase 2: creare un URL di streaming per l'autenticazione utente](create-streaming-url-user-authentication.md)
+ [Passaggio 3: scarica i file delle WorkSpaces applicazioni Amazon Embedded](download-embed-files.md)
+ [Passaggio 4. Configura il tuo sito Web per l'integrazione con WorkSpaces le applicazioni Amazon](configure-website-for-integration.md)
+ [Costanti, funzioni ed eventi per le sessioni di streaming di WorkSpaces applicazioni Amazon integrate](constants-functions-events-embedded-sessions.md)

# Prerequisiti per incorporare sessioni di streaming di Amazon WorkSpaces Applications
<a name="embed-streaming-sessions-prerequisites"></a>

Per incorporare una sessione di streaming di WorkSpaces Applications in un sito Web, devi disporre di quanto segue:
+ Un ambiente di WorkSpaces applicazioni configurato che include un'immagine, un parco WorkSpaces applicazioni e uno stack. Per informazioni su come creare queste risorse, consulta i seguenti argomenti nella *Guida all'amministrazione WorkSpaces delle applicazioni*: 
  +  [Tutorial: creazione di un'immagine personalizzata WorkSpaces delle applicazioni utilizzando la console WorkSpaces delle applicazioni](tutorial-image-builder.md) o [Crea l'immagine WorkSpaces delle tue applicazioni Amazon in modo programmatico utilizzando le operazioni CLI di Image Assistant](programmatically-create-image.md)
  + [Crea una flotta nelle WorkSpaces applicazioni Amazon](set-up-stacks-fleets-create.md)
  + [Crea uno stack nelle applicazioni Amazon WorkSpaces](set-up-stacks-fleets-install.md)
+ URL di streaming per l'autenticazione degli utenti. I pool di utenti SAML 2.0 e WorkSpaces Applications non sono attualmente supportati come metodi di autenticazione per le sessioni di streaming WorkSpaces delle applicazioni incorporate.
+ Facoltativamente, puoi utilizzare domini personalizzati per le sessioni di streaming WorkSpaces delle Applicazioni incorporate. È possibile utilizzare domini personalizzati in modo che l'URL della propria azienda venga visualizzato agli utenti anziché l'URL delle applicazioni. WorkSpaces Domini personalizzati sono necessari se gli utenti dispongono di browser Web che bloccano i cookie di terze parti.
**Nota**  
Puoi configurare domini personalizzati utilizzando Amazon CloudFront. Per informazioni, consulta [Utilizzo di domini personalizzati con WorkSpaces applicazioni](https://aws.amazon.com/blogs/desktop-and-application-streaming/using-custom-domains-with-amazon-appstream-2-0/).

  Quando si utilizza un dominio personalizzato, è necessario:
  + Creare un URL di streaming che utilizza lo stesso dominio. 
  + Aggiungilo **appstream-custom-url-domain** all'intestazione della pagina web che ospiterà le sessioni di streaming delle WorkSpaces Applicazioni incorporate. Per il valore dell'intestazione, utilizzare il dominio mostrato dal proxy inverso agli utenti. Per ulteriori informazioni, consulta [Requisiti di configurazione per l'utilizzo di domini personalizzati](create-streaming-url-user-authentication.md#configuration-requirements-custom-domains).

# Consigli e considerazioni sull'utilizzo per l'incorporamento di sessioni di streaming di Amazon WorkSpaces Applications
<a name="embed-streaming-sessions-recommendations-considerations"></a>

Prendi in considerazione i seguenti consigli e note d'uso per le sessioni di streaming di WorkSpaces applicazioni integrate.
+ Per mantenere il massimo controllo sull'esperienza di streaming WorkSpaces delle Applicazioni integrate per gli utenti, consigliamo di configurare uno streaming di breve durata URLs che duri circa 5 secondi. Qualsiasi utente può controllare il contenuto di una pagina Web e visualizzarne la fonte. Questo include il documento object model (DOM) e l'URL src (source) dell'iframe. Se l'URL è ancora valido quando un utente lo copia, tale utente può incollarlo in una scheda separata del browser e trasmettere in streaming la sessione con l'interfaccia utente standard del portale WorkSpaces Applicazioni, senza le opzioni di incorporamento.
+ Le sessioni simultanee non sono supportate quando vengono utilizzati domini personalizzati per le sessioni di streaming WorkSpaces delle Applicazioni incorporate. Le sessioni simultanee si verificano quando gli utenti avviano due sessioni di streaming di WorkSpaces Applicazioni incorporate sulla stessa pagina Web o su due diverse schede del browser. Non puoi avere un singolo utente con sessioni simultanee, ma puoi avere più utenti. Ad esempio, un utente accede all'app, quest'ultima genera un URL di streaming da fornire al cliente (che conta come utente unico per la fatturazione), un cliente carica l'URL di streaming e il cliente viene assegnato a un'istanza appstream all'interno del pool specificato.

# Fase 1: Specificare un dominio host per le sessioni di streaming di Amazon WorkSpaces Applications integrate
<a name="specify-host-domain-embedded-streaming-sessions"></a>

Per incorporare una sessione di streaming WorkSpaces delle applicazioni in una pagina Web, aggiorna innanzitutto lo stack per specificare il dominio su cui ospitare la sessione di streaming incorporata. Si tratta di una misura di sicurezza per garantire che solo i domini di siti Web autorizzati possano WorkSpaces incorporare le sessioni di streaming delle Applicazioni. WorkSpaces Applications aggiunge il dominio o i domini specificati all'intestazione **Content-Security-Policy** (CSP). Per ulteriori informazioni, consulta [Content Security Policy (CSP)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP) nella documentazione [MDN Web Docs](https://developer.mozilla.org/en-US/) di Mozilla.

Per aggiornare lo stack per specificare il dominio in cui ospitare la sessione di streaming incorporata, utilizzare uno dei seguenti metodi:
+ La console Applicazioni WorkSpaces 
+ L'operazione API `EmbedHostDomains` 
+ Il `embed-host-domains` AWS comando dell'interfaccia a riga di comando (AWS CLI)

Per specificare un dominio host utilizzando la console WorkSpaces Applicazioni, effettuate le seguenti operazioni.

1. Apri la console WorkSpaces Applicazioni a [https://console.aws.amazon.com/appstream2/casa](https://console.aws.amazon.com/appstream2/home).

1. Nel riquadro di navigazione a sinistra scegliere **Stacks (Stack)** e selezionare lo stack desiderato.

1. Scegli **Modifica**.

1. Espandi ** WorkSpaces Applicazioni da incorporare (opzionale).**

1. In **Host Domains (Domini host)**, specificare un dominio valido. Ad esempio: **training.example.com**.
**Nota**  
Le sessioni di streaming incorporate sono supportate solo su HTTPS [porta TCP 443].

1. Scegliere **Aggiorna**.

# Fase 2: creare un URL di streaming per l'autenticazione utente
<a name="create-streaming-url-user-authentication"></a>

È necessario creare un URL di streaming per autenticare gli utenti per le sessioni di streaming WorkSpaces delle Applicazioni incorporate. SAML 2.0 e i pool di utenti non sono attualmente supportati per le sessioni di streaming incorporate. Per creare un URL di streaming, utilizza uno dei seguenti metodi:
+ WorkSpaces Console delle applicazioni
+ L'azione [CreateStreamingdell'API URL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStreamingURL.html) 
+ Il [create-streaming-url](https://docs.aws.amazon.com/cli/latest/reference/appstream/create-streaming-url.html) AWS comando CLI

## Requisiti di configurazione per l'utilizzo di domini personalizzati
<a name="configuration-requirements-custom-domains"></a>

Sia che utilizzi domini personalizzati per applicare il marchio della tua azienda o per garantire che le sessioni di streaming WorkSpaces delle Applicazioni integrate funzionino con browser che bloccano i cookie di terze parti, i requisiti di configurazione sono gli stessi.

I domini personalizzati sono necessari se gli utenti dispongono di browser Web che bloccano i cookie di terze parti. WorkSpaces Applications utilizza i cookie del browser per autenticare le sessioni di streaming e consente agli utenti di riconnettersi a una sessione attiva senza che venga richiesto di fornire ogni volta le proprie credenziali di accesso. Per impostazione predefinita, lo streaming WorkSpaces URLs delle applicazioni include come dominio. **appstream.com** Quando si incorpora una sessione di streaming all'interno del sito Web, **appstream.com** viene trattato come un dominio di terze parti. Di conseguenza, le sessioni di streaming potrebbero essere bloccate quando vengono utilizzati browser moderni che bloccano i cookie di terze parti per impostazione predefinita.

Per evitare che le sessioni di streaming WorkSpaces delle Applicazioni incorporate vengano bloccate in questo scenario, procedi nel seguente modo:

1. Specificate un dominio personalizzato per ospitare le sessioni di streaming WorkSpaces delle Applicazioni incorporate.

   Quando configuri il tuo dominio personalizzato, assicurati che il dominio sia un sottodominio della pagina web in cui intendi WorkSpaces incorporare le applicazioni. Ad esempio, se si aggiorna lo stack per specificare **training.example.com** come dominio host, è possibile creare un sottodominio chiamato **content.training.example.com** per le sessioni di streaming incorporate.

1. Crea un URL di streaming per le sessioni di streaming WorkSpaces delle Applicazioni incorporate che utilizzano lo stesso sottodominio personalizzato. Per creare l'URL di streaming, utilizza l'azione API [CreateStreamingURL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStreamingURL.html) o il comando [create-streaming-url](https://docs.aws.amazon.com/cli/latest/reference/appstream/create-streaming-url.html) AWS CLI. Non è possibile utilizzare la console WorkSpaces Applicazioni per creare un URL di streaming in questo scenario.

   Per creare un URL di streaming per le sessioni di streaming WorkSpaces delle Applicazioni incorporate, sostituiscilo nell'URL **appstream2.** *region* **.aws.amazon.com** con il tuo dominio. 

   Per impostazione predefinita, lo streaming WorkSpaces URLs delle applicazioni è formattato come segue:

   ```
   https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode
   ```

   Se il sottodominio è **content.training.example.com**, il nuovo URL di streaming ha questo formato:

   ```
   https://content.training.example.com/authenticate?parameters=authenticationcode
   ```
**Nota**  
Quando si crea un dominio personalizzato, è possibile utilizzare il dominio per le sessioni di streaming WorkSpaces delle Applicazioni incorporate solo nella AWS regione per cui è stato configurato. Se si prevede di supportare domini personalizzati in più regioni, creare un dominio personalizzato per ogni regione applicabile. Inoltre, le sessioni di streaming incorporate sono supportate solo su HTTPS [porta TCP 443].

1. Aggiungere **appstream-custom-url-domain** all'intestazione della pagina Web che ospiterà le sessioni di streaming incorporate. Per il valore dell'intestazione, utilizzare il dominio mostrato dal proxy inverso agli utenti. Esempio:

   ```
   Header name: appstream-custom-url-domain
   Header value: training.example.com
   ```

   L'impostazione di un dominio personalizzato e la creazione di un URL di streaming che specifica lo stesso dominio consente di salvare i cookie come cookie di prima parte. Per informazioni su come configurare domini personalizzati utilizzando Amazon CloudFront, consulta Using [Custom Domains with WorkSpaces ](https://aws.amazon.com/blogs/desktop-and-application-streaming/using-custom-domains-with-amazon-appstream-2-0/) Applications.

Dopo aver configurato un dominio personalizzato per le sessioni di streaming WorkSpaces delle Applicazioni incorporate, se lo streaming URLs non viene reindirizzato al dominio personalizzato o se il dominio personalizzato non viene visualizzato correttamente per gli utenti, consulta i seguenti argomenti di risoluzione dei problemi:
+ [Ho impostato un dominio personalizzato per le mie sessioni di streaming di WorkSpaces Applicazioni integrate, ma lo streaming WorkSpaces delle mie Applicazioni URLs non viene reindirizzato al mio dominio personalizzato.](troubleshooting-general.md#embedded-streaming-sessions-streaming-urls-not-redirected-to-custom-domain)

# Passaggio 3: scarica i file delle WorkSpaces applicazioni Amazon Embedded
<a name="download-embed-files"></a>

Per ospitare sessioni di streaming di WorkSpaces Applicazioni integrate, devi scaricare e configurare il JavaScript file API WorkSpaces Applications fornito.

1. **Nella pagina Web [Incorporamento WorkSpaces delle applicazioni nel sito Web](https://clients.amazonappstream.com/embed.html), scegliete il collegamento nel passaggio 1 per scaricare il file.zip di WorkSpaces Applications Embed Kit, appstream\$1embed\$1 .zip.** <version>

1. Accedere al percorso in cui è stato scaricato il file.zip ed estrarre il contenuto del file.

1. Il contenuto estratto del file comprende una cartella, **appstream-embed**. Oltre ai file **COPYRIGHT.txt** e **THIRD\$1PARTY\$1NOTICES.txt**, questa cartella contiene i due file seguenti:
   + **appstream-embed.js**: fornisce l'API WorkSpaces delle applicazioni integrate. Questo JavaScript file include le funzioni e le azioni API per la configurazione e il controllo della sessione di streaming WorkSpaces delle Applicazioni integrate.
   + **embed-sample.html**: descrive come utilizzare l'API WorkSpaces delle applicazioni incorporata per inizializzare una sessione di streaming, chiamare funzioni e ascoltare eventi. Questo file di esempio espande le informazioni contenute in questo argomento per fornire un esempio di caso d'uso per gli sviluppatori.

# Passaggio 4. Configura il tuo sito Web per l'integrazione con WorkSpaces le applicazioni Amazon
<a name="configure-website-for-integration"></a>

Le seguenti sezioni forniscono informazioni su come configurare la pagina Web per ospitare sessioni di streaming di WorkSpaces Applicazioni integrate.

**Topics**
+ [Importa il file JavaScript appstream-embed](#import-embed-javascript-file)
+ [Inizializzare e configurare l'oggetto di interfaccia `AppStream.Embed`](#initialize-configure-embed-interface-object)
+ [Esempi per nascondere elementi nell'interfaccia utente delle WorkSpaces applicazioni](#examples-hiding-user-interface-items)

## Importa il file JavaScript appstream-embed
<a name="import-embed-javascript-file"></a>

1. Nella pagina Web in cui intendi incorporare la sessione di streaming WorkSpaces delle applicazioni, importa il file **appstream-embed.js** nella pagina Web aggiungendo il codice seguente:

   ```
   <script type="text/javascript" src="./appstream_embed.js"> </script>
   ```

1. Quindi, crea un div container vuoto. L'ID del div impostato viene passato al costruttore WorkSpaces Applications embed. Viene quindi utilizzato per inserire un iframe per la sessione di streaming. Per creare il div, aggiungere il seguente codice:

   ```
   <div id="appstream-container"> </div>
   ```

## Inizializzare e configurare l'oggetto di interfaccia `AppStream.Embed`
<a name="initialize-configure-embed-interface-object"></a>

Per inizializzare l'oggetto dell'`AppStream.Embed`interfaccia in JavaScript, è necessario aggiungere il codice che crei un `AppStream.Embed` oggetto con opzioni per l'URL di streaming e la configurazione dell'interfaccia utente. Queste opzioni e l'ID div creato vengono memorizzati in un oggetto chiamato `appstreamOptions`.

Il codice di esempio seguente mostra come inizializzare l'oggetto di interfaccia `AppStream.Embed`.

```
var appstreamOptions = {
     sessionURL: 'https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode...',
     userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.TOOLBAR]}
 };
 appstreamEmbed = new AppStream.Embed("appstream-container", appstreamOptions);
```

Nel codice, sostituisci *sessionURL* e *userInterfaceConfig* con i tuoi valori. 

**Nota**  
Il valore specificato per *userInterfaceConfig* nasconde l'intera barra degli strumenti WorkSpaces Applicazioni. Questo valore, incluso come esempio, è facoltativo.

***sessionUrl***  
L'URL di streaming che hai creato utilizzando la console WorkSpaces Applicazioni, l'azione API [CreateStreamingURL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStreamingURL.html) o il comando [create-streaming-url](https://docs.aws.amazon.com/cli/latest/reference/appstream/create-streaming-url.html) AWS CLI. Questo parametro prevede la distinzione tra maiuscole e minuscole.  
▬**Tipo:** stringa  
**Obbligatorio:** sì

***userInterfaceConfig***  
La configurazione che genera lo stato iniziale degli elementi dell'interfaccia utente. La configurazione è una coppia chiave-valore.   
La chiave`AppStream.Embed.Options.HIDDEN_ELEMENTS`, specifica gli oggetti dell'interfaccia utente inizialmente nascosti quando viene inizializzata la sessione di streaming WorkSpaces delle Applicazioni incorporate. Successivamente, è possibile restituire oggetti nascosti e visibili utilizzando il parametro `getInterfaceState`.  
Il valore è un array di costanti (pulsanti della barra degli strumenti). Per un elenco di costanti che è possibile utilizzare, consulta [Utilizzo di `HIDDEN_ELEMENTS`](constants-functions-events-embedded-sessions.md#constants-hidden-elements).  
**Tipo**: Mappa (:) *key* *value*  
**Obbligatorio:** no

## Esempi per nascondere elementi nell'interfaccia utente delle WorkSpaces applicazioni
<a name="examples-hiding-user-interface-items"></a>

Gli esempi in questa sezione mostrano come nascondere gli elementi nell'interfaccia utente delle WorkSpaces Applicazioni agli utenti durante le sessioni di streaming WorkSpaces delle Applicazioni incorporate.

**Topics**
+ [Esempio 1: Nascondi l'intera barra degli strumenti WorkSpaces delle Applicazioni](#example-hide-the-entire-tooolbar)
+ [Esempio 2: nasconde un pulsante specifico nella barra degli strumenti WorkSpaces Applicazioni](#example-hide-a-specific-toolbar-button)
+ [Esempio 3: nascondere più pulsanti nella barra degli strumenti delle WorkSpaces Applicazioni](#example-hide-multiple-toolbar-buttons)

### Esempio 1: Nascondi l'intera barra degli strumenti WorkSpaces delle Applicazioni
<a name="example-hide-the-entire-tooolbar"></a>

Per impedire agli utenti di accedere a qualsiasi pulsante della barra degli strumenti WorkSpaces delle Applicazioni durante le sessioni di streaming incorporate, usa la `AppStream.Embed.Elements.TOOLBAR` costante. Questa costante consente di nascondere tutti i pulsanti della barra degli strumenti WorkSpaces delle Applicazioni.

```
var appstreamOptions = {
     sessionURL: 'https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode...',
     userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.TOOLBAR]}
 };
```

### Esempio 2: nasconde un pulsante specifico nella barra degli strumenti WorkSpaces Applicazioni
<a name="example-hide-a-specific-toolbar-button"></a>

È possibile visualizzare la barra degli strumenti WorkSpaces delle Applicazioni, impedendo al contempo agli utenti di accedere a un pulsante specifico della barra degli strumenti durante le sessioni di streaming incorporate. A tale scopo, specifica la costante del pulsante da nascondere. Il codice seguente utilizza la costante `AppStream.Embed.Elements.FILES_BUTTON` per nascondere il pulsante **My Files (File)**. Ciò impedisce agli utenti di accedere alle opzioni di storage persistente durante le sessioni di streaming incorporate.

```
var appstreamOptions = {
     sessionURL: 'https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode...',
     userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.FILES_BUTTON]}
 };
```

### Esempio 3: nascondere più pulsanti nella barra degli strumenti delle WorkSpaces Applicazioni
<a name="example-hide-multiple-toolbar-buttons"></a>

È possibile visualizzare la barra degli strumenti WorkSpaces delle Applicazioni, impedendo al contempo agli utenti di accedere a più di un pulsante della barra degli strumenti durante le sessioni di streaming incorporate. A tale scopo, specifica le costanti dei pulsanti da nascondere. Il codice seguente utilizza le costanti `AppStream.Embed.Elements.END_SESSION_BUTTON` e `AppStream.Embed.Elements.FULLSCREEN_BUTTON` per nascondere i pulsanti **End Session (Termina sessione)** e **Fullscreen (Schermo intero)**. 

**Nota**  
Separa ogni costante con una virgola, senza spazio precedente o successivo.

```
var appstreamOptions = {
     sessionURL: 'https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode... (https://appstream2.region.aws.amazon.com/#/)',
     userInterfaceConfig:{[AppStream.Embed.Options.HIDDEN_ELEMENTS]:[AppStream.Embed.Elements.END_SESSION_BUTTON,AppStream.Embed.Elements.FULLSCREEN_BUTTON]}
 };
```

# Costanti, funzioni ed eventi per le sessioni di streaming di WorkSpaces applicazioni Amazon integrate
<a name="constants-functions-events-embedded-sessions"></a>

I seguenti argomenti forniscono informazioni di riferimento per costanti, funzioni ed eventi che è possibile utilizzare per configurare le sessioni di streaming WorkSpaces delle Applicazioni incorporate.

**Topics**
+ [Utilizzo di `HIDDEN_ELEMENTS`](#constants-hidden-elements)
+ [Funzioni per l'oggetto `AppStream.Embed`](#functions-embed-object)
+ [Eventi per le sessioni di streaming WorkSpaces delle applicazioni integrate](#events-embedded-streaming-sessions)
+ [Esempi per aggiungere listener di eventi e terminare una sessione di streaming di WorkSpaces applicazioni incorporate](#examples-add-event-listeners-end-embedded-streaming-session)

I seguenti elementi dell'interfaccia utente WorkSpaces delle applicazioni possono essere passati all'opzione di `HIDDEN_ELEMENTS` configurazione quando viene inizializzata una sessione di streaming di WorkSpaces Applicazioni incorporate.

## Utilizzo di `HIDDEN_ELEMENTS`
<a name="constants-hidden-elements"></a>

I seguenti elementi dell'interfaccia utente WorkSpaces delle Applicazioni possono essere passati come costanti all'opzione di `HIDDEN_ELEMENTS` configurazione quando viene inizializzata una sessione di streaming di WorkSpaces Applicazioni incorporata. 

```
AppStream.Embed.Elements.TOOLBAR
AppStream.Embed.Elements.FULLSCREEN_BUTTON
AppStream.Embed.Elements.END_SESSION_BUTTON
AppStream.Embed.Elements.TOOLBAR
AppStream.Embed.Elements.CATALOG_BUTTON
AppStream.Embed.Elements.WINDOW_SWITCHER_BUTTON
AppStream.Embed.Elements.FILES_BUTTON
AppStream.Embed.Elements.CLIPBOARD_BUTTON
AppStream.Embed.Elements.COPY_LOCAL_BUTTON
AppStream.Embed.Elements.PASTE_REMOTE_BUTTON
AppStream.Embed.Elements.SETTINGS_BUTTON
AppStream.Embed.Elements.STREAMING_MODE_BUTTON
AppStream.Embed.Elements.SCREEN_RESOLUTION_BUTTON
AppStream.Embed.Elements.REGIONAL_SETTINGS_BUTTON
AppStream.Embed.Elements.FULLSCREEN_BUTTON
AppStream.Embed.Elements.END_SESSION_BUTTON
```

I seguenti tre elementi possono essere passati come stringhe in HIDDEN\$1ELEMENTS, piuttosto che come costanti.


| Stringa | Description | 
| --- | --- | 
| 'adminCommandsButton' | Quando si è connessi a un generatore di immagini WorkSpaces delle applicazioni, il pulsante Comandi di amministrazione viene visualizzato nell'angolo superiore destro della barra degli WorkSpaces strumenti Applicazioni. Passando questa stringa in HIDDEN\$1ELEMENTS nasconde il pulsante Comandi di amministrazione. | 
| 'softKeyboardButton' | Durante WorkSpaces le sessioni di streaming delle Applicazioni su dispositivi touch, gli utenti possono toccare l'icona della tastiera sulla barra degli strumenti WorkSpaces delle Applicazioni per visualizzare la tastiera su schermo. Passando questa stringa in HIDDEN\$1ELEMENTS nasconde l'icona della tastiera. | 
| 'keyboardShortcutsButton' | Durante WorkSpaces le sessioni di streaming delle Applicazioni su dispositivi touch, gli utenti possono toccare l'icona Fn sulla barra degli strumenti delle Applicazioni per visualizzare le scorciatoie da tastiera. WorkSpaces Passando questa stringa in HIDDEN\$1ELEMENTS nasconde l'icona Fn. | 

## Funzioni per l'oggetto `AppStream.Embed`
<a name="functions-embed-object"></a>

Nella tabella seguente sono elencate le funzioni che possono essere eseguite sull'oggetto `AppStream.Embed`. 


| Funzione | Description | 
| --- | --- | 
| AppStream.Embed(containerId:string, options:object) | Il costruttore di oggetti AppStream.Embed. Questo costruttore inizializza e comunica con l'oggetto AppStream.Embed e utilizza un ID container div. L'ID viene utilizzato per inserire l'iframe. Inoltre, inietta un oggetto che include le opzioni di configurazione per (e). appstreamOptions sessionURL HIDDEN\$1ELEMENTS  | 
| endSession() | Questa funzione termina la sessione di streaming, ma non distrugge l'iframe. Se si specifica un URL di reindirizzamento, l'iframe tenta di caricare l'URL. A seconda delle intestazioni CORS della pagina, l'URL potrebbe non essere caricato.  | 
| launchApp(appId:string) | Questa funzione avvia a livello di codice un'applicazione con l'ID dell'applicazione specificato durante la creazione dell'immagine.  | 
| launchAppSwitcher() | Questa funzione invia il AppSwitcher comando al portale delle WorkSpaces applicazioni. Questo attiva il comando AppSwitcher sull'istanza.  | 
| getSessionState() | Questa funzione restituisce un oggetto per sessionStatus. Per ulteriori informazioni, consulta [Eventi per le sessioni di streaming WorkSpaces delle applicazioni integrate](#events-embedded-streaming-sessions).  | 
| getUserInterfaceState() | Questa funzione restituisce un oggetto per `UserInterfaceState`. L'oggetto contiene le coppie chiave-valore per quanto segue:  `sessionStatus`: enumerazione dello stato `sessionTerminationReason`: Stringa `sessionDisconnectionReason`: Stringa  Per ulteriori informazioni, consulta [Eventi per le sessioni di streaming WorkSpaces delle applicazioni integrate](#events-embedded-streaming-sessions).  | 
| addEventListener(name, callback) | Questa funzione aggiunge una funzione di callback per chiamare quando viene attivato l'evento specificato. Per un elenco degli eventi che possono essere attivati, consulta [Eventi per le sessioni di streaming WorkSpaces delle applicazioni integrate](#events-embedded-streaming-sessions).  | 
| removeEventListener(name, callback) | Questa funzione rimuove il callback per gli eventi specificati.  | 
| destroy() | Questa funzione elimina l'iframe e pulisce le risorse. Questa funzione non influisce sulle sessioni di streaming in corso.  | 

## Eventi per le sessioni di streaming WorkSpaces delle applicazioni integrate
<a name="events-embedded-streaming-sessions"></a>

La tabella seguente elenca gli eventi che possono essere attivati durante le sessioni di streaming WorkSpaces delle applicazioni incorporate.


| Event | Dati | Description | 
| --- | --- | --- | 
| AppStream.Embed.Events.SESSION\$1STATE\$1CHANGE |  `sessionStatus`: `State enumeration` `sessionTerminationReason`: Stringa `sessionDisconnectionReason`: Stringa  | Questo evento viene attivato quando si verifica una modifica dello stato della sessione. L'evento include una mappa degli stati modificati. Per recuperare lo stato della sessione completa, utilizzare la funzione `getSessionState()`. Di seguito sono riportati gli stati di sessione: `AppStream.Embed.SessionStatus.Unknown`: la sessione non è iniziata e non è riservata `AppStream.Embed.SessionStatus.Reserved`: la sessione è riservata ma non è iniziata.  `AppStream.Embed.SessionStatus.Started`: l'utente si è collegato alla sessione e ha avviato lo streaming. `AppStream.Embed.SessionStatus Disconnected `: l'utente si è disconnesso dalla sessione. `AppStream.Embed.SessionStatus.Ended`: la sessione è stata contrassegnata come terminata o scaduta.  | 
| AppStream.Embed.Events.SESSION\$1INTERFACE\$1STATE\$1CHANGE | `hiddenElements`: array di stringhe  `isFullscreen`: Booleano `isSoftKeyboardVisible`: Booleano  | Questo evento viene attivato quando si verifica una modifica dello stato della sessione. L'evento include una mappa degli stati modificati. Per recuperare lo stato della sessione completa, utilizzare la funzione getSessionState(). | 
| AppStream.Embed.Events.SESSION\$1ERROR | `errorCode`: numero `errorMessage`: Stringa  | Questo evento viene attivato quando si verificano errori durante una sessione. | 

## Esempi per aggiungere listener di eventi e terminare una sessione di streaming di WorkSpaces applicazioni incorporate
<a name="examples-add-event-listeners-end-embedded-streaming-session"></a>

Gli esempi in questa sezione mostrano come eseguire le operazioni seguenti:
+ Aggiungi listener di eventi per le sessioni di streaming WorkSpaces delle applicazioni incorporate.
+ Termina in modo programmatico una sessione di streaming di WorkSpaces applicazioni integrate.

### Esempio 1: aggiungere listener di eventi per le sessioni di streaming delle Applicazioni incorporate WorkSpaces
<a name="example-add-event-listeners"></a>

Per aggiungere listener di eventi per le modifiche dello stato della sessione, le modifiche dello stato dell'interfaccia della sessione e gli errori di sessione durante le sessioni di streaming incorporate, utilizzare il codice seguente:

```
appstreamEmbed.addEventListener(AppStream.Embed.Events.SESSION_STATE_CHANGE, updateSessionStateCallback);

appstreamEmbed.addEventListener(AppStream.Embed.Events.SESSION_INTERFACE_STATE_CHANGE, updateUserInterfaceStateCallback);

appstreamEmbed.addEventListener(AppStream.Embed.Events.SESSION_ERROR, errorCallback);
```

In questo esempio, `AppStream.Embed.Events.SESSION_STATE_CHANGE`, `AppStream.Embed.Events.SESSION_INTERFACE_STATE_CHANGE` e `AppStream.Embed.Events.SESSION_ERROR` sono nomi di eventi.

Le funzioni `updateSessionStateCallback`, `updateUserInterfaceStateCallback` e `errorCallback` sono quelle implementate. Queste funzioni passano nella funzione `addEventListener` e chiamate quando viene attivato un evento.

### Esempio 2: terminare a livello di codice una sessione di streaming di applicazioni incorporate WorkSpaces
<a name="programmatically-end-embedded-streaming-session"></a>

Per terminare una sessione di streaming di WorkSpaces Applicazioni incorporate, utilizzate la seguente funzione:

```
appstreamEmbed.endSession();
```