Dodatek do programu Outlook

Dodatek został zbudowany zgodnie z Office Outlook Add-in (Dokumentacja), który umożliwia pokazanie w panelu okna przeglądarki z CRM.
Dzięki takiemu rozwiązaniu nie została powielona implementacja całego CRM w Outlook, zamiast tego CRM jest tylko pokazany i zintegrowany z pewnymi funkcjami Outlook-a.
Implementacja umożliwia korzystanie z wszystkich funkcjonalności YetiForce CRM w Outlook.

Artykuł omawia najważniejsze kwestie związane z dodatkiem Outlook do systemu YetiForce CRM, dlatego ważne jest aby przeczytać go w całości i zastosować wytyczne aby dodatek działał prawidłowo.

1. Wymagania

a. Dodatek wymaga aby CRM działał z ważnym certyfikatem SSL. Nie akceptowane są Self Signed Certificate.

b. Kompatybilność

Dodatek Outlook do systemu YetiForce CRM działa z następującymi typami aplikacji Outlook:

  • Outlook Desktop Client
  • Outlook Web App  (wersja przeglądarkowa)
  • Outlook for Mobile (iOS i Android)

Klient poczty musi być połączony z serwerem Exchange lub Microsoft 365 przy użyciu połączenia bezpośredniego. Podczas konfigurowania klienta użytkownik musi wybrać typ konta Exchange , Office lub Outlook.com

c. Wspierane wersje

Należy sprawdzić jaka jest wersja Outlook, bo dodatek bazuje na silniku przeglądarki internetowej.
Stare wersje wspierają ciągle silnik „Internet Explorer”, dla którego CRM nie będzie działał prawidłowo w 100%.
https://docs.microsoft.com/en-us/office/dev/add-ins/concepts/browsers-used-by-office-web-add-ins

2. Instalacja/uruchomienie integracji

Po zakupie należy aktywować dodatek, jest to jednorazowa operacja. W Marketplace pojawi się przycisk "Wymaga interwencji", należy wtedy przejść do zakładki "Integracja", kliknąć "Aktywuj", wprowadzić wymagane dane i ściągnąć plik instalacyjny.

2021-02-11_10-38-15.png

a. Aktywacja 

W trakcie aktywacji system zostanie skonfigurowany pod kątem integracji z Outlook. 
Zostaną zmienione następujące parametry:

2021-02-11_10-38-41.png

b. Pobranie rozszerzenia add-ins

Aby była możliwa instalacja rozszerzenia konieczne jest pobranie pliku w formacie XML i zaimportowanie go w Outlook.

Aby go pobrać należy przejść do panelu "Konfiguracja systemu > Integracja > Panel integracji poczty" i kliknąć przycisk "Pobierz plik instalacyjny dodatku Outlook". Pobrany plik XML jest dedykowany tylko dla danej wersji CRM i zawiera w sobie APP ID CRM-a, gdy APP ID ulegnie zmianie wymagane jest przeinstalowanie pluginu.Zostało to tak zrobione aby nie nie można było załadować CRM w dowolnym innym oknie.

c. Instalacja w Outlook rozszerzenia add-ins

Instrukcja instalacji znajduje się na stronie: https://support.microsoft.com/en-us/office/installed-add-ins-a61762b7-7a82-47bd-b14e-bbc15eaeb70f 
Należy postępować zgodnie z wytycznymi zawartymi w instrukcji, aby prawidłowo zainstalować.

d. Zezwolenie na dostęp do cookie (tylko wersja web-owa Outlook Web App)

Wymagane jest zezwolenie na dostęp do cookie innych stron internetowych na stronie Outlook Web App.
Domyślnie przeglądarka blokuje niechciane skrypty z dodatkowych stron internetowych.

2021-02-11_09-01-20.png

Bez tego nie będzie możliwości zalogowania się do CRM i użytkownik będzie cały czas widział stronę logowania pomimo że wprowadza dane dostępowe.

2021-02-11_08-56-33.png

2021-02-11_08-56-44.png

2021-02-11_08-56-59.png

2021-02-11_09-00-02.png

3. Uprawnienia

a. Dostep do panelu

