Licencovanie a transakčné uplatnenie (verzia Public Preview)

Keď vytvoríte vizuály služby Power BI na stiahnutie na lokalite AppSource, môžete teraz spravovať a uplatňovať ich licencie pomocou systémov Spoločnosti Microsoft. Koncový používateľ priraďuje a spravuje licencie pomocou známych nástrojov, ako je napríklad Centrum spravovania služby Microsoft 365, a rozhranie API na licencovanie vám umožňuje tieto licencie vynútiť a zabezpečiť, aby vizuály mohli vykresliť len používatelia s licenciami.

Proces presadzovania licencií

Nasledujúca tabuľka znázorňuje kroky v rámci spravovania licencií na vizuály prostredníctvom spoločnosti Microsoft:

Krok Podrobnosti
Vytvorenie ponuky v Centre pre partnerov Vyberte si, či chcete obchodovať prostredníctvom systému microsoft commerce. Povoľte spoločnosti Microsoft spravovať licencie. Nastavte ceny a dostupnosť.
Pridanie uplatnenia licencie do balíka vizuálov služby Power BI Vytvorte alebo znova nakonfigurujte balík tak, aby používal licenciu runtime služby Power BI, ktorá vynucuje licencovanie podľa prístupu každého používateľa.
Zákazníci objavia vašu ponuku v službe AppSource a zakúpia si predplatné Keď si zákazníci zakúpia vašu ponuku v službe AppSource, získajú aj licencie na vizuál služby Power BI.
Zákazníci spravujú svoje predplatné a priraďujú alebo nepriraďujú používateľské licencie. Zákazníci spravujú predplatné a priraďujú licencie na tieto vizuály a ponuky v Centrum spravovania služby Microsoft 365 rovnako ako v prípade ktoréhokoľvek iného predplatného, napríklad balíka Office alebo služby Power BI.
Vynútenie kontrol modulu runtime Umožnite svojim zákazníkom jednotný zážitok s použitím našich preddeplatných rozhraní API na vynútenie kontrol licencií modulu runtime.
Zobrazenie zostáv na rast paliva Získajte prehľad o výnosoch, informáciách o výplate, objednávke a podrobnostiach o licenciách. Zobrazte informácie o zakúpených, obnovených a zrušených licenciách a objednávok v priebehu času a podľa geografickej polohy.

Rozhranie API licencovania

Rozhranie API na licencovanie umožňuje vývojárom vizuálov služby Power BI vynútiť licencie na vizuály služby Power BI. Rozhranie API podporuje načítanie informácií o licenciách na vizuály služby Power BI, ktoré sú priradené používateľovi služby Power BI. Tiež umožňuje spustiť oznámenia súvisiace s licenciami, ktoré sa zobrazia vo vizuáli služby Power BI, a informovať používateľa, že si musí kúpiť chýbajúce licencie. Vizuál by nemal zobrazovať vlastné licenčné vlastnosti. Namiesto toho používajte jedno z preddefinovaných oznámení podporovaných službou Power BI, ako je podrobne popísané nižšie.

Ďalšie informácie o licencovaní služby Power BI nájdete v téme Vynútenie licencie.

Poznámka

Rozhranie API licencovania je k dispozícii od verzie 4.7. Ak chcete zistiť, ktorú verziu používate, pozrite si apiVersion pbiviz.json súbore.

Načítanie plánov služieb vizuálu, ktoré sú priradené aktívnemu používateľovi

Ak chcete získať priradené plány služieb, pridajte volanie do getAvailableServicePlans služby (dostupné cez IVisualLicenseManager). Z hľadiska výkonu sa pokúste načítať licencie raz, ideálne v volaniach constructorinit alebo, a výsledok uložte.
Po načítaní licencií sa tieto licencie uložia do vyrovnávacej pamäte na strane hostiteľa služby Power BI počas relácie služby Power BI a všetky ďalšie volania tej istej služby vrátia údaje vo vyrovnávacej pamäti.

export interface IVisualLicenseManager {
        getAvailableServicePlans(): IPromise<powerbi.extensibility.visual.LicenseInfoResult>;
    }

Načítanie licencií môže byť dlhá operácia, a preto getAvailableServicePlans je volanie asynchrónne volanie a malo by sa spracovať ako také vo vašom kóde.
Ako odpoveď na volanie metódy LicenseInfoResult sa vráti objekt.

