

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à.

# Utilizzo dell'SDK Amazon Quick Sight Embedding per abilitare collegamenti condivisibili a visualizzazioni di dashboard integrate
<a name="embedded-view-sharing"></a>

Gli sviluppatori di Amazon Quick Sight possono utilizzare Amazon Quick Sight Embedding SDK (versione 2.8.0 e successive) per consentire ai lettori di dashboard incorporati di ricevere e distribuire link condivisibili alla loro visualizzazione di una dashboard incorporata. Gli sviluppatori possono utilizzare l'incorporamento di dashboard o console per generare un link condivisibile alla pagina dell'applicazione con il riferimento di Amazon Quick Sight incapsulato utilizzando l'SDK Amazon Quick Sight Embedding. I lettori di Amazon Quick Sight possono quindi inviare questo link condivisibile ai loro colleghi. Quando il loro collega accede al link condiviso, viene indirizzato alla pagina dell'applicazione che contiene la dashboard Amazon Quick Sight integrata. Gli sviluppatori possono anche generare e salvare link condivisibili di visualizzazioni di dashboard che possono essere utilizzati come segnalibri per lettori anonimi di Amazon Quick Sight quando utilizzano l'incorporamento anonimo.

**Prerequisiti**

Prima di iniziare, assicurati di utilizzare Amazon Quick Sight Embedding SDK versione 2.8.0 o successiva

**Topics**
+ [

# Abilitazione della configurazione delle `SharedView` funzionalità per l'analisi integrata di Amazon Quick Sight
](embedded-view-sharing-set-up.md)
+ [

# Creazione di una visualizzazione condivisa con l'`createSharedView`API Amazon Quick Sight
](embedded-view-sharing-sdk-create.md)
+ [

# Utilizzo di una visualizzazione condivisa di Amazon Quick Sight
](embedded-view-sharing-sdk-consume.md)

# Abilitazione della configurazione delle `SharedView` funzionalità per l'analisi integrata di Amazon Quick Sight
<a name="embedded-view-sharing-set-up"></a>

Quando crei un'istanza incorporata con l'API Amazon Quick Sight, imposta il valore di `SharedView` nel `FeatureConfigurations` payload su`true`, come mostrato nell'esempio seguente. `SharedView`sostituisce le `StatePersistence` configurazioni per gli utenti registrati che accedono ai dashboard incorporati. Se un utente del pannello di controllo ha `StatePersistence` disabilitato e `SharedView` abilitato, il suo stato persisterà.

```
const generateNewEmbedUrl = async () => {
    const generateUrlPayload = {
        experienceConfiguration: {
            QuickSightConsole: {
            FeatureConfigurations: {
                "SharedView": { 
                    "Enabled": true
                 },
            },
        },
    }
    const result: GenerateEmbedUrlResult = await generateEmbedUrlForRegisteredUser(generateUrlPayload);
    return result.url;
};
```

# Creazione di una visualizzazione condivisa con l'`createSharedView`API Amazon Quick Sight
<a name="embedded-view-sharing-sdk-create"></a>

Dopo aver aggiornato l'SDK Embedding alla versione 2.8.0 o successiva, utilizza l'API `createSharedView` per creare una nuova vista condivisa. Registra `sharedViewId` e `dashboardId` restituiti dall'operazione. L'esempio seguente crea una nuova vista condivisa.

```
const response = await embeddingFrame.createSharedView();
const sharedViewId = response.message.sharedViewId;
const dashboardId = response.message.dashboardId;
```

`createSharedView` può essere chiamato solo quando un utente visualizza un pannello di controllo. Per la creazione di una vista condivisa specifica della console, assicurati che gli utenti siano nella pagina del pannello di controllo prima di abilitare l'azione `createSharedView`. Puoi farlo con l'evento `PAGE_NAVIGATION`, mostrato nell'esempio seguente.

```
const contentOptions = {
    onMessage: async (messageEvent, metadata) => {
    switch (messageEvent.eventName) {
            case 'CONTENT_LOADED': {
                console.log("Do something when the embedded experience is fully loaded.");
                break;
            }
            case 'ERROR_OCCURRED': {
                console.log("Do something when the embedded experience fails loading.");
                break;
            }
            case 'PAGE_NAVIGATION': {
                setPageType(messageEvent.message.pageType); 
                if (messageEvent.message.pageType === 'DASHBOARD') {
                    setShareEnabled(true);
                    } else {
                    setShareEnabled(false);
                }
                break;
            }
        }
    }
};
```

# Utilizzo di una visualizzazione condivisa di Amazon Quick Sight
<a name="embedded-view-sharing-sdk-consume"></a>

Dopo aver creato una nuova vista condivisa, utilizza l'SDK Embedding per rendere la vista condivisa utilizzabile per altri utenti. Gli esempi seguenti configurano una visualizzazione condivisa dei consumabili per un pannello di controllo incorporato in Amazon Quick Sight.

------
#### [ With an appended URL ]

Aggiungi `sharedViewId` all'URL di incorporamento, in ` /views/{viewId}`, ed esponi questo URL ai tuoi utenti. Gli utenti possono utilizzare questo URL per accedere alla vista condivisa.

```
const response = await dashboardFrame.createSharedView();
const newEmbedUrl = await generateNewEmbedUrl();
const formattedUrl = new URL(newEmbedUrl);
formattedUrl.pathname = formattedUrl.pathname.concat('/views/' + response.message.sharedViewId);
const baseUrl = formattedUrl.href;
alert("Click to view this QuickSight shared view", baseUrl);
```

------
#### [ With the contentOptions SDK ]

Passa `viewId` a `contentOptions` per aprire l'esperienza con il `viewId` fornito.

```
const contentOptions = {
    toolbarOptions: {
        ...
    },
    viewId: sharedViewId,
};

const embeddedDashboard = await embeddingContext.embedDashboard(
    {container: containerRef.current},
    contentOptions
);
```

------
#### [ With the InitialPath property ]

```
const shareView = async() => {
    const returnValue = await consoleFrame.createSharedView();
    const {dashboardId, sharedViewId} = returnValue.message;
    const newEmbedUrl = await generateNewEmbedUrl(`/dashboards/${dashboardId}/views/${sharedViewId}`);
    setShareUrl(newEmbedUrl);
};

const generateNewEmbedUrl = async (initialPath) => {
    const generateUrlPayload = {
        experienceConfiguration: {
            QuickSightConsole: {
            InitialPath: initialPath,
            FeatureConfigurations: {
                "SharedView": { 
                    "Enabled": true
                 },
            },
        },
    }
    const result: GenerateEmbedUrlResult = await generateEmbedUrlForRegisteredUser(generateUrlPayload);
    return result.url;
};
```

------