Integracja platformy WEBCON z aplikacją MS Teams

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji: 2022 R1 i powyżej; autor: Konrad Krawczyk

Dokumentacja powiązana

Szczegółowy opis funkcjonalności wymienionych w niniejszym artykule oraz ich konfiguracji można znaleźć w następujących artykułach:

Wprowadzenie

W wielu organizacjach centrum komunikacji zespołów projektowych i operacyjnych stanowi Microsoft Teams. Platforma WEBCON BPS do cyfryzacji i automatyzacji procesów biznesowych oferuje szerokie możliwości integracji ze wspomnianym narzędziem.

W niniejszym artykule skupiono się na  aspektach integracji, opisując sposób:

  • automatycznego przesyłania wiadomości do zespołu w Microsoft Teams zawierającej informacje pochodzące z formularza WEBCON (sygnatura, link do elementu, decyzja);
  • tworzenia spotkania w kalendarzu Teams dla członków zespołu projektowego.

UWAGA: szczegółowe informacje dotyczące tworzenia zespołów za pomocą narzędzia Microsoft Graph zawarto artykule Integracja Microsoft Teams z Microsoft Graph dostępnym na blogu technicznym KB.

Przypadek biznesowy

W przykładowym obiegu, w którym zatwierdzane są projekty IT, po podjęciu decyzji o realizacji projektu następuje automatyczne wysłanie powiadomienia do odpowiedniej grupy w Microsoft Teams i przesłanie zaproszenia na spotkanie rozpoczynające projekt.

 

Schemat obiegu

 

W wiadomości przesyłanej do zespołu znajdują się kluczowe informacje pochodzące z formularza WEBCON, takie jak:

  • sygnatura projektu;
  • bezpośredni link do formularza;
  • informacja o podjętej decyzji.

Przykładowy obieg w kroku zatwierdzenia składa się z następujących pól:

  • nazwy projektu;
  • oceny technicznej projektu;
  • zespołu do którego wysłane zostanie powiadomienie;
  • czasu na realizacje;
  • daty spotkania.

 

Formularz w kroku zatwierdzenia wniosku IT

 

Wysyłanie wiadomości do zespołu

Aby możliwe było przesłanie wiadomości do zespołu na platformie Teams, w pierwszej kolejności należy stworzyć aplikacje w witrynie Azure portal z następującymi uprawnieniami:

 

Uprawnienia aplikacji w Azure portal

 

Po utworzeniu aplikacji w witrynie Azure portal i nadaniu jej odpowiednich uprawnień (ChannelMessage.Send), kolejnym krokiem jest konfiguracja akcji w WEBCON, która umożliwi przesyłanie wiadomości do zespołu na platformie Microsoft Teams.

Standardowa konfiguracja zakłada wysyłanie wiadomości w kontekście osoby obsługującej formularz. W tym celu na formularzu należy dodać atrybut „Autentykacja OAuth2”, który pozwala uzyskać token dostępu w imieniu użytkownika. Dzięki temu wiadomość w narzędziu Teams będzie przesyłana poprzez profil danego użytkownika. Szczegółowe informacje dotyczące konfiguracji tego atrybutu znajdują się w artykule Atrybut typu Autentykacja OAuth2 – zastosowanie dostępnym na bloku technicznym KB.

Po dodaniu atrybutu typu „Autentykacja OAuth2” na formularzu kolejnym krokiem jest jego odpowiednia konfiguracja. W tym celu należy przejść do konfiguracji połączeń OAuth2 w WEBCON BPS Designer Studio.

W zakładce Źródła danychAutentykacjeOAuth2 User -> API  należy utworzyć nowe uwierzytelnienie, które będzie wykorzystywane do potwierdzania tożsamości użytkownika względem Microsoft Graph API. Uwierzytelnienie to należy skonfigurować w następujący sposób:

 

Parametr Wartość
Autoryzacja (adres URL) https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize
Token (endpoint) https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token
Zakres (scopes) openid, profile, email

Parametry uwierzytelnienia

 

Konfiguracja uwierzytelnienia w kontekście użytkownika

 

Po skonfigurowaniu uwierzytelnienia w WEBCON należy go wskazać podczas tworzenia nowego połączenia w źródłach danych.

W tym celu należy:

  1. przejść do węzła Połączenia w zakładce Źródła danych;
  2. zaznaczyć połączenie REST Web Service;
  3. utworzyć nowe połączenie;
  4. w sekcji dotyczącej typu uwierzytelnienia wybrać wcześniej skonfigurowaną metodę uwierzytelniania.

 