export interface LicenseInfoResult {
        plans: ServicePlan[] | undefined;
        isLicenseUnsupportedEnv: boolean; 
        isLicenseInfoAvailable: boolean; 
    }
  • plans – pole plánov služieb zakúpených aktívnym používateľom pre tento vizuál. (Licencie zakúpené pre všetky ostatné vizuály nie sú súčasťou odpovede.)
    ServicePlan obsahuje identifikátor služby (spIdentifier) a jeho stav (ServicePlanState).

    • spIdentifier: hodnota reťazca ID služby vygenerovaná pri konfigurácii plánov ponuky v Centre pre partnerov (pozrite si nasledujúci príklad). Screenshot showing an example of a Service ID string.

    • state – enum (ServicePlanState), ktorý predstavuje stav priradených plánov.
      Podporovaný plán služieb uvádza:

      State Description
      Neaktívne Označuje, že licencia nie je aktívna a nemala by sa používať na poskytovanie výhod.
      Aktívne Označuje, že licencia je aktívna a môže sa použiť na poskytovanie výhod.
      Upozornenie Označuje, že licencia je v odklade pravdepodobne z dôvodu porušenia platby.
      Pozastavené Označuje, že licencia je pravdepodobne pozastavená z dôvodu porušenia platby.
      Neznáme Sentinelová hodnota.

      Iba aktívne stavy a upozornenia predstavujú použiteľnú licenciu. Všetky ostatné štáty by sa mali považovať za nevýznamné pre použiteľnú licenciu.

  • isLicenseUnsupportedEnv – označuje, že vizuál sa vykresľuje v prostredí služby Power BI, ktoré nepodporuje správu alebo uplatňovanie licencií. V súčasnosti nasledujúce prostredia služby Power BI nepodporujú správu licencií ani uplatňovanie licencií:

    • Embedded – publikovať na webe, vkladať PaaS
    • Národné/regionálne cloudy (závisí od všeobecnej podpory transakčnej dostupnosti v národných/regionálnych cloudoch)
    • RS Server (žiadna plánovaná podpora)
    • Exportovanie (PDF\PPT) pomocou rozhrania REST API
  • isLicenseInfoAvailable – udáva, či sa informácie o licenciách dajú načítať. Zlyhanie načítania licencií môže nastať v prípade, že používateľ aplikácie Power BI Desktop nie je prihlásený alebo nie je pripojený na internet (offline). V prípade webu môže načítanie licencií zlyhať z dôvodu dočasného výpadku služby.

Príklad volania getAvailableServicePlans (použitie ID služby na obrázku vyššie):

this.licenseManager.getAvailableServicePlans().then((result: LicenseInfoResult) => {
            this.notificationType = result.isLicenseUnsupportedEnv ?  powerbi.LicenseNotificationType.UnsupportedEnv : powerbi.LicenseNotificationType.General;
            this.hasServicePlans = !!(result.plans && result.plans.length && result.plans[0].spIdentifier == "test_isvconnect1599092224747.powerbivisualtransact.plan1" && 
                ( result.plans[0].state == powerbi.ServicePlanState.Active ||  result.plans[0].state == powerbi.ServicePlanState.Warning));
            
            // display notification if the user doesn't have licenses
            if (!this.hasServicePlans) {
                this.licenseManager.notifyLicenseRequired(this.notificationType).then((value) => {
                    if (value) {
                        this.isIconDisplayed = true;
                    }
                }).catch((err) => {
                    console.log('ERROR', err);
                })
            }
        }).catch((err) => {
            this.hasServicePlans = undefined;
            console.log(err);
        });

Upozornenie používateľa, že chýbajú požadované licencie

Platforma Power BI poskytuje niekoľko ihneď zadaných možností, ktoré možno použiť na oznamovanie:

  • Licencie by ste si mali zakúpiť, aby ste mohli využívať všetky možnosti vizuálu.
  • Funkcia konkrétneho vizuálu je blokovaná z dôvodu chýbajúcich licencií
  • Celý vizuál je zablokovaný z dôvodu chýbajúcich licencií
  • Celý vizuál je blokovaný, pretože prostredie služby Power BI, ktoré sa používa, nepodporuje správu licencií\presadzovanie
export interface IVisualLicenseManager {
        notifyLicenseRequired(notificationType: LicenseNotificationType): IPromise<boolean>;
        notifyFeatureBlocked(tooltip: string): IPromise<boolean>;
        clearLicenseNotification(): IPromise<boolean>;
    }

Ikona Všeobecné označujúca, že chýba požadovaná licencia

Pomocou notifyLicenseRequired volania s LicenseNotificationType.General zobrazíte ikonu ako súčasť kontajnera vizuálu.
Po spustení sa ikona zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevolá alebo notifyLicenseRequired sa nevolá.

Poznámka

Oznámenie LicenseNotificationType.General sa vynucuje len vtedy, keď to platí: podporované pre prostredie licencovania a scenáre úpravy služby Power BI. Volanie v nepodporovanom prostredí alebo v prípade, že zostava je v režime na čítanie alebo na tabuli, nepoužije ikonu a vráti sa false v odpovedi volania.

