7.1.2018
Úvod do Daktela API – část 1: Všeobecný přehled

Daktela kontaktní centrum nabízí několik různých přístupů k integraci s externími systémy, z nichž každý má své výhody a nevýhody. V této úvodní sérii článků se pokusím přiblížit jednotlivé přístupy, jejich možnosti a kdy je vhodné daný přístup použít. Není to samozřejmě 100%, mnohdy je dobré zkombinovat dva a více přístupů pro ošetření případných chybových stavů, ale k tomu se postupně dostaneme. Záleží také na SW architektuře externí aplikace, zda je to webový systém nebo samostatná aplikace, zda má tenkého nebo tlustého klienta, zda nabízí externí aplikace nějaké standardizované API nebo je nutné vše programovat atd.
Nejdříve si pojďme představit jednotlivé přístupy, které Daktela nabízí. Můžeme je rozdělit do dvou skupin – klientské a serverové. Klientské jsou aktivovány na počítači operátora (klient). Serverové pak na Daktele (server).
Klientské přístupy
Klientský přístup znamená, že se přímo na počítači operátora spustí nějaká akce. Tato akce je vyvolána z naší GUI aplikace a server o ní v podstatě nic neví. Výhodou je velmi jednoduchá implementace, nevýhodou pak heterogennost prostředí, z nějž se akce vyvolává – různé webové prohlížeče a jejich nastavení, firewally, omezující aplikace v rámci korporátních prostředí atd. Tyto dva přístupy se nikdy nepoužívají pro užší integrace s externími systémy jako např. synchronizace dat.
URL Popup
URL popup jsou nejjednodušší formou integrace. V rámci jednotlivých front si můžete nadefinovat jeden nebo více URL odkazů včetně předání parametrů dané aktivity. Tedy pro hovorové fronty si například můžete posílat ID hovoru, CLID volajícího, DID číslo atd. U chatu si zase můžete
do parametrů dát například IP, odkud se přistupovalo, nebo email chatujícího.
iFrame widgety
Widgety jsou nedílnou součástí Daktely. Jsou to stavební prvky dashboardu, wallboardu a tabů jednotlivých aktivit. Do iFrame widgetu zadáte URL externí aplikace, které se pak buď volá opakovaně v intervalech (dashboard, wallboard) nebo při vzniku widgetu (tab aktivity). Výhodou je začlenění
do GUI Daktely a operátorovi tak nabídnout dva systémy v jednom GUI. Nejčastěji se používá pro integrace, kdy operátoři používají GUI Daktely
pro komunikaci s klienty a současně potřebují pracovat s interním CRM systémem. V době psaní tohoto článku tímto způsobem máme již zaintegrovány systémy MS Dynamics a SugarCRM.
JS CLI knihovna
JS CLI knihovna je javascriptový wrapper nad naším API. Má standardizované rozhraní a nabízí jednoduché volání API funkcí ve zjednodušené podobě. Nad touto knihovnou například funguje náš konektor do Salesforce a operátorský addon do prohlížečů.
Long Pooling
Long Pooling nabízí permanentní javascriptová konexe k našemu systému, kam se poté posílají změny pro přihlášeného operátora (přihlášení, zpracovávání aktivit, pauzy atd.) a externí systém na ně může obratem reagovat. Pomocí long poolingu je například implementováno celé webové rozhraní naší aplikace.
Serverové přístupy
Serverové přístupy jsou vyvolány na backendu našeho systému. Nejsou tedy ovlivněny žádným klientským nastavením na straně operátora, ani není nutné řešit kompatibilitu prohlížečů nebo operačního systému, na kterém operátor funguje.
Události
V rámci Daktela systému se generuje velké množství událostí, na které je možné si nastavit různé akce – zavolání webservisy, poslání emailu nebo udělat úpravu formuláře. To vše je možné nastavovat v přehledném grafickém rozhraní. Současně lze nastavovat časová omezení, ať již na vyvolání události, tak i timeout na opakování události (aby si člověk například neposlal 100 SMSek při problému). Události nicméně nejsou zcela vhodné
pro synchronizace, protože nemají žádné možnosti opakování, pokud z jakéhokoliv důvodu selže její vyvolání (například nedostupná webservice).
Skriptování pomocí Daktela API
Přímé volání našeho HTTP REST API je vhodné pro dávkové zpracovávání dat nebo zjišťování realtime statistik. Je možné také zjišťovat nastavení front, uživatelů, vytvářet je nebo synchronizovat kontakty. Je vhodné hlavně ke skriptování synchronizace kontaktů nebo aktivit, stahování dat do BI systémů apod.
Jak na integraci s Daktelou
Pokud zvažujete nad integrací s naším systémem, doporučuji nejdříve konzultaci s naším CST týmem, který s vámi rád projde požadavky a pokusí se podle toho navrhnout to nejlepší řešení. V následujících článcích se pokusíme podrobněji přiblížit jednotlivé přístupy, nicméně systém je již poměrně robustní a je třeba myslet na spoustu věcí, které při zpracovávání jednotlivých aktivit mohou nastat a ovlivnit chod kontaktního centra.