Konfiguracja połączenia wykorzystującego uwierzytelnianie typu oauth2 w kontekście użytkownika

 

Po skonfigurowaniu połączenia w konfiguracji atrybutu „Autentykacja OAuth2” należy wskazać je jako źródło autoryzacji. Dzięki temu użytkownik będzie mógł się uwierzytelnić i uzyskać token dostępowy do Microsoft Graph API, który następnie zostanie przekazany akcji wysyłki wiadomości na platformę Teams.

 

Konfiguracja atrybutu Autoryzacja OAuth2

 

Ostatnim etapem konfiguracji jest utworzenie akcji wysyłki wiadomości za pomocą akcji Wywołaj REST Web service.  W zakładce Uwierzytelnianie okna konfiguracji akcji należy wskazać połączenie, które wskazano uprzednio w atrybucie „Autentykacja OAuth2”.

 

Konfiguracja uwierzytelnienia akcji wysyłającej wiadomości na platformę Teams w kontekście użytkownika z formularza

 

Następnie, w zakładce Dane żądania, należy przystąpić do konfiguracji parametrów wywołania:

 

Parametr Wartość
Typ metody HTTP Post
URL / suffix żądania REST * /teams/{team-id}/channels/{channel-id}/messages
* Parametry {team-id} oraz {channel-id} należy zastąpić odpowiednimi identyfikatorami zespołu i kanału w Microsoft Teams

Parametry w akcji wysyłki wiadomości

 

Konfiguracja zakładki Dane żądania w akcji wysyłającej wiadomość na platformę Teams w kontekście użytkownika

 

W celu dynamicznego określenia zespołu, do którego ma zostać wysłana wiadomość identyfikator zespołu (team_id) jest pobierany bezpośrednio z pola wyboru dostępnego na formularzu.

Ostatnim etapem konfiguracji akcji wysyłającej wiadomość do platformy Teams jest skonfigurowanie zakładki Zawartość  żądania, w której definiowana jest treść komunikatu przesyłanego do kanału.

W tym celu należy wprowadzić strukturę JSON w następującej postaci:

{

"body": {

"contentType": "html",

"content": "Projekt <b>#{RAW:11565}#</b> został zatwierdzony.<br><a href=\"https://#{EPV:205}#/db/1/app/#{APP_ID}#/element/#{WFD_ID}#/form\">#{WFD_Signature}# Sprawdź szczegóły</a>."

}

}

W powyższym przykładzie wykorzystano dynamiczne znaczniki WEBCON, które umożliwiają automatyczne wstawienie danych z formularza, takich jak adres Portalu za pomocą stałej #{EPV:205}#, identyfikator aplikacji (APP_ID) oraz identyfikator elementu #(WFD_ID)#. Dzięki tym wartościom możliwe jest dynamiczne zbudowanie linku przekierowującego bezpośrednio do konkretnego dokumentu w systemie WEBCON.

Zastosowanie formatu HTML pozwala dodatkowo na estetyczne sformatowanie treści wiadomości – pogrubienie nazwy projektu czy dodanie hiperłącza, które użytkownik może kliknąć bezpośrednio w platformie Teams.

Dzięki takiej konstrukcji użytkownicy Microsoft Teams otrzymują czytelną, kontekstową wiadomość, która nie tylko informuje o zatwierdzeniu projektu, ale również umożliwia szybki dostęp do szczegółów elementu w WEBCON.

W rezultacie, gdy użytkownik przejdzie  ścieżką „Przekaż do realizacji”, skonfigurowana akcja automatycznie wyśle wiadomość do zespołu wskazanego w Microsoft Teams. Wiadomość zawiera dynamicznie wygenerowany link prowadzący bezpośrednio do konkretnego elementu w WEBCON – dzięki temu użytkownik może w szybki i wygodny sposób zweryfikować szczegóły dotyczące danego projektu lub sprawy.

Takie rozwiązanie znacząco usprawnia komunikację między zespołami, zapewniając natychmiastowy dostęp do kontekstu biznesowego.

Po pełnym skonfigurowaniu mechanizmu użytkownik pracujący na formularzu WEBCON wykonuje proces uwierzytelnienia poprzez dedykowany atrybut „Autentykacja OAuth2”. Po pomyślnym zalogowaniu system uzyskuje token dostępowy, który pozwala na wykonywanie operacji w jego imieniu.