Príklad zobrazenia vizuálu obsahujúceho ikonu "licencie sú povinné":

visual display containing the

visual display containing the

Prekrýva zobrazenie vizuálu chýbajúcim oznámením o licencii

Pomocou volania funkcie notifyLicenseRequired použite funkciu s LicenseNotificationType.VisualIsBlocked cieľom prekrývania zobrazenia vizuálu oznámením, že vizuál je blokovaný, pretože sa našli chýbajúce požadované licencie.
Po spustení sa toto oznámenie zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevyvolá alebo notifyLicenseRequired kým sa nevolá.

Príklad zobrazenia vizuálu obsahujúceho oznámenie o zablokovaní vizuálu. V aplikácii Power BI Desktop sa zobrazí len možnosť Získať licenciu :

Visual display containing the *visual blocked* notification.

Prekrýva zobrazenie vizuálu s oznámením o nepodporovanom prostredí

Použite notifyLicenseRequired volanie s LicenseNotificationType.UnsupportedEnv cieľom prekrývať zobrazenie vizuálu s oznámením, že vizuál je blokovaný, pretože používaná služba Power BI nepodporuje správu licencií\presadzovanie.
Po spustení sa ikona zachová počas celej životnosti vizuálu, kým clearLicenseNotification sa nevolá alebo notifyLicenseRequired sa nevolá.

Poznámka

Oznámenie LicenseNotificationType.UnsupportedEnv sa vynucuje len pri volaní v kontexte nepodporovaného prostredia licencovania. Volanie v inom prostredí nepoužije oznámenie a vráti sa false v odpovedi hovoru.

Príklad zobrazenia vizuálu obsahujúceho oznámenie Nepodporované prostredie:

visual display containing the

Zobrazenie bannera s oznámením, že nie je možné použiť funkciu konkrétneho vizuálu

Pri použití konkrétnej funkcie vizuálu sa vyžadujú licencie, ktoré chýbajú, môžete použiť notifyFeatureBlocked volanie, ktoré zobrazí pruh ako súčasť kontajnera vizuálu. Banner podporuje aj vlastný popis, ktorý môžete nastaviť vy a použitý na poskytnutie ďalších informácií o funkcii, ktorá spustila oznámenie.

Poznámka

Oznámenie o zablokovaní funkcie sa vynúti len v kontexte podporovaného licenčného prostredia a v prípade, že sa nepoužije prekrývajúce prekrývanie (LicenseNotificationType.UnsupportedEnv, LicenseNotificationType.VisualIsBlocked). Volanie tohto oznámenia v nepodporovanom prostredí nepoužije oznámenie a vráti odpoveď false hovoru.

Poznámka

Na podporu lokalizovaného prostredia služby Power BI odporúčame zachovať lokalizované verzie popisov, ktoré sa používajú. Ak chcete načítať jazyk miestnych nastavení služby Power BI, použite rozhranie API lokalizácie.

Po spustení sa banner zobrazí 10 sekúnd alebo kým sa nespustí iný banner "feature blocked", alebo kým clearLicenseNotification sa nezavolá (čo príde na prvom mieste).

Príklad zobrazenia vizuálu obsahujúceho bannerové oznámenie "feature blocked" (blokované funkcie):

visual display containing the

Testovanie licencovaného vizuálu

Testovanie licencovaného vizuálu sa skončí pred jeho zverejnením:

  • Ak vytvárate úplne novú ponuku, pridajte vizuál ako súkromný plán pre testovacie konto zákazníka. Ponuka bude viditeľná len pre toto testovacie konto na nákup. Pomocou tohto konta overte ponuku ešte pred jej zverejnením.
  • Ak je váš vizuál už v službe AppSource k dispozícii a chcete ho inovovať na licencovaný vizuál, nemôžete z neho vytvoriť súkromný plán, pretože skryje vizuál zo služby AppSource a vaši súčasní používatelia k nemu nebudú mať prístup. V súčasnosti neexistuje spôsob, ako otestovať koniec publikovaného vizuálu. Otestujte ho rovnakým spôsobom, ako ste otestovali pôvodný vizuál na lokalite AppSource, keď ste zosmiešnili hodnotu rozhrania API licencovania, aby ste skontrolovali rôzne možnosti.

Dôležité informácie a obmedzenia

  • Popis bannera s funkciami je obmedzený číslom 500 znakov.
  • Popis bannera s funkciami vyžaduje lokalizáciu.
  • Bundling licencií (t. j. jedna licencia, ktorá sa vzťahuje na viaceré ponuky od toho istého vydavateľa) zatiaľ nie je podporovaná.

Publikovanie vlastného vizuálu služby Power BI

Máte ďalšie otázky? Skúste sa spýtať Komunita Power BI