Powiadomienie w Teams z ankiety Forms z użyciem Power Automate
Scenariusz/wymaganie biznesowe, którym się dziś zajmiemy pojawia się w organizacjach bardzo często. My osobiście wielokrotnie się z nim spotykamy przy współpracy z działami kadr, personalnymi, szkoleń czy ogólnie rzecz biorąc „HR”. Na naszym podwórku zagadnienie to sprowadza się często do badania potrzeb szkoleniowych czy też ewaluacji szkoleń. W innych branżach też bardzo często zachodzi potrzeba na bieżąco monitorowania przesyłanych odpowiedzi z formularzy/ankiet z MS Forms, np.:
- Procedury zgłoszenia serwisowego
- Reklamacji
- Ankiety dot. organizacji eventu firmowego
- … i 1000000 innych pomysłów.
W artykule zajmiemy się zatem kwestią takiego opracowania rozwiązania, żeby po przesłaniu odpowiedzi w MS Forms automatycznie pojawiła się ona w odpowiednim kanale MS Teams. Mamy zatem dwóch aktorów w postaci MS Forms i MS Teams a reżyserem przedstawienia stanie się bardzo popularne narzędzie tj. Power Automate.
Od czego zatem zaczniemy?
W pierwszej kolejności potrzebujemy oczywiście mieć utworzone:
Ankieta MS Forms
Ankietę w MS Forms. W naszym przypadku będzie to ankieta, w której zbieramy informacje o rozmiarze bluzy dla ekipy Imperium Szkoleniowego. Wygląda ona bardzo prosto:
Kanał w MS Teams
Wiadomość o zaznaczonej opcji powinna zostać przesłana bezpośrednio do kanału o nazwie „Gadżety marketingowe”.
W tym właśnie kanale powinna pojawić się każdorazowo informacja o wypełnionej ankiecie wraz ze szczegółami tj. za każdym razem powinna się pojawić informacja o dwóch istotnych dla nas polach z tej ankiety MS Forms tj. Imię i nazwisko oraz rozmiar wybranej bluzy.
Wspomnieliśmy już, że reżyserem całego przedstawienia stanie się Power Automate. To właśnie Power Automate ma za zadanie zautomatyzować proces wymiany informacji pomiędzy formularzem MS Forms a wyświetleniem wpisu w kanale MS Teams.
Zalogujmy się zatem do powerautomate.com i wybierzmy opcję utworzenia nowego przepływu:
Power Automate daje Ci wiele możliwości ułatwiających tworzenie przepływu – możesz skorzystać z szablonów, możesz również opisać żądany efekt i liczyć na pomoc Copilot do utworzenia odpowiedniego procesu. Nam zależy na pełnej elastyczności i wskazaniu w jaki sposób taki przepływ należy budować, dlatego z katalogu dostępnych opcji wybierzmy polecenie Zautomatyzowany przepływ w chmurze (Wyzwalany przez wyznaczone zdarzenie.).
Po kliknięciu tej opcji zostanie wyświetlone okno Utwórz zautomatyzowany przepływ w chmurze. Zautomatyzowany oznacza, że jesteśmy w stanie określić konkretne zdarzenie, które będzie wyzwalać („triggerować”) uruchomienie procesu naszej automatyzacji w Power Automate.
Tworząc przepływ w Powera Automate musimy określić początkowo dwa parametry:
- Nazwa przepływu – przyjazna nazwa, która pozwoli nam zorientować się co może dany przepływ wykonywać. Ważne jest trzymanie odpowiedniej higieny nazw w taki sposób, abyśmy nie mieli problemów z odnalezieniem jego sensu za miesiąc, rok czy dwa.
- Wyzwalacz – (ang. Trigger) – zdarzenie, które ma spowodować uruchomienie tego przepływu. W naszym wypadku będzie to opcja Po przesłaniu nowej odpowiedzi.
Możemy zatem wyobrazić sobie, że taki flow (przepływ) to nic innego jak bieg sztafetowy. W pierwszej kolejności sztafetę dzierży formularz/ankieta MS Forms. W momencie gdy użytkownik zaczyna wypełniać ankietę MS Forms biegnie z pałeczką. Gdy ankieta zostaje zapisana (przesłana) pałeczka jest przekazana dalej. W tym momencie jednak wydarzyło się jeszcze coś czego na biegu sztafetowym nie uświadczymy – w tej pałeczce zostały zapisane szczegóły przesłanej odpowiedzi.
Po kliknięciu polecenia Utwórz zostaniemy przeniesieni na płótno designera procesów. Na środku płótna zobaczymy jeden kafelek z opisem „Po przesłaniu nowej odpowiedzi” oraz wykrzyknikiem z treścią alertu „Nieprawidłowe parametry”.
Informacja o nieprawidłowych parametrach zdecydowanie nie jest czymś co powoduje uśmiech na naszej twarzy. Kliknijmy kafelek tak, żeby jak najszybciej zająć się ustaleniem poprawnych parametrów.
Błąd widzimy, że wynika z braku określenia formularza/ankiety, której zachowanie chcemy śledzić. Wybieramy zatem z rozwijanej listy odpowiedni element MS Forms (zwróć uwagę, że nadanie wcześniej przyjaznej nazwy zdecydowanie ułatwia ten krok).
Po określeniu parametrów klikamy w ikonę „+” pod kafelkiem „Po przesłaniu nowej odpowiedzi” i wybieramy polecenie „Dodaj akcję”.
W oknie dodawania akcji wybieramy Pobierz szczegóły odpowiedzi:
Ta akcja pozwala nam na odczytanie tego co użytkownik wprowadził w formularzu na formsach.
W akcji Pobierz szczegóły odpowiedzi należy ustawić Identyfikator formularza oraz Identyfikator odpowiedzi.
Identyfikator formularz – to nic innego jak nazwa naszej ankiety
Identyfikator odpowiedzi – tutaj sytuacja wydaje się bardziej zagmatwana, ponieważ nie mamy jeszcze identyfikatora żadnej odpowiedzi. Niemniej jednak Power Automate pozwala nam na uzyskanie dynamiczne identyfikatora ostatniej przesłanej odpowiedzi. W tym celu (po wskazaniu Identyfikatora formularza) należy dostać się do zawartości dynamicznej korzystając z ikony błyskawic widocznej na poniższym zrzucie:
Kliknięcie tej ikony wyświetli dodatkowe opcje. W tym wypadku będziemy mogli dostać się do identyfikatora wybierając Identyfikator odpowiedzi (Unikatowy identyfikator odpowiedzi…).
Jesteśmy zatem na etapie gdzie mamy już możliwość reagowania na nowo przesłaną odpowiedź na Formsach, mamy już szczegóły odpowiedzi „schowane” pod ręką. Teraz przyszedł czas, żeby ich użyć i przenieść je w odpowiedniej postaci do czatu w kanale MS Teams. Korzystając zatem kolejny raz ze znaku „+” dodajmy kolejną akcję do naszego przepływu.
Pamiętajmy oczywiście, aby kliknąć plus za ostatnią akcją, w przeciwnym wypadku dodalibyśmy akcję pośredniczącą, która w naszym scenariuszu nie jest do niczego potrzebna. Odszukajmy opcję Opublikuj wiadomość na czacie lub w kanale znajdującą się w akcjach Microsoft Teams.
Ważne!
Jeśli nie tworzyłeś jeszcze do tej pory przepływów w Power Automate z użyciem MS Teams może być konieczne dodanie połączenia do usługi. Jak widać na poniższym zrzucie u mnie takie połączenie już istnieje, gdyby jednak zaszła potrzeba jego zmiany to zawsze można wybrać opcję „Zmień połączenie”.
W opcjach kroku Opublikuj wiadomość na czacie lub w kanale w pierwszej kolejności należy określić, kto będzie publikował taką wiadomość. Standardowo zaznaczona jest opcja Bot przepływu a więc to Power Automate doda odpowiednią informację że przepływ był automatyczny.
W polu Opublikuj w możesz wskazać miejsce, gdzie będzie publikowana wiadomość. Nam zależy na opublikowaniu wiadomości w MS Teams, a precyzyjniej – na konkretnym czacie konkretnego kanału w MS Teams dlatego wybieramy opcję Channel.
Po wskazaniu opcji Channel, Power Automate pozwala nam wskazać zespół oraz kanał, gdzie ma zostać opublikowana wiadomość:
W moim przypadku jest to zatem zespół „Wszyscy” oraz kanał „Gadżety marketingowe”.
Najważniejszym prawdopodobnie elementem jest natomiast kwestia samej wiadomości, która pojawi się w kanale na MS Teams. Nam zależy na skonstruowaniu wiadomości, która będzie zawierała frazę „Kto: imię i nazwisko, Rozmiar bluzy: rozmiar bluzy), gdzie pogrubione elementy powinny zostać zaczytane automatycznie z przesłanej przez użytkownika odpowiedzi.
Będziemy zatem potrzebowali możliwości odczytania szczegółów wiadomości oraz funkcji concat() – funkcja ta pozwala na łączenie ze sobą tekstów.
Klikamy zatem w pole dodawania wiadomości i wybieramy ikonę fx:
W następnym kroku wybieramy funkcję concat(text_1, text_2), która w Power Automate pozwala nam na łączenie ze sobą fragmentów tekstowych (a więc typu string):
W oknie wiadomości zobaczymy zalążek naszej formuły. Ma ona na razie wyłącznie słowo concat(). Podglądając składnię funkcji concat(text_1,text_2?…) możemy zauważyć, że łączyć potrafi ona wiele fragmentów tekstu po oddzieleniu ich przecinkiem. Dlatego podajemy w apostrofach pierwszą frazę stałą a więc 'Kto: ’
Nie zapomnij uwzględnić spacji po dwukropku, w przeciwnym wypadku tekst podpowiedzi zleje się z odpowiedzią.
Po przekazaniu pierwszej części – musimy przejść do kolejnego argumentu dostawiając pojedyczny przecinek (,).
Na tym etapie nasza formuła wygląda następująco:
Teraz czeka nas bardzo ważny i kluczowy krok. Jako kolejny argument do funkcji concat() chcemy przekazać zawartość pobraną z MS Forms dlatego klikamy na pole Zawartość dynamiczna i wybieramy pole z naszej ankiety czyli Imię i nazwisko.
Nasza formuła będzie teraz wyglądać następująco:
Powtarzamy kroki dla rozmiaru bluzy, co daje nam efekt w postaci formuły jak poniżej. Pamiętaj o odpowiednim ujęciu tekstu w apostrofy i oddzieleniu argumentów funkcji pojedynczym przecinkiem.
Przy założeniu, że są to wszystkie parametry naszej wiadomości – klikamy polecenie Dodaj.
Dobrą praktyką jest oczywiście przetestowani przepływu korzystając z przycisku Przetestuj.
Po przetestowaniu zapisujemy przepływ przyciskiem Zapisz:
Od tego momentu nasz przepływ „czuwa” i gdy tylko pojawi się nowa odpowiedź na MS Forms zostanie ona opublikowana w czacie kanału MS Teams:
Power Automate jest genialnym narzędziem, które pozwala w dość prosty sposób (a jestem pewien że udowodniliśmy to w tym artykule) tworzyć automatyzacje pomiędzy usługami Microsoft (i nie tylko!).
Jeśli interesuje Cię rozwój umiejętności w zakresie automatyzacji – sprawdź nasze szkolenie Power Automate.