Następnie użytkownik, przechodząc ścieżką „Potwierdź realizacje”, wywołuje akcję REST Web service, która wysyła wiadomość do wskazanego kanału w Microsoft Teams. Wiadomość ta zawiera informacje o zatwierdzeniu projektu a także link do wglądu.

 

Rezultat w postaci przesłanej na platformę Teams wiadomości z informacją o zatwierdzeniu wniosku

 

Wysyłanie zaproszenia na spotkanie do członków zespołu Microsoft Teams
z platformy WEBCON

W ramach procesu zatwierdzania projektów IT po podjęciu decyzji o realizacji platforma WEBCON umożliwia automatyczne utworzenie spotkania w Microsoft Teams, wykorzystując dane wprowadzone przez użytkownika w formularzu.

Dzięki integracji z Microsoft Graph API możliwe jest dynamiczne tworzenie wydarzeń w kalendarzu oraz wysyłanie zaproszeń do uczestników. Do utworzenia spotkania wykorzystywany jest endpoint: https://graph.microsoft.com/v1.0/groups/<group_id>/events. Mechanizm ten pozwala na dodanie wydarzenia bezpośrednio do kalendarza zespołu Microsoft 365, który jest powiązany z zespołem Microsoft Teams. Dzięki temu spotkanie jest widoczne dla wszystkich członków zespołu, a uczestnicy otrzymują zaproszenia automatycznie. Wykorzystanie delegowanych uprawnień (Group.ReadWrite.All) pozwala na bezpieczne i zgodne z polityką organizacji tworzenie wydarzeń w kontekście zalogowanego użytkownika.

W celu automatycznego tworzenia spotkań w kalendarzu zespołu Microsoft Teams z poziomu WEBCON po zatwierdzeniu wniosku należy skonfigurować akcję wywołującą usługę REST API, która komunikuje się z Microsoft Graph w następujący sposób:

 

Konfiguracja połączenia akcji Wywołaj REST Web service wysyłającej zaproszenie na spotkanie w narzędziu Teams

 

W zakładce Uwierzytelnianie należy wskazać to samo połączenie, które zostało wskazane w atrybucie „Autentykacja OAuth2” na formularzu.

Następnie w zakładce Dane żądania należy skonfigurować parametry wywołania, definiując URL w postaci /groups/#{I:11566}#/events. Identyfikator (ID) grupy pobierany jest z pola formularza „Zespół”. W polu Typ metody HTTP należy wybrać opcję POST.

 

Konfiguracja danych żądania w akcji przesyłającej zaproszenie do narzędzia Teams

 

Ostatnim etapem konfiguracji akcji jest określenie wartości JSON w zakładce Zawartość żądania w następujący sposób:

 

Konfiguracja zakładki Zawartość żądania w akcji wysyłki zaproszenia na spotkanie w aplikacji Teams

 

Wartości pobierane są na podstawie atrybutów formularza określających tytuł spotkania, datę spotkania oraz członków grupy, do których zostanie przesłane zaproszenie na spotkanie w aplikacji Teams. Członkowie grup pobierani są na podstawie atrybutu formularza „Zespół”. Następnie budowana jest kolekcja w atrybucie technicznym w następujący sposób:

[

{

"type": "required",

"emailAddress": {

"address": "address,

"name": "Name"

}

}

]

W rezultacie po wywołaniu przejścia ścieżką w aplikacji Teams do członków grupy trafia zaproszenie na spotkanie.

 

Rezultat akcji wysyłającej zaproszenie na spotkanie w aplikacji Teams

 

Podsumowanie

Integracja platformy WEBCON BPS z aplikacją Microsoft Teams poprzez Microsoft Graph API umożliwia pełną automatyzację komunikacji i organizacji pracy zespołowej w procesach, takich jak zatwierdzanie wniosków IT. Dzięki takiej integracji możliwe jest:

  • automatyczne przesyłanie wiadomości do danego zespołu w Microsoft Teams w momencie przekazania elementu do realizacji;
  • automatyczne tworzenie wydarzenia w kalendarzu aplikacji Teams podczas realizacji danego projektu;
  • zwiększenie efektywności procesów biznesowych poprzez wyeliminowanie ręcznego przekazywania informacji oraz ograniczenie opóźnień w komunikacji;
  • pełna przejrzystość procesu – każdy uczestnik procesu ma dostęp do aktualnych informacji w aplikacji Teams, co zwiększa kontrolę i skraca czas reakcji.