Aby użytkownicy mogli korzystać z panelu integracyjnego muszą mieć dostęp do modułu "Panel integracji poczty".
Uprawnienia do tego modułu konfiguruje się w Konfiguracja systemu  > Uprawnienia  > Profile i dla odpowiedniego profilu należy nadać uprawnienia do tego modułu.
Jeśli użytkownik nie będzie miał dostępu do modułu, to zobaczy komunikat "Błąd!!! Brak uprawnień".

2021-02-10_13-55-17.png
b. Dostęp do importu maila

Aby pojawił się przycisk importu maila użytkownik w profilu musi mieć uprawnienia do tworzenia wiadomości mail. 
W tym celu należy zaznaczyć akcję "Tworzenie" dla modułu "Historia maili".

2021-02-10_14-51-06.png

 

4. Powiązywanie danych

Aby było możliwe powiązane danych z wiadomości mailowej z danymi CRM-a należy określić po czym system ma wyszukiwać.

Każdy użytkownik, na którego logujemy się w panelu integracyjnym powinien w miejscu  "Pola relacji rekordów (Outlook)" mieć ustawione pola z dostępnych modułów, w których ma szukać danych do powiązania. 

Wprowadzamy tu pola w zależności z jakich modułów/pól korzystamy i dla których dany użytkownik może korzystać.

W polu "Dostępne akcje skanera poczty e-mail" należy wybrać "Stwórz e-maila" oraz "Tworzenie linków do e-maila". 

Pola będą używane do wyszukania powiązanych rekordów przy wyświetlaniu maila oraz podczas importu maila z czym ma on zostać powiązany.

Bez tego nie zobaczymy w panelu integracyjnym żadnych danych, bo system nie będzie wiedział gdzie ma szukać informacji.

Standardowe pola to: Kontakty - Mail podstawowy, Kontrahenci - Mail podstawowy, Leady - Mail podstawowy, Zgłoszenia - Nr, Pracownicy - Mail służbowy.

222.png

5. Akcje

Aby pojawił się przycisk "Zaimportuj maila ręcznie" użytkownik musi mieć skonfigurowane akcje.  
Akcje konfigurujemy na użytkowniku w polu "Dostępne akcje skanera poczty e-mail (Outlook)".
Standardowe akcje to: 

  • Stwórz e-maila - akcja, która tworzy wiadomość e-mail.
  • Tworzenie linków do e-maila - akcja pozwiązująca wiadomość mailową z rekordami w systemie, w polu "Pola relacji rekordów" określamy po czym ma szukać i pozwiązywać. Jeśli w polu "Pola relacji rekordów" nie wybrano wartości, to powiązanie nie bedzie działać.

111.png

6. Możliwe problemy

Outlook web bug 1

Zawsze podczas wystąpienia problemów z panelem integracyjnym należy rozpocząć debugowanie problemu.
Poniżej umieszczamy listę możliwych problemów które napotkaliśmy.

6.1 Refused to frame 'https://appsforoffice.microsoft.com/' because it violates the following Content Security Policy directive: "frame-src 'self' mailto: tel:".

Outlook web bug 2 W pliku konfiguracyjnym config/Security.php w zmiennej $allowedDomainsLoadInFrame należy ustawić wartość :

/** Allowed domains for loading script, used in CSP. */
public static $allowedScriptDomains = ['https://appsforoffice.microsoft.com', 'https://ajax.aspnetcdn.com'];
/**
 * Specifies valid sources for nested browsing contexts loading using elements such as <frame> and <iframe>.
 * CSP: frame-src.
 */
public static $allowedDomainsLoadInFrame = ['https://appsforoffice.microsoft.com'];

7. Debugowanie

Gdy panel nie pokazuje się prawidłowo lub brakuje w nim danych: https://docs.microsoft.com/en-US/outlook/troubleshoot/user-interface/office-add-ins-not-displayed-correctly

Debugowanie: https://docs.microsoft.com/en-us/office/dev/add-ins/testing/test-debug-office-add-ins

Debugowanie przy użyciu Microsoft Edge DevTools: https://docs.microsoft.com/en-us/office/dev/add-ins/testing/debug-add-ins-using-f12-developer-tools-on-windows-10#debug-using-microsoft-edge-devtools