Sdílet prostřednictvím


Vložení samostatného vizuálu Q&A

Spropitné

Zkuste vložit Q&A nebo experimentovat s našimi klientskými rozhraními API v Prozkoumat naše rozhraní API části Power BI Embedded Analytics Playground .

Tento článek popisuje kroky pro vložení samostatného vizuálu Q&A do aplikace.

Tato funkce poskytuje uživatelům způsob, jak klást otázky. Pak dostanou okamžité odpovědi ve formě vizuálů, jako jsou grafy nebo grafy. Přečtěte si další informace o této funkci v Vytvoření vizuálu Q&A v Power BI.

animovaný obrázek, který zobrazuje vloženou funkci Q a A. Když uživatel otázku upraví, změní se vizuální data.

Jak vložit Q&A

Při vkládání obsahu Power BI do aplikace použijete objekt konfigurace k definování obsahu, který vkládáte, a k určení nastavení obsahu. Pak tento objekt předáte do rozhraní API.

Při vkládání Q&A použijte objekt konfigurace typu ILoadQnaConfiguration:

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

Toto rozhraní obsahuje následující vlastnosti:

  • accessToken – token, který umožňuje přístup k datům Power BI, která vkládáte. Další informace o přístupových tokenech najdete v tématu Vysvětlení různých řešení pro vkládání.

  • datasetIds – ID datových sad definujících schémata dat, která používá vložená funkce Q&A. K získání datových sad můžete použít rozhraní API datových sad. Mezi dva příklady patří:

    Poznámka

    V současné době můžete nakonfigurovat pouze jednu datovou sadu.

  • embedUrl – adresa URL datové sady pro Q&A, kterou vkládáte. Tato adresa URL se stane zdrojem elementu iframe HTML, který obsahuje vloženou funkci Q&A. Konkrétně rozhraní API přiřadí adresu URL src atributu iframe. K získání této adresy URL můžete použít rozhraní API datových sad. Mezi dva příklady patří:

  • question – otázka, která určuje vizualizaci, kterou rozhraní API zobrazí. Tato vlastnost se používá pouze v režimu výsledků.

  • tokenType – druh tokenu, který umožňuje přístup k datům Power BI, která vkládáte.

    • Použijte models.TokenType.Aad, pokud vkládáte do vaší organizace (uživatel vlastní data).
    • Použijte models.TokenType.Embed, pokud vkládáte data pro zákazníky (aplikace vlastní data).

    Další informace najdete v tématu Vysvětlení různých řešení pro vkládání.

  • type – druh obsahu, který vkládáte. Pro Q&A použijte 'qna'.

  • viewMode – režim vloženého Q&A. K dispozici jsou dva režimy:

    • Interactive – uživatel může zadat otázky. Rozhraní API zobrazí otázky a odpovídajícím způsobem aktualizuje vizuál.
    • ResultOnly Zadáte konkrétní otázku. Toto rozhraní API zobrazí tuto otázku a její vizuál.

Tento příklad ukazuje, jak vložit 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);

Změna zobrazené otázky

Pokud použijete viewModeResultOnly a zadáte otázku, můžete k změně zobrazené otázky použít metodu setQuestion. Rozhraní API pak změní zobrazený vizuál.

Tuto metodu můžete použít pro seznam nejčastějších dotazů. Když uživatel prochází otázkami, můžete zobrazit odpovědi v rámci vloženého prvku.

Třída Q na JavaScriptu PowerBI definuje metodu jako:

setQuestion(question: string): Promise<void>

Parametr question obsahuje otázku v textovém formátu.

Tento příklad ukazuje, jak pomocí této metody změnit zobrazenou otázku:

// 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");

Zachytávání otázek uživatelů

Pokud používáte viewModeInteractive, rozhraní API může aplikaci upozornit, když se zobrazený vizuál změní. Kdykoli se vizuál změní v reakci na aktualizovaný vstupní dotaz, vložená komponenta vygeneruje visualRendered událost. Pokud vaše aplikace naslouchá tomuto typu události, může váš kód reagovat na nový dotaz.

Můžete například zaznamenávat otázky, které uživatelé zadají. Tyto otázky můžete použít později pro účely umělé inteligence nebo telemetrie.

K naslouchání událostem visualRendered použijte kód podobný těmto řádkům:

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

Další informace o naslouchání událostem najdete v tématu Jak zpracovávat události.

Důležité informace a omezení

Vložená funkce Q&A používá schémata dat. V současné době můžete nakonfigurovat pouze jedno schéma, nikoli více schémat.