Javascript CLI library
Úvod do Daktela JS Integrací
Daktela umožňuje integraci s aplikacemi postavenými v prohlížeči, kde můžete ovládat uživatele od jednoduchých akcí, jako je například přihlášení nebo odhlášení, až po správu hovorů, posílání SMS nebo vytváření ticketů. Pro integraci se používá API, které podporuje JSONP, nebo vám můžeme povolit JSON pro Cross-Origin Resource Sharing. Autorizace na API je řešená přes accessToken, který je pro každého uživatele jedinečný. Může se posílat jako hodnota v požadavku, v cookie nebo v hlavičce pod názvem X-Auth-Token. Tyto akce můžete volat ručně nebo využít CLI knihovnu, která je momentálně v experimentální podobě.
Jak přihlásit uživatele do fronty
Fronty slouží k spravování jednotlivých kanálů, např. webchat, hovory, SMS atd. Aby mohl uživatel uskutečnit odchozí hovor, musí být přihlášený v hovorové frontě. Více informací naleznete v naší API dokumentaci.
// Log in user to queue 2000 with penalty 0
$.post("https://<pbx_name>.daktela.com/api/v6/usersSession.json", {
accessToken: "<accessToken>",
queues: [
{login: true, name: 2000, penalty: 0}
]
});
// Init CLI
var cli = new daktelaCLI();
cli.init({
host: "https://<pbx_name>.daktela.com",
accessToken: "<accessToken>"
});
// Called with CLI
cli.userSessions.queue(2000, true, 0);
Jak vytvořit uživateli hovor
Chcete-li vytvořit hovor, musíte mít accessToken uživatele, který má právo volat nebo má právo na uživatele, který může volat (chcete-li vytvořit hovor jinému uživateli). Více informací naleznete v naší API dokumentaci.
// Create call to number 123456789 in queue 2000 for acl user
$.post("https://<pbx_name>.daktela.com/api/v6/activities.json", {
accessToken: "<accessToken>",
number: "123456789",
type: "CALL",
queue: 2000
});
// Called with CLI
cli.activities.call.dial({
number: "123456789",
queue: 2000
});
Jak zjistit aktuální stav uživatele
Potřebujete-li ve své aplikaci zobrazovat aktuální stav uživatele v Daktele, tedy zda právě má hovor, je na pauze nebo v jakých frontách je přihlášený, můžete použít jednorázový dotaz nebo HTTP long polling. Pro long polling nejdříve pošlete parametr hash. Pod odpovědi do hash vložte vrácenou hodnotu, která slouží k detekci změn. Více informací naleznete v naší API dokumentaci.
// Get dynamic data for acl user
$.get("https://<pbx_name>.daktela.com/api/v6/appPullData.json?accessToken=<accessToken>&hash=<hash>").done(function (response) {
// In response you get structured dynamic data for acl user
});
// Called with CLI
cli.appPullData("<hash>", function (response) {
// Success response
});
Příklad jednoduché integrace
Tento příklad ukazuje, jak vytvořit jednoduchou aplikaci, která umožňuje přihlásit uživatele a ovládat jeho pauzu:
Ruční volání – index 2.html
Využití CLI – index_cli.html