Incorporare un oggetto visivo Q&A autonomo

Suggerimento

Provare a incorporare un Q&A o sperimentare le API client nella sezione Esplorare le API di Power BI Embedded Analytics Playground.

Questo articolo illustra i passaggi per l'incorporamento di un oggetto visivo Q&A autonomo nell'applicazione.

Questa funzionalità consente agli utenti di porre domande. Ricevono quindi risposte immediate sotto forma di oggetti visivi come grafici o grafici. Altre informazioni su questa funzionalità sono disponibili in Creare un oggetto visivo Q&A in Power BI.

Immagine animata che mostra la funzionalità Q e A incorporata. Quando un utente modifica la domanda, i dati visivi cambiano.

Come incorporare Q&A

Quando si incorpora il contenuto di Power BI in un'app, si usa un oggetto di configurazione per definire il contenuto da incorporare e per specificare le impostazioni del contenuto. Passare quindi l'oggetto all'API.

Quando si incorpora Q&A, usare un oggetto di configurazione di tipo ILoadQnaConfiguration:

interface ILoadQnaConfiguration {
    accessToken: string;
    datasetIds: string[];
    embedUrl: string;
    question?: string; 
    tokenType?: models.TokenType;
    type: string;
    viewMode?: models.QnaMode;
}

Questa interfaccia contiene le proprietà seguenti:

  • accessToken - Token che consente di accedere ai dati di Power BI da incorporare. Per altre informazioni sui token di accesso, vedere Informazioni sulle diverse soluzioni di incorporamento .

  • datasetIds - ID dei set di dati che definiscono gli schemi di dati usati dal Q&A incorporato. È possibile usare un'API Set di dati per ottenere i set di dati. Di seguito sono riportati due esempi:

    Nota

    Attualmente è possibile configurare un solo set di dati.

  • embedUrl - URL del set di dati per il Q&A che si sta incorporando. Questo URL diventa l'origine dell'elemento HTML iframe che contiene il Q incorporato&A. In particolare, l'API assegna l'URL all'attributo src di iframe. È possibile usare un'API Datasets per ottenere questo URL. Di seguito sono riportati due esempi:

  • question - Domanda che determina la visualizzazione visualizzata dall'API. Questa proprietà viene utilizzata solo in modalità risultato.

  • tokenType - Tipo di token che consente di accedere ai dati di Power BI incorporati.

    • Usare models.TokenType.Aad se si esegue l'incorporamento per l'organizzazione (l'utente è proprietario dei dati).
    • Usa models.TokenType.Embed se stai incorporando per i tuoi clienti (l'app è proprietaria dei dati).

    Per altre informazioni, vedere Informazioni sulle diverse soluzioni di incorporamento .

  • type - Tipo di contenuto da incorporare. Usare 'qna' per Q&A.

  • viewMode - Modalità del Q incorporato&A. Sono disponibili due modalità:

    • Interactive - L'utente può immettere domande. L'API visualizza le domande e aggiorna l'oggetto visivo di conseguenza.
    • ResultOnly Si specifica una domanda specifica. L'API visualizza la domanda e il relativo oggetto visivo.

Questo esempio illustra come incorporare Q&A:

// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
    accessToken: anAccessToken,
    datasetIds: [aDatasetID],
    embedUrl: anEmbedUrl,
    question: aTextQuestion,
    tokenType: aTokenType,
    type: 'qna',
    viewMode: QnaMode.ResultOnly
};
 
// Get a reference to the HTML element that contains the embedded Q&A.
let embedContainer = $('#embedContainer')[0];
 
// Embed the Q&A.
let visual = powerbi.embed(embedContainer, embedConfiguration);

Modificare la domanda visualizzata

Se si usa e viewModeResultOnly si specifica una domanda, è possibile usare il setQuestion metodo per modificare la domanda visualizzata. L'API modifica quindi l'oggetto visivo visualizzato.

È possibile usare questo metodo per un elenco di domande frequenti. Man mano che l'utente esamina le domande, è possibile visualizzare le risposte all'interno dell'elemento incorporato.

La classe Qna JavaScript di PowerBI definisce il setQuestion metodo come:

setQuestion(question: string): Promise<void>

Il question parametro contiene una domanda in formato testo.

In questo esempio viene illustrato come usare questo metodo per modificare la domanda visualizzata:

// Get a reference to the embedded Q&A HTML element.
let qnaContainer = $('#qnaContainer')[0];

// Get a reference to the embedded Q&A.
let qna = powerbi.get(qnaContainer);

// Change the displayed question.
await qna.setQuestion("This year sales");

Acquisire le domande degli utenti

Se si usa un viewMode di Interactive, l'API può inviare una notifica all'app quando cambia l'oggetto visivo visualizzato. Ogni volta che l'oggetto visivo cambia in risposta a una query di input aggiornata, il componente incorporato genera un visualRendered evento. Se l'app è in ascolto di questo tipo di evento, il codice può rispondere alla nuova query.

Ad esempio, è possibile registrare le domande immesse dagli utenti. È possibile usare queste domande in un secondo momento per scopi di intelligenza artificiale o telemetria.

Usare codice simile a queste righe per ascoltare visualRendered gli eventi:

qna.on("visualRendered", function(event) {
    ...
});

Per altre informazioni sull'ascolto degli eventi, vedere Come gestire gli eventi .

Limitazioni

Il Q&A incorporato usa schemi di dati. Attualmente è possibile configurare solo uno schema, non più schemi.

Passaggi successivi