Integrácia služby Power Automate s webovými lokalitami a aplikáciami
Článok
Vložte službu Power Automate do aplikácie alebo na webovú lokalitu pomocou miniaplikácie služby Flow, aby používatelia získali jednoduchú možnosť automatizácie osobných a pracovných úloh.
Miniaplikácie služby Flow sú prvky iframe umiestnené v dokumente hostiteľa. Tento dokument odkazuje na stránku v návrhárovi Power Automate. Tieto miniaplikácie integrujú konkrétne funkcie služby Power Automate do aplikácie tretích strán.
Miniaplikácie môžu byť jednoduché. Príkladom môže byť miniaplikácia, ktorá vykresľuje zoznam šablón bez komunikácie medzi hostiteľom a prvkom iframe. Miniaplikácie môžu byť aj komplexné. Príkladom môže byť miniaplikácia, ktorá obstaráva postup v cloude zo šablóny a potom aktivuje postup prostredníctvom obojsmernej komunikácie medzi hostiteľom a miniaplikáciou.
Predpoklady
Konto Microsoft alebo
pracovné alebo školské konto
Použitie neoverenej miniaplikácie
Ak chcete použiť neoverenú miniaplikáciu šablón, vložte ju priamo do hostiteľskej aplikácie pomocou prvku iframe. Nepotrebujete súpravu JS SDK ani prístupový token.
Zobrazenie šablón pre vaše scenáre
Ak chcete začať, pridajte tento kód, pomocou ktorého sa zobrazia šablóny Power Automate na vašej webovej lokalite:
<iframe src="https://flow.microsoft.com/{locale}/widgets/templates/?q={search term}
&pagesize={number of templates}&destination={destination}&category={category}"></iframe>
Parameter
Popis
locale
Štvorpísmenový kód jazyka a oblasti na zobrazenie šablóny. Napríklad en-us predstavuje americkú angličtinu a de-de predstavuje nemčinu.
search term
Hľadaný výraz pre šablóny, ktoré chcete zobraziť. Ak chcete zobraziť napríklad šablóny pre SharePoint, vyhľadajte výraz SharePoint.
number of templates
Počet šablón, ktoré chcete zobraziť.
destination
Stránka, ktorá sa otvorí, keď používatelia vyberú šablónu. Zadajte hodnotu details, ak chcete zobraziť podrobnosti o šablóne, alebo zadajte hodnotu new, ak chcete otvoriť návrhára Power Automate.
category
Filtruje danú kategóriu šablón.
parameters.{name}
Ďalší kontext, ktorý sa má odovzdať do postupu.
Ak má cieľový parameter hodnotu new, návrhár Power Automate sa otvorí po výbere šablóny používateľom. Používatelia potom môžu vytvoriť postup v cloude v návrhárovi. Ak chcete mať úplné pracovné prostredie z miniaplikácie, pozrite si nasledujúcu časť.
Odovzdanie ďalších parametrov do šablóny postupu
Ak sa používateľ nachádza na vašej webovej lokalite alebo v aplikácii v určitom kontexte, možno budete chcieť odovzdať tento kontext do postupu. Napríklad používateľ môže otvoriť šablónu pre Pri vytvorení položky pri prezeraní určitého zoznamu v systéme SharePoint. Pomocou týchto krokov odovzdajte do postupu ID daného zoznamu ako parameter:
Pred publikovaním šablóny postupu v nej definujte parameter. Parameter vyzerá takto: @{parameters('parameter_name')}.
Odovzdajte parameter v reťazci dotazu prvku iframe src. Ak máte napríklad parameter s názvom listName, pridajte ¶meters.listName={the name of the list}.
Úplná ukážka
Aj chcete zobraziť prvé štyri šablóny SharePoint v nemčine a spustiť používateľa so zoznamom myCoolList, použite tento kód:
Nasledujúca tabuľka zobrazuje zoznam miniaplikácií služby Power Automate, ktoré podporujú úplné pracovné prostredie v rámci miniaplikácie prostredníctvom prístupového tokenu overenia používateľa. Na vloženie miniaplikácií a poskytnutie požadovaného tokenu overenia používateľa budete musieť použiť súpravu Power Automate Javascript Software Developer Kit (JS SDK).
Typ miniaplikácie
Podporovaná funkcia
flows
Zobrazí sa zoznam postupov na karte pre osobné a zdieľané postupy. Upraví sa existujúci postup alebo sa vytvorí nový postup zo šablóny či prázdny nový postup.
flowCreation
Vytvorí sa postup v cloude z ID šablóny, ktoré poskytuje hostiteľská aplikácia.
runtime
Spustí sa manuálny alebo hybridný spúšťač postupu poskytnutý hostiteľskou aplikáciou.
approvalCenter
Vložia sa žiadosti o schválenie a odoslané schválenia.
templates
Zobrazí sa zoznam šablón. Používateľ niektorú vyberie, aby vytvoril nový postup.
S použitím overenej súpravy Flow SDK môžete používateľom povoliť vytvárať a spravovať postupy priamo z vašej webovej lokality alebo aplikácie (namiesto prechodu do služby Power Automate). Ak chcete použiť overenú súpravu SDK, musíte prihlásiť používateľa s jeho kontom Microsoft alebo Azure Active Directory.
Poznámka
Počas používania miniaplikácií nemožno značku Power Automate nijako skryť.
Architektúra miniaplikácie
Miniaplikácie služby Power Automate fungujú po vložení prvku iframe, ktorý odkazuje službu Power Automate do hostiteľskej aplikácie. Hostiteľ poskytne prístupový token, ktorý vyžaduje miniaplikácia služby Power Automate. Súprava JS SDK služby Power Automate umožňuje hostiteľskej aplikácii inicializovať a spravovať životný cyklus miniaplikácie.
Podrobnosti o súprave JS SDK
Tím Power Automate poskytuje súpravu JS SDK na podporu integrácie miniaplikácií služby Flow v aplikáciách tretích strán. Súprava JS SDK služby Flow je k dispozícii ako verejné prepojenie v službe Flow a umožňuje hostiteľskej aplikácii spracovať udalosti z miniaplikácie a pracovať s aplikáciou Flow odosielaním akcií do miniaplikácie. Udalosti miniaplikácie a akcie sú špecifické pre typ miniaplikácie.
Inicializácia miniaplikácie
Odkaz na súpravu JS SDK služby Flow treba pridať do hostiteľskej aplikácie pred inicializáciou miniaplikácie.
Miestne nastavenie klienta pre miniaplikáciu (predvolene nastavené na hodnotu en-Us, ak nebolo špecifikované)
Po vytvorení inštancie JS SDK môžete inicializovať a vložiť miniaplikáciu služby Power Automate do nadradeného prvku v aplikácii hostiteľa. Ak to chcete vykonať, pridajte prvok HTML div:
<div id="flowDiv" class="flowContainer"></div>
Potom inicializujte miniaplikáciu služby Power Automate pomocou metódy JS SDK renderWidget(). Nezabudnite zadať typ miniaplikácie a príslušné nastavenia.
ID prvku DIV na stránke hostiteľa, do ktorej sa vloží miniaplikácia.
environmentId
Voliteľné
Miniaplikácie potrebujú prostredie ID. Ak ID nezadáte, použije sa predvolené prostredie.
flowsSettings
Voliteľné
Objekt nastavenia Power Automate
templatesSettings
Voliteľné
Objekt nastavenia Šablóna
approvalCenterSettings
Voliteľné
Objekt nastavenia Schválenie
Prístupové tokeny
Po spustení súpravy JS SDK renderWidget() inicializuje JS SDK prvok iframe, ktorý odkazuje na URL adresu miniaplikácie služby Power Automate. Táto URL adresa obsahuje všetky nastavenia v parametroch reťazca dotazu. Hostiteľská aplikácia potrebuje získať a Power Automate prístupový token pre používateľa (Azure Active Directory Token JWT s publikomhttps://service.flow.microsoft.com) pred inicializáciou miniaplikácia. Miniaplikácia vyvolá udalosť GET_ACCESS_TOKEN na vyžiadanie prístupového tokenu od hostiteľa. Hostiteľ musí spracovať udalosť a odovzdať token miniaplikácii:
Aplikácia hostiteľa je zodpovedná za správu tokenu a jeho odovzdanie s platným dátum uplynutia platnosti do miniaplikácie po vyžiadaní. Ak je miniaplikácia otvorená dlhší čas, hostiteľ by mal skontrolovať platnosť tokenu a v prípade potreby ho pred odovzdaním do miniaplikácie obnoviť.
Zisťovanie pripravenosti miniaplikácie
Po úspešnej inicializácii miniaplikácia vytvorí udalosť na oznámenie pripravenosti miniaplikácie. Hostiteľ si môže vypočuť udalosť WIDGET_READY a spustiť všetky ostatné kódy hostiteľa.
widget.listen("WIDGET_READY", function() {
console.log("The flow widget is now ready.");
// other host code on widget ready
});
Nastavenia miniaplikácie
FlowsSettings
FlowsSettings možno použiť na prispôsobenie funkcií miniaplikácie služby Power Automate.
Použije sa identifikátor GIUD šablóny, keď používateľ vyberie tlačidlo Vytvoriť od začiatku v miniaplikácii služby Flow.
flowsFilter
Voliteľné
Miniaplikácia služby Power Automate použije zadaný filter pri vytváraní zoznamu postupov. Môžete napríklad zobraziť postupy, ktoré odkazujú na konkrétnu lokalitu SharePoint. flowsFilter: "operations/any(operation: operation/sharepoint.site eq 'https://microsoft.sharepoint.com/teams/ProcessSimple' )"
tab
Voliteľné
Predvolene aktívna karta, ktorá sa zobrazí v miniaplikácii služby Power Automate. Napríklad Položka tab:'sharedFlows' zobrazí kartu Tím a položka tab:'myFlows' zobrazí kartu Moje postupy.
TemplatesSettings
Vzťahuje sa na všetky miniaplikácie umožňujúce vytvorenie postupov zo šablóny vrátane miniaplikácii Postupy, FlowCreation a Šablóny.
Navrhnú sa časové parametre na použitie pri vytvorení postupu v cloude zo šablóny, napríklad: defaultParams: {'parameters.sharepoint.site': 'https://microsoft.sharepoint.com/teams/ProcessSimple', 'parameters.sharepoint.list': 'b3a5baa8-fe94-44ca-a6f0-270d9f821668' }
destination
Voliteľné
Platné hodnoty sú „new“ alebo „details“. Pri nastavení na hodnotu details sa po vytvorení postupu v cloude zo šablóny zobrazí stránka s podrobnosťami.
pageSize
Voliteľné
Počet šablón, ktorý sa má zobraziť. Predvolená veľkosť = 6
searchTerm
Voliteľné
Zobrazia sa šablóny, ktoré sa zhodujú so zadaným hľadaným výrazom.
Pri nastavení na hodnotu true miniaplikácia skryje prijaté a odoslané prepojenia na schválenie
approvalsFilter
Voliteľné
Miniaplikácia schválenia použije zadaný filter schválenia pri vytváraní zoznamu schválení, napríklad: approvalsFilter: 'properties/itemlink eq \'https://microsoft.sharepoint.com/teams/ProcessSimple/_layouts/15/listform.aspx?PageType=4&ListId=737e30a6-5bc4-4e9c-bcdc-d34c5c57d938&ID=3&ContentTypeID=0x010010B708969A9C16408696FD23801531C6\''
approvalsFilter: 'properties/itemlinkencoded eq \'{Your base64 encoded item link url} \''
tab
Voliteľné
Predvolene aktívna karta, ktorá sa zobrazí v miniaplikácii služby Flow. Platné hodnoty: „receivedApprovals“, „sentApprovals“
showSimpleEmptyPage
Voliteľné
Zobrazí prázdnu stránku v prípade žiadnych schválení.
hideInfoPaneCloseButton
Voliteľné
Skryje tlačidlo Zavrieť na informačnej table (alebo už hostiteľ má tlačidlo Zavrieť).
Udalosti miniaplikácie
Miniaplikácia služby Power Automate podporuje udalosti, ktoré umožnia hostiteľovi sledovať udalosti životného cyklu miniaplikácie. Miniaplikácia služby Power Automate podporuje dva typy udalostí: udalosti s jednosmerným oznámením (napríklad Miniaplikácia_Ready) a udalosti aktivované z miniaplikácie z načítaných údajov od hostiteľa (Get_Access_Token). Hostiteľ musí použiť metódu widget.listen() na konkrétne udalosti vyvolané z miniaplikácie.
Udalosť GET_STRINGS umožňuje upraviť text pre niektoré prvky používateľského rozhrania zobrazené v miniaplikácii. Tieto reťazce možno prispôsobiť:
Kľúč reťazca
Použitie v miniaplikácii
FLOW_CREATION_CREATE_BUTTON
Text zobrazený na tlačidle vytvorenia postupu v miniaplikácii vytvorenia postupu aj miniaplikácii modulu runtime
FLOW_CREATION_CUSTOM_FLOW_NAME
Počiatočná hodnota, ktorá sa použije ako názov postupu v miniaplikácii vytvorenia postupu. Používa sa len vtedy, keď je zapnuté nastavenie allowCustomFlowName.
FLOW_CREATION_HEADER
Hlavička, ktorá sa použije pri vytváraní postupu v cloude v miniaplikácii vytvorenia postupu aj miniaplikácii modulu runtime
INVOKE_FLOW_HEADER
Hlavička, ktorá sa použije pri vyvolávaní postupu v cloude v miniaplikácii modulu runtime
INVOKE_FLOW_RUN_FLOW_BUTTON
Text zobrazený na tlačidle, ktorý sa použije na vyvolanie alebo spustenie postupu v cloude v miniaplikácii modulu runtime
Príklad
Zavolanie funkcie widgetDoneCallback, ktorá odovzdá objekt JSON s pármi kľúča a hodnoty pre kľúč reťazca, a text, ktorým sa prepíše predvolená hodnota.
widget.listen("GET_STRINGS", function(requestParam, widgetDoneCallback) {
widgetDoneCallback(null, {
"FLOW_CREATION_HEADER": "<string override would go here>",
"INVOKE_FLOW_RUN_FLOW_BUTTON": "<string override would go here>"
});
});
Akcie miniaplikácie
Hostiteľ používa akcie miniaplikácie na odoslanie konkrétnej akcie alebo správy do miniaplikácie. Miniaplikácia JS SDK poskytuje metódu notify() na odoslanie správy alebo údajovej časti formátu JSON do miniaplikácie. Každá akcia miniaplikácie podporuje špecifický podpis údajovej časti.
Vytvorí postup v cloude pre vybratú definíciu šablóny
{ templateDefinition: string }
closeWidget
Zruší všetky čakajúce aktivity a vyvolá udalosť WIDGET_CLOSE
Miniaplikácia schválenia
Akcia miniaplikácie
Podrobnosti
Rozhranie parametra
closeInfoPane
Zavrie informačnú tablu so zobrazením podrobností schválenia
Nedostupné
Konfigurácia klientskej aplikácie
Budete musieť nakonfigurovať klientsku aplikáciu s rozsahmi služby Flow (delegované povolenia). Ak aplikácia Azure Active Directory (AAD) použitá na integráciu miniaplikácie používa autorizačný postup code grant, aplikácia AAD musí byť vopred nakonfigurovaná s delegovanými povoleniami, ktoré Power Automate podporuje. Toto poskytuje delegované povolenia, ktoré umožňujú aplikácii:
spravovať schválenia,
čítať schválenia,
čítať aktivity,
spravovať postupy,
čítať postupy.
Pomocou týchto krokov vyberte jedno alebo viacero delegovaných povolení:
Vyberte položku Registrácie aplikácie v časti Spravovať.
Zadajte aplikáciu tretej strany, ktorá sa má nakonfigurovať pre rozsahy služby Flow.
Vyberte Nastavenia.
Vyberte položku Požadované povolenia v časti Prístup k rozhraniu API/.
Stlačte možnosť Pridať.
Vyberte položku Vybrať rozhranie API.
Vyhľadajte a vyberte službu Power Automate. Poznámka: Pred zobrazením služby Power Automate musí mať váš nájomník aspoň jedného používateľa AAD prihláseného na portáli Flow (https://flow.microsoft.com).
Vyberte požadované rozsahy služby Flow pre aplikáciu a potom vyberte položku Uložiť.
Aplikácie teraz získa token služby Flow obsahujúci delegované povolenia v požiadavke 'scp v tokene JWT.
Vzorová aplikácia vkladajúca miniaplikácie služby Flow
Vzorová aplikácia Single Page Application (SPA) jazyka JavaScript je uvedená v časti prostriedkov, aby ste mohli experimentovať s vkladaním miniaplikácií služby Flow na stránku hostiteľa. Používanie vzorovej aplikácie vyžaduje registráciu aplikácie AAD s povoleným implicitným udeleným postupom.
Na ľavej navigačnej table vyberte položku Azure Active Directory. Potom vyberte položky App registrations (Preview) (Registrácie aplikácie (Preview)) > New registration (Nová registrácia).
Keď sa zobrazí stránka Registrovanie aplikácie, zadajte názov aplikácie.
V časti Podporované typy kont vyberte v ktoromkoľvek organizačnom adresári položku Kontá.
V časti URL adresa presmerovania vyberte webovú platformu a nastavte hodnotu na URL adresu aplikácie' podľa svojho webového servera. Túto hodnotu nakonfigurujte na hodnotu http://localhost:30662/, aby sa spustila vzorová aplikácia.
Vyberte položku Registrovať.
Na stránke prehľadu aplikácie si poznačte hodnotu ID aplikácie (klienta).
Povolenie ukážky vyžaduje implicitný udelený postup. Na ľavej navigačnej table zaregistrovanej aplikácie vyberte položku Overovanie.
V ponuke Rozšírené nastavenia v časti Implicitné udelenie začiarknite obe začiarkavacie políčka Tokeny ID a Prístupové tokeny. Tokeny ID a prístupové tokeny sú povinné, keďže táto aplikácia musí prihlásiť používateľov a zavolať rozhranie Flow API.
Vyberte položku Uložiť.
Spustenie ukážky
Stiahnite si ukážku a skopírujte ju do lokálneho priečinka v zariadení.
Otvorte súbor index.html v priečinku FlowSDKSample a upravte položku applicationConfig tak, aby sa aktualizovala položka clientID pre ID aplikácie, ktoré ste zaregistrovali skôr.
Vzorová aplikácia je nakonfigurovaná na používanie rozsahov služby Flow Flows.Read.All a Flow.Manage.All. Ďalšie rozsahy môžete nakonfigurovať aktualizáciou vlastnosti flowScopes v objekte applicationConfig.
Spustením týchto príkazov nainštalujte závislosť a spustite vzorovú aplikáciu:
> npm install > node server.js
Otvorte prehliadač a potom zadajte reťazec http://localhost:30662.
Výberom tlačidla Prihlásiť sa vykonajte overenie v službe AAD a získajte token na prístup k postupu v cloude.
Textové pole Prístupový token obsahuje prístupový token.
Vyberte položku Načítať miniaplikáciu Postupy alebo Načítať miniaplikáciu Šablóny na vloženie príslušných miniaplikácií.