Formát URL pro zasílání API požadavků je:
http://[SERVER_ADDRESS]/api/[VERSION]/[ACTION]/[ID]/[FORMAT]?access_token=[ACCESS_TOKEN]&[OPTIONAL_PARAMS]
SERVER_ADDRESS - Hostname nebo IP adresa serveru, kde beží API
VERSION - Číslo verze, kterou chceme u akce použít
ACTION - Jakou akci / příkaz chceme provést
ID - Jednoznačné určení záznamu o který máme zájem
FORMAT - V jakém formátu chceme vrátit data. Možnosti jsou xml nebo json.
ACCESS_TOKEN - Autentizačení token pro vstup do API. Token je string, který obsahuje jeden SHA1 hash ze stringů uživatelského jména a hesla. Tedy ACCESS_TOKEN = SHA1(login + password)
OPTIONAL_PARAMS - Volitelné vstupní parametry oddělené &
Webhooks
Příchozí hovor
Popis:
Každý příchozí hovor můžeme nechat projít přes volitelný kontext, kde můžeme změnit chování ústředny nebo notifikovat CRM systém. Vhodné například při potřebě získání nějaké informace ze CRM systému a následně na základě této informace změnit chování ústředny. Například pokud se potřebujeme při příchozím hovoru dotázat CRM systému na jméno firmy volajícího zákazníka a toto jméno firmy následně zobrazit na telefonu operátorům. Strategie vyzvánění ringall u fronty nemusí být vždy plně podporována.Nastavení:
- Rozklikneme Nastavení ústředny -> Volitelný context -> Systemový hook na Příchodu
- Doplníme tento kód, kde VasCRMsystem.to je adresa CRM systému, kterého se dotazujeme.
AGI(notify_crm_api.agi,http://VasCRMsystem.to/storedata,80,"htusername:htpassword",POST,"callid=${CALLERID}","dnd=${FROM_DID}") - Pokud při volání vrátíte platnou JSON struktůru, která bude například vypadat takto
{"status":1, "NAME":"Daktela s.r.o.", "ADDRESS":"Pod Krejcarkem 975"}- status - pokud bude nastaven na 1, tak se naplní proměnné, které budou dostupné v celém průchodu dialplánu ústředny. Pokud bude nastaveno cokoli jiného, tak se žádné proměnné nenastaví.
- v rámci dialplanu bude dostupná proměnná NAME, která bude naplněna hodnotou "Daktela s.r.o."
- v rámci dialplanu bude dostupná proměnná ADDRESS, která bude naplněna hodnotou "Pod Krejcarkem 975"
Vyzvánění na lince
Popis:
Každé vyzvánění na lince můžeme nechat projít přes volitelný kontext, kde můžeme změnit chování ústředny nebo notifikovat CRM systém. Vhodné například při potřebě notifikovat CRM systém o tom, že na klapce začína zvonit hovor s číslem volajícího. Strategie vyzvánění ringall u fronty nemusí být vždy plně podporována.Nastavení:
- Rozklikneme Nastavení ústředny -> Volitelný context -> Systemový hook při zvonění na lince
- Doplníme tento kód, kde VasCRMsystem.to je adresa CRM systému, kterého se dotazujeme.
AGI(notify_crm_api.agi,"http://VasCRMsystem.to/api2",80,"htusername:htpassword","GET","callerId=%CALLERID(num)%","calleeId=%FROM_DID%", "line=%REAL_EXTEN%","idcall=%ID_CALL%","action=ringing") - Pokud při volání vrátíte platnou JSON struktůru, která bude například vypadat takto
{"status":1, "NAME":"Daktela s.r.o.", "ADDRESS":"Pod Krejcarkem 975"}- status - pokud bude nastaven na 1, tak se naplní proměnné, které budou dostupné v celém průchodu dialplánu ústředny. Pokud bude nastaveno cokoli jiného, tak se žádné proměnné nenastaví.
- v rámci dialplanu bude dostupná proměnná NAME, která bude naplněna hodnotou "Daktela s.r.o."
- v rámci dialplanu bude dostupná proměnná ADDRESS, která bude naplněna hodnotou "Pod Krejcarkem 975"
Zodpovězený hovor
Popis:
Každé zodpovězení hovoru na lince můžeme nechat projít přes volitelný kontext, kde můžeme změnit chování ústředny nebo notifikovat CRM systém. Vhodné například při potřebě notifikovat CRM systém o tom, že na klapce došlo k zodpovězení hovor s číslem volajícího. Strategie vyzvánění ringall u fronty nemusí být vždy plně podporována.Nastavení:
- Rozklikneme Nastavení ústředny -> Volitelný context -> Systemový hook při zodpovězení hovoru
- Doplníme tento kód, kde VasCRMsystem.to je adresa CRM systému, kterého se dotazujeme.
AGI(notify_crm_api.agi,"http://VasCRMsystem.to/api2",80,"htusername:htpassword","GET","callerId=%CALLERID(num)%","calleeId=%FROM_DID%","line=%REAL_EXTEN%","idcall=%ID_CALL%","action=answer") - Pokud při volání vrátíte platnou JSON struktůru, která bude například vypadat takto
{"status":1, "NAME":"Daktela s.r.o.", "ADDRESS":"Pod Krejcarkem 975"}- status - pokud bude nastaven na 1, tak se naplní proměnné, které budou dostupné v celém průchodu dialplánu ústředny. Pokud bude nastaveno cokoli jiného, tak se žádné proměnné nenastaví.
- v rámci dialplanu bude dostupná proměnná NAME, která bude naplněna hodnotou "Daktela s.r.o."
- v rámci dialplanu bude dostupná proměnná ADDRESS, která bude naplněna hodnotou "Pod Krejcarkem 975"
Zavěšený hovor
Popis:
Každé zavěšení hovoru můžeme nechat projít přes volitelný kontext, kde můžeme notifikovat CRM systém. Vhodné například při potřebě notifikovat CRM systém o tom, že na klapce došlo k ukončení hovoru s číslem volajícího. Strategie vyzvánění ringall u fronty nemusí být vždy plně podporována.Nastavení:
- Rozklikneme Nastavení ústředny -> Volitelný context -> Systemový hook při zavěšení hovoru
- Doplníme tento kód, kde VasCRMsystem.to je adresa CRM systému, kterého se dotazujeme.
AGI(notify_crm_api.agi,"http://VasCRMsystem.to/api2",80,"htusername:htpassword","GET","callerId=%CALLERID(num)%","calleeId=%FROM_DID%","line=%REAL_EXTEN%","idcall=%ID_CALL%","action=hangup") - Pokud při volání vrátíte platnou JSON struktůru, která bude například vypadat takto
{"status":1, "NAME":"Daktela s.r.o.", "ADDRESS":"Pod Krejcarkem 975"}- status - pokud bude nastaven na 1, tak se naplní proměnné, které budou dostupné v celém průchodu dialplánu ústředny. Pokud bude nastaveno cokoli jiného, tak se žádné proměnné nenastaví.
- v rámci dialplanu bude dostupná proměnná NAME, která bude naplněna hodnotou "Daktela s.r.o."
- v rámci dialplanu bude dostupná proměnná ADDRESS, která bude naplněna hodnotou "Pod Krejcarkem 975"
Verze 3.0
Vytvoření nebo editování agenta
Akce:
- CreateAgent
Vytvoří uživatele, který bude mít přístup pouze do operátorské aplikace. Pokud už agent se stejným loginem existuje, pak se jenom edituje uživatel.
Povinné parametry:
- name
- Přihlašovací jméno agenta - login
- title
- Název agenta
- password
- Přístupové heslo
Volitelné parametry:
- description
- Popisek ke jménu
- Emailová adresa
- extension
- Číslo klapky, pokud se jedná o statického agenta
- queues
- Čísla front oddělených čárkou, na které má agent právo se příhlásit. Zadáváme ve formátu volací klapky například 1000. Pokud nepředáme čísla front, tak se agentovi přiřadí všechny fronty.
- penalty
- Priorita zařazení do front, předané v parametru queues. Zadáváme celé číslo, možnosti jsou 0 - nejvyšší priorita, 1 - nižší priorita, 2 - nejnižší priorita. Pokud není definováno, nastaví se 0 u všech front.
Ukázka použití:
Popis:
Vytvoření agenta Pepa Novak s přihlašovacím loginem novak a heslem abc
Vstup:
https://MojeVU.daktela.com/api/3.0/CreateAgent/xml?access_token=1234567890123456789012345678901234567890&name=novak&password=abc&title=Novak%20Pepa
Výstup:
{"status":1,"error":null,"result":null}
Popis:
Upravíme heslo a fronty do kterých se má přihlásit u agenta Pepa Novak s loginem novak
Vstup:
https://MojeVU.daktela.com/api/3.0/CreateAgent/xml?access_token=1234567890123456789012345678901234567890&name=novak&password=abcd&queues=1000,2000,3000
Výstup:
{"status":1,"error":null,"result":null}
Vytvoření nebo editování fronty
Akce:
- CreateQueue
Vytvoří novou frontu. Pokud číslo fronty už bude existovat, tak se fronta jen edituje podle nových parametrů.
Povinné parametry:
- number
- Číslo fronty
- title
- Jméno fronty
- direction
- Typ fronty příchozí nebo odchozí
Volitelné parametry:
- id
- ID fronty
- outboundcid
- Odchozí identifikace u odchozí fronty
- description
- Popisek fronty
- wrapuptime
- Délka zotavení na pauze WRAP po skončení hovoru
- outbounder
- Nastavíme pokud chceme vytvořit outbounder frontu
Ukázka použití:
Popis:
Vytvoříme novou odchozí navolávací frontu číslo 123456789 s názvem Support
Vstup:
https://MojeVU.daktela.com/api/3.1/CreateQueue/xml?access_token=1234567890123456789012345678901234567890&number=12345678&title=Support&direction=out&outbounder=true
Výstup:
{"status":1,"error":null,"result":null}
Informace o uživatelích
Akce:
- GetUsers
Získá informace o uživatelích Pokud není předané ID, tak se vrátí všichni uživatelé.
Volitelné parametry:
- id
- ID uživatele, který nás zajímá.
Ukázka použití:
Popis:
Získaní všech uživatelů
Vstup:
http://api.server/api/3.0/GetUsers/xml?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"1":{"user":"1","extension":"100","name":"admin","title":"Administrator","description":"Administrator z\u00e1kazn\u00edka","password":"cordheslo","email":"jedna@jedna.cz","deleted":"0","parent":"1","child":"1"},"3":{"user":"3","extension":null,"name":"hajekhu","title":"Hajek Hugo","description":"","password":"heslo","email":"","deleted":"0","parent":"1","child":"3"}}}
Popis:
Získáme informace o uživateli s ID 2
Vstup:
https://MojeVU.daktela.com/api/3.0/GetUsers/3/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"user":"3","extension":null,"name":"hajekhu","title":"Hajek Hugo","description":"","password":"heslo","email":"","deleted":"0","parent":"1","child":"3"}}
Informace o frontách
Akce:
- GetQueues
Získá informace o vytvořených frontách Pokud není předané ID, tak se vrátí všechny fronty.
Volitelné parametry:
- id
- ID fronty, které nás zajímá.
Ukázka použití:
Popis:
Získáme informace o frontě s ID 3
Vstup:
https://MojeVU.daktela.com/api/3.0/GetQueues/3/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"queue":"3","name":"1002","title":"Outbounder","description":"","direction":"out","outboundcid":"","wrapuptime":"0","outbounder":"1","form":"0","missed":null,"options":"{\"type\":\"outbounder\",\"wrapuptime\":\"\",\"lajdaktime\":\"\",\"qa_form\":\"\",\"missed\":\"\",\"maxwait\":\"\",\"maxlength\":\"\",\"threshold_time\":\"\",\"threshold_users\":\"\",\"threshold_calls\":\"\",\"callback_callstart\":\"http:\\\/\\\/\",\"callback_callanswer\":\"http:\\\/\\\/\",\"callback_callend\":\"http:\\\/\\\/\",\"outboundcid\":\"\",\"allowed_time\":\"10:00-18:00|mon-fri|*|*\"}","deleted":"0","user":"1","penalty":"0","login":"manual"}}
Smazání uživatele
Akce:
- DeleteUser
Smaže uživatele s předaným id
Povinné parametry:
- id
- ID uživatele, který se ma smazat
Ukázka použití:
Popis:
Smažeme uživatele s ID 2
Vstup:
http://api.server/api/3.0/DeleteUser/2/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"error":null,"status":1}
Vytvořit odchozí hovor
Akce:
- CreateCall
Vytvoří odchozí telefonní hovor bez požadavků na call centrum.
Povinné parametry:
- extension
- Číslo klapky, která chce vytvořít odchozí volání
- number
- Telefonní číslo na které chceme volat
Volitelné parametry:
- accountcode
- Jedinečný kód, který se nese celou dobu s hovorem
- autoanswer
- Pokud telefon podporuje automatické vyzvednutí hovoru, je možné tutu funkci použít. Výchozí stav je vypnuto.
- waitingtime
- Jak dlouho v sekundach má zvonit telefon u linky / extension. Výchozí stav: 30 sekund
- idcall
- ID podle kterého se dá nalézt CDR informace a nahrávka
- agenttext
- Textová informace, kterou uvidí agent na displeji svého telefonu během vytáčení hovoru.
Ukázka použití:
Popis:
Odchozí hovor z linky 300 na veřejné číslo 800123456
Vstup:
https://MojeVU.daktela.com/api/3.0/CreateCall/json?access_token=1234567890123456789012345678901234567890&extension=300&number=800123456
Výstup:
{"error":null,"status":1,"result":{"id_call":"123456789.1234SJ"}}
Popis:
Odchozí hovor z linky 300 na veřejné číslo 800123456 a zepnutou funkcí auto answer
Vstup:
https://MojeVU.daktela.com/api/3.0/CreateCall/json?access_token=1234567890123456789012345678901234567890&extension=300&number=800123456&autoanswer=yes
Výstup:
{"error":null,"status":1,"result":{"id_call":"123456789.1234SJ"}}
Přihlášení uživatele do fronty
Akce:
- LoginQueue
Přihlásí uživatele do fronty nebo kampaně, kterou specifikujeme číslem.
Povinné parametry:
- user
- Přihlašovací jméno agenta
- queue
- Číslo fronty nebo kampaně do které chceme uživatele přihlásit, pokud tam má právo
Volitelné parametry:
- extension
- Číslo klapky u které agent sedí. Tento parametr se nemusí specifikovat znovu, pokud uživatel už je aktuálně přihlášen v některé fronte.
- priority
- S jakou prioritou se má přihlásit do fronty. Povolené hodnoty od normální po nejnižší prioritu: 0, 1, 2. Pokud není specifikováno bere se priorita nastavená u uživatele k dané frontě. Tento parametr má smysl pouze u příchozí fronty.
Ukázka použití:
Popis:
Přihlásíme uživatele michalhajek do fronty 5001 s normální prioritou
Vstup:
https://MojeVU.daktela.com/api/3.0/LoginQueue/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&queue=5001&priority=0
Výstup:
{"error":null,"status":1}
Odhlášení živatele z fronty
Akce:
- LogoutQueue
Odhlásí uživatele z fronty nebo kampaně, kterou specifikujeme číslem.
Povinné parametry:
- user
- Přihlašovací jméno agenta
- queue
- Číslo fronty nebo kampaně z které chceme uživatele odhlásit
Ukázka použití:
Popis:
Odhlásíme uživatele michalhajek z fronty 5001
Vstup:
https://MojeVU.daktela.com/api/3.0/LogoutQueue/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&queue=5001
Výstup:
{"error":null,"status":1}
Popis:
Pokus o odhlášení uživatele michalhajek z fronty 5000 v době, kdy agent vyřizuje na této frontě hovor.
Vstup:
https://MojeVU.daktela.com/api/3.0/LogoutQueue/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&queue=5000
Výstup:
{"error":"Nelze se odhlasit z fronty\/kampan\u011b, ve kter\u00e9 prob\u00edh\u00e1 hovor s \u010d\u00edslem 468008585","status":0}
Nastavení pauzy u uživatele
Akce:
- PauseOn
Nastavíme uživateli v call centru danou pauzu v případě že neuskutečnuje žádný hovor Pokud na pauze už je, dojde k přenastavení na konkrétní pauzu
Povinné parametry:
- user
- Přihlašovací jméno agenta
- pause
- Na jakou pauzu přepneme uživatele
Volitelné parametry:
- force
- Pokud je nastaveno na yes, tak se pauza nastaví i v případě, že agent zvoní, hovoří nebo je na on holdu. Výchozí stav je no.
Ukázka použití:
Popis:
Nastavíme pauzu s ID 7, která představuje třeba Oběd
Vstup:
https://MojeVU.daktela.com/api/3.1/PauseOn/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&pause=7
Výstup:
{"error":null,"status":1}
Popis:
Nastavíme pauzu s ID 100, která neexistuje
Vstup:
https://MojeVU.daktela.com/api/3.1/PauseOn/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&pause=100
Výstup:
{"error":"Tato pauza nebyla nalezena","status":0}
Zrušení pauzy u uživatele
Akce:
- PauseOff
Zrušíme uživateli v call centru nastavenou pauzu
Povinné parametry:
- user
- Přihlašovací jméno agenta
Ukázka použití:
Popis:
Odhlásíme z pauzy uživatele michalhajek
Vstup:
https://MojeVU.daktela.com/api/3.0/PauseOff/json?access_token=1234567890123456789012345678901234567890&user=michalhajek
Výstup:
{"error":null,"status":1}
Vypsání všech definovaných pauz
Akce:
- GetPauses
Vrátí všechny definované pauzy
Volitelné parametry:
- id
- Vrácení informace o pauze s konkrétním ID. Pokud se nepředá, tak vrací všechny pauzy
Ukázka použití:
Popis:
Chceme všechny pauzy
Vstup:
https://MojeVU.daktela.com/api/3.0/GetPauses/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"3":{"pcode_id":"3","pcode":"666","pcode_desc":"Lajdak","read_key":"","isBillable":"0","isPayable":"0","pauseType":"w","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"},"2":{"pcode_id":"2","pcode":"20","pcode_desc":"Wrap","read_key":"","isBillable":"1","isPayable":"0","pauseType":"w","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"},"4":{"pcode_id":"4","pcode":"13","pcode_desc":"Backoffice","read_key":"","isBillable":"1","isPayable":"0","pauseType":"-","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"},"5":{"pcode_id":"5","pcode":"12","pcode_desc":"Email","read_key":"","isBillable":"1","isPayable":"0","pauseType":"-","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"},"6":{"pcode_id":"6","pcode":"11","pcode_desc":"Prestavka","read_key":"","isBillable":"0","isPayable":"0","pauseType":"-","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"},"7":{"pcode_id":"7","pcode":"10","pcode_desc":"Obed","read_key":"","isBillable":"0","isPayable":"0","pauseType":"-","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"}}}
Popis:
Chceme pauzu s ID 3
Vstup:
https://MojeVU.daktela.com/api/3.0/GetPauses/3/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"3":{"pcode_id":"3","pcode":"666","pcode_desc":"Lajdak","read_key":"","isBillable":"0","isPayable":"0","pauseType":"w","sys_dt_creazione":"0000-00-00 00:00:00","sys_user_creazione":"0","sys_dt_modifica":"0000-00-00 00:00:00","sys_user_modifica":"0","sys_optilock":"0"}}}
Zavěšení hovoru
Akce:
- Hangup
Ukončení probihajícího hovoru. Stačí předat číslo linky nebo agenta.
Povinné parametry:
- user
- Přihlašovací jméno agenta (stačí jeden povinný parametr)
- extension
- Číslo klapky (stačí jeden povinný parametr)
Ukázka použití:
Popis:
Zavěšení hovoru u uživatele michalhajek/p>
Vstup:
https://MojeVU.daktela.com/api/3.1/Hangup/json?access_token=1234567890123456789012345678901234567890&user=michalhajek
Výstup:
{"error":null,"status":1}
Popis:
Zavěšení hovoru u klapky 300
Vstup:
https://MojeVU.daktela.com/api/3.1/Hangup/json?access_token=1234567890123456789012345678901234567890&extension=300
Výstup:
{"error":null,"status":1}
Přesměrování hovoru
Akce:
- Transfer
Přesměrování hovoru s představením (attended) nebo bez představování (blind).
Povinné parametry:
- user
- Přihlašovací jméno agenta odkud se má hovor přesměrovat (stačí user nebo extension)
- extension
- Číslo klapky odkud se má hovor přesměrovat (stačí user nebo extension)
- number
- Telefonní číslo kam se má přesměrovat
Volitelné parametry:
- type
- Jaký druh přesměrování se má provést. Pokud neuvedete použije se attended attended - přesměrování s představením (nejprve budete hovořit s číslem kam přesměrováváte a teprve pak se hovor přesměruje s volajícím) blind - přesměrování bez představování (rovnou se přesměruje volajíci na číslo kam přesmérováváte)
Ukázka použití:
Popis:
Přesměrování hovoru od uživatele michalhajek na číslo 100
Vstup:
https://MojeVU.daktela.com/api/3.1/Transfer/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&type=attended&number=800123456
Výstup:
{"error":null,"status":1}
Příposlech hovoru
Akce:
- Monitoring
Online příposlech probíhajícího hovoru bez požadavků na call centrum
Povinné parametry:
- exten
- Číslo klapky, kterou chceme poslouchat
- listener
- Číslo klapky, kde chceme poslouchat hovor
- mode
- Jaký typ příposlechu má být zvolen spy - listener nemůže mluvit s exten ani se zákazníkem (pouze poslouchá) whisper - listener může mluvit s exten, ale zákazník to neslyší (listener slyší zákazníka) whisperprivate - listener může mluvit s exten, ale zákazník to neslyší (listener neslyší zákazníka) barge - listener může mluvit s exten i se zákazníkem (všichni se slyší) interactive - přepínání mezi módy pomocí DTMF klávesnice telefonu 4=spy(výchozí), 5=whisper, 6=barge
Ukázka použití:
Popis:
Příposlech hovoru, kdy listener může mluvit s klapkou, ale zákazník listenera neuslyší
Vstup:
https://MojeVU.daktela.com/api/3.0/Monitoring/json?access_token=1234567890123456789012345678901234567890&exten=100&listener=200&mode=whisper
Výstup:
{"error":null,"status":1}
Aktuální stav klapek
Akce:
- DeviceStates
Získá aktuální stav klapek, tedy která linka je ve stavu dostupná, nedostupná, přidržení hovoru, hovořící linka Možnosti ve status jsou: AVAILABLE (dostupná) UNAVAILABLE (nedostupná) ONHOLD (přidržení hovoru) INUSE (hovořící linka)
Ukázka použití:
Popis:
Vrací seznam všech linek s jejich stavy na PBX
Vstup:
https://MojeVU.daktela.com/api/3.1/DeviceStates/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":[{"exten":"100","status":"AVAILABLE","ip":"172.22.254.254","port":"5064"},{"exten":"200","status":"AVAILABLE","ip":"212.24.153.186","port":"20652"},{"exten":"300","status":"AVAILABLE","ip":"212.24.153.186","port":"5063"},{"exten":"500","status":"UNAVAILABLE","ip":"-none-","port":"0"}]}
Zpracování zmeškaných hovorů
Akce:
- MissedCall
Zjistí zda se má tento zmeškaný hovor z příchozí fronty zapsat do outbounder kampaně. Případně pokud už tam číslo zapsané je a zákazník se dovolal, tak se provede odstranění z outbounder kampaně, aby dané číslo agent nevolal.
Povinné parametry:
- clid
- Zmeškané telefonní číslo volajícího
- verb
- Zda byl hovor spojen (CONNECTED) či nikoliv (ABANDON)
Volitelné parametry:
- id_queue
- ID fronty ve které vzniknul zmeškaný hovor (stačí zadat id_queue nebo queue)
- queue
- Číslo fronty ve které vzniknul zmeškaný hovor (stačí zadat id_queue nebo queue)
Ukázka použití:
Popis:
Chceme zapsat zmeškaný hovor, který vzniknul u fronty, která má nastaveno zapisování zmeškaných hovoru do kampaně
Vstup:
https://MojeVU.daktela.com/api/3.0/MissedCall/json?access_token=1234567890123456789012345678901234567890&id_queue=1&verb=ABANDON&clid=200
Výstup:
{"error":null,"status":1}
Informace o zpracovávání emailu
Akce:
- EventEmail
Můžeme zapsat do statistik, že agent vyřizuje email, tuto událost pak uvidíme ve statistikách
Povinné parametry:
- eventid
- Jedinečné ID pro zpracování emailu (například číslo ticketu)
- event
- Zda se jedná o počáteční (START) nebo ukončenou (STOP) událost
- user
- Přihlašovací jméno agenta
- queue
- Číslo fronty
Volitelné parametry:
- Emailová adresa
- subject
- Subject emailu
Ukázka použití:
Popis:
Chceme informovat systém, že agent hajekmi začíná zpracovávat email/ticket číslo 12123
Vstup:
https://MojeVU.daktela.com/api/3.0/EventEmail/json?access_token=1234567890123456789012345678901234567890&eventid=12123&event=START&user=hajekmi
Výstup:
{"error":null,"status":1}
Získání informace o hovoru
Akce:
- AboutCall
Vrátí všechny CDR informace o hovoru, tedy například zdrojovou linku, cílovou linku, dobu vyzvánění, dobu spojení, směr, cestu k nahrávce, příchozí číslo a hash k binárnímu stažení nahrávky. Pro binární stažení nahrávky použijeme recording_hash, kterou předáme akci GetRecording
Povinné parametry:
- id_call
- Unikátní číslo hovoru
Ukázka použití:
Popis:
Chceme informace o hovoru s unikátním číslem 1319030658.204
Vstup:
https://MojeVU.daktela.com/api/3.0/AboutCall/json?access_token=1234567890123456789012345678901234567890&id_call=1319030658.204
Výstup:
{"status":1,"error":null,"result":[{"calldate":"2011-10-19 15:24:46","clid":"200","src":"200","dst":"468008580","dcontext":"from-internal","channel":"SIP\/200-0000009f","dstchannel":"SIP\/pbx-000000a0","lastapp":"ResetCDR","lastdata":"w","duration":"32","billsec":"29","disposition":"ANSWERED","amaflags":"3","accountcode":"","uniqueid":"1319030686.213","userfield":"\/RECORDINGS\/2011\/10\/19\/OUT200-468008580-20111019-152447-1319030686.213.wav","real_exten":"200","direction":"out","from_did":null,"id_call":"1319030658.204","recording_hash":"225fae9e2c0a2e830c7d0e9e80040f4245a65d2e1319030658.204"}]}
Stáhnutí nahrávky
Akce:
- GetRecording
Po předání validního hashe z akce AboutCall můžeme stáhnout nahrávku. Akce podporuje navázání přerušeného stahování.
Povinné parametry:
- recording_hash
- Tento hash získáme z akce AboutCall
Volitelné parametry:
- octetstream
- Pokud nastavíme na true, bude hlavička Content-Type nastavena na application/octet-stream. Pokud bude na false (výchozí hodnota), hlavička Content-Type bude nastavena na audio/x-wav nebo audio/mpeg.
Ukázka použití:
Popis:
Požadujeme nahrávku s kontrolním hashem 225fae9e2c0a2e830c7d0e9e80040f4245a65d2e1319030658.204
Vstup:
https://MojeVU.daktela.com/api/3.0/GetRecording/json?recording_hash=225fae9e2c0a2e830c7d0e9e80040f4245a65d2e1319030658204
Výstup:
Binární výstup s nahrávkou
Verze 3.1
Vytvoří odchozí call centrový hovor
Akce:
- CreateCall
Vytvoří odchozí telefonní hovor s požadavkem na call centrum.
Povinné parametry:
- user
- Přihlašovací jméno agenta, který chce vytvořit hovor
- number
- Telefonní číslo na které chceme volat
Volitelné parametry:
- accountcode
- Jedinečný kód, který se nese celou dobu s hovorem
- autoanswer
- Pokud telefon podporuje automatické vyzvednutí hovoru, je možné tutu funkci použít. Výchozí stav je vypnuto.
- waitingtime
- Jak dlouho v sekundach má zvonit telefon u linky / extension. Výchozí stav: 30 sekund
- dialingtime
- Jak dlouho v sekundach má zvonit telefon u zákazníka. Výchozí stav: 120 sekund
- idcall
- ID podle kterého se dá nalézt CDR informace a nahrávka
- agenttext
- Textová informace, kterou uvidí agent na displeji svého telefonu během vytáčení hovoru.
Ukázka použití:
Popis:
Odchozí hovor od uživatele michalhajek na veřejné číslo 800123456 a zapnutou funkcí auto answer
Vstup:
https://MojeVU.daktela.com/api/3.1/CreateCall/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&number=800123456&autoanswer=yes
Výstup:
{"error":null,"status":1,"result":{"id_call":"123456789.1234SJ"}}}
Popis:
Odchozí hovor od uživatele michalhajek na veřejné číslo 800123456 a zapnutou funkcí auto answer. Uživatel ale není přihlášen do odchozí fronty.
Vstup:
https://MojeVU.daktela.com/api/3.1/CreateCall/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&number=800123456&autoanswer=yes
Výstup:
{"error":"Agent nen\u00ed p\u0159ihl\u00e1\u0161en do odchoz\u00ed kampan\u011b\/fronty","status":0}
Příposlech call centrového hovoru
Akce:
- Monitoring
Online příposlech probíhajícího hovoru s požadavkem na call centrum
Povinné parametry:
- user
- Přihlašovací jméno operátora, kterého chceme poslouchat
- listener
- Číslo klapky, kde chceme poslouchat hovor
- mode
- Jaký typ příposlechu má být zvolen spy - listener nemůže mluvit s exten ani se zákazníkem (pouze poslouchá) whisper - listener může mluvit s exten, ale zákazník to neslyší (listener slyší zákazníka) whisperprivate - listener může mluvit s exten, ale zákazník to neslyší (listener neslyší zákazníka) barge - listener může mluvit s exten i se zákazníkem (všichni se slyší) interactive - přepínání mezi módy pomocí DTMF klávesnice telefonu 4=spy(výchozí), 5=whisper, 6=barge
Ukázka použití:
Popis:
Příposlech hovoru, kdy listener může mluvit s klapkou, ale zákazník listenera neuslyší
Vstup:
https://MojeVU.daktela.com/api/3.0/Monitoring/json?access_token=1234567890123456789012345678901234567890&user=hajekhu&listener=200&mode=spy
Výstup:
{"status":1,"error":null,"result":{"calling_direction":"out","calling_number":"468008585","calling_queue":"1006","calling_queue_name":"ObycOdchozi","ringing":"2","billsec":"177"}}
Odeslat skupinovou SMS zprávu
Akce:
- SendGroupSMS
Odešleme skupinovou SMS zprávu přes hostingovou bránu. Pokud vlastníme více SIM karet, tak se SMS zprávy odesílají cyklicky.
Povinné parametry:
- number
- Pole s telefonníma číslama, na které chceme poslat zprávu
- message
- Pole SMS zpráv. Délka jedné zprávy může být 160 znaku. Pokud je zadáno více znaků, bude SMS automaticky rozdělena na více zpráv. Může být zadáno maximálně 765 znaků.
Volitelné parametry:
- confirmation
- Zda má být zpětně potvrzeno doručenkou. Je třeba mít definovany URL callback nebo emailovou adresu, kam se zašle potvrzení.
- unicode
- Text SMS zprávy odeslán včetně diakritiky. Max délka jedné SMS zprávy se zkrátí na 70 znaků. Pokud není unicode nastaven, text zprávy se automaticky zkonvertuje na ASCII znaky.
- Email na který se má zaslat odpověd na odeslanou SMS zprávu nebo potvrzení o doručení.
- accountcode
- Volitelná identifikace zprávy. Tento kód bude vracen v URL callbacku.
Ukázka použití:
Popis:
Chceme odeslat skupinovou SMS zprávu na číslo 123456789 s textem Ahoj a současně chceme odeslat na číslo 987654321 s textem Cau. bez potvrzení o doručení. V count_sms se nám vrací počet odeslaných SMS zpráv.
Vstup:
https://api.daktela.com/api/3.1/SendGroupSMS/json?number[0]=123456789&message[0]=Ahoj1&number[1]=987654321&message[1]=Ahoj2&access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"2445":{"count_sms":0,"id":2445,"group_id":2445},"2446":{"count_sms":1,"id":2446,"group_id":2445},"2447":{"count_sms":1,"id":2447,"group_id":2445}}}
Odeslat SMS zprávu
Akce:
- SendSMS
Odešleme SMS zprávu přes hostingovou bránu. Pokud vlastníme více SIM karet a nespecifikujeme číslo gw, slotu a portu, tak se SMS zprávy odesílají cyklicky.
Povinné parametry:
- number
- Telefonní číslo, na které chceme poslat zprávu
- message
- Text SMS zprávy. Délka jedné zprávy může být 160 znaku. Pokud je zadáno více znaků, bude SMS automaticky rozdělena na více zpráv. Může být zadáno maximálně 765 znaků.
Volitelné parametry:
- confirmation
- Zda má být zpětně potvrzeno doručenkou. Je třeba mít definovany URL callback nebo emailovou adresu, kam se zašle potvrzení.
- unicode
- Text SMS zprávy odeslán včetně diakritiky. Max délka jedné SMS zprávy se zkrátí na 70 znaků. Pokud není unicode nastaven, text zprávy se automaticky zkonvertuje na ASCII znaky.
- Email na který se má zaslat odpověd na odeslanou SMS zprávu nebo potvrzení o doručení.
- accountcode
- Volitelná identifikace zprávy. Tento kód bude vracen v URL callbacku.
- gw
- Můžeme specifikovat přes jaké číslo brány má SMS odejít, pokud je v hostingu více SIM karet. Pro použití je třeba specifikovat gw, slot i port.
- slot
- Můžeme specifikovat přes jaké číslo slotu má SMS odejít, pokud je v hostingu více SIM karet. Pro použití je třeba specifikovat gw, slot i port.
- port
- Můžeme specifikovat přes jaké číslo portu má SMS odejít, pokud je v hostingu více SIM karet. Pro použití je třeba specifikovat gw, slot i port.
Ukázka použití:
Popis:
Chceme odeslat SMS zprávu na číslo 123456789 bez potvrzení o doručení. V count_sms se nám vrací počet odeslaných SMS zpráv.
Vstup:
https://api.daktela.com/api/3.1/SendSMS/json?number=123456789&message=Ahoj&access_token=1234567890123456789012345678901234567890
Výstup:
{"error":null,"status":1,"result":{"count_sms":"1", "id":"2222"}}
Popis:
Odešleme SMS zprávu s požadavkem o potvrzeném doručení(musí být nastaven callback nebo email, na který chceme tuto informaci předat) a vložíme i accountcode.
Vstup:
https://api.daktela.com/api/3.1/SendSMS/json?number=123456789&message=Ahoj&access_token=1234567890123456789012345678901234567890&confirmation=yes&accountcode=ID12345
Výstup:
{"error":null,"status":1,"result":{"count_sms":"1", "id":"2222"}}
Volitelné nastavení pro hostovanou SMS bránu
Akce:
- SetSMSSettings
Možnost nastavit příchozí nebo odchozí URL callback, který se zavolá při každé přijaté nebo odeslané SMS zprávě. Stejně tak se dá nastavit email, na který se má příchozí zpráva poslat. URL může obsahovat přihlašovací údaje přes Basic Authorizaci (htaccess). Například http://login:heslo@pbx.in:8080/path
Volitelné parametry:
- incoming_callback
- Na jakou URL adresu se mají notifikovat všechny příchozí SMS zprávy.
- outgoing_callback
- Na jakou URL adresu se mají notifikovat všechny odchozí SMS zprávy, včetně doručenek.
- incoming_email
- Na jakou emailovou adresu se mají notifikovat všechny příchozí SMS zprávy.
- outgoing_email
- Na jakou emailovou adresu se mají notifikovat všechny odchozí SMS zprávy včetně doručenek.
Ukázka použití:
Popis:
Nastavení příchozího URL callbacku na http://callback.daktela.com/CRM/sms
Vstup:
https://api.daktela.com/api/3.1/SetSMSSettings/json?access_token=1234567890123456789012345678901234567890&incoming_callback=http://MojeVU.daktela.com/CRM/sms
Výstup:
{"error":null,"status":1}
Informace o hostovaných SIM kartach
Akce:
- GetSMSSettings
Dostanete informaci o tom, jaké URL callbacky, emailové callbacky máte nastavené. Získáte také informaci o tom na jakých pozicích SIM karty vlastníte, využijete v případě, pokud chcete poslat zprávu přes konkrétní SIM kartu.
Ukázka použití:
Popis:
Získáte callbacky a pozice SIM karet, přes které můžete odesílat SMS zprávy. V Našem případě to je brána číslo 1, slot 3 a v něm porty 1,2,3.
name - pojmenování SIM karty, při instalaci tam budete mít tel. číslo SIM karty imsi - International Mobile Subscriber Identity - jde o unikátní číslo přidělené mobilním operátorem, slouží k jednoznačné identifikaci u operátora ccid - Integrated Circuit Card ID - sériové číslo, toto číslo je vyznačeno na původním obalu, kde byla SIM karta nalepená
Vstup:
http://api.daktela.com/api/3.1/GetSMSSettings/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"settings":{"billing_id":"123","enabled_sms":"1","outgoing_price":"0.000","incoming_callback":"","outgoing_callback":"","incoming_email":"","outgoing_email":""},"sim":[{"gw_number":1,"slot_number":1,"port_number":1,"name":"775473674","operator":"Vodafone CZ","imsi":"123456789012345","ccid":"1234567890123456789"}]}}
Vrátí všechny SMS zprávy s možností vyhledávání
Akce:
- GetSMS
Pokud nepředáme vyhledávací kritéria, tak vrátí všechny SMS zprávy seřazené podle datumu (od nejstarší po nejnovější). Vyhledávací kritéria jsou telefonní číslo, text ve zprávách, číslo brány, číslo slotu, číslo portu
Volitelné parametry:
- id
- ID konkrétní SMS zprávy
- direction
- Vrátíme jen příchozí(in) nebo odchozí(out) zprávy.
- keyword
- Vyhledávání podle telefonního čísla nebo textu ve zprávách.
- accountcode
- Volitelná identifikace zprávy u odchozí zprávy. Možnost předat jako pole, pokud chceme předat více accountcodu.
- Volitelná položka email, pokud byla předána u odchozí zprávy.
- gw
- Vrátíme zprávy, které šly přes tuto bránu.
- slot
- Vrátíme zprávy, které šly přes tento slot.
- port
- Vrátíme zprávy, které šly přes tento port.
- datetime_from
- Od jakého data a času se mají vypsat SMS zprávy. Formát vstupu je YYYY-MM-DD HH:MM:SS
- datetime_to
- Do jakého data a času se mají vypsat SMS zprávy. Formát vstupu je YYYY-MM-DD HH:MM:SS
Ukázka použití:
Popis:
Vrátíme všechny SMS zprávy s vyhledáváním textu ahoj
Vstup:
https://api.daktela.com/api/3.1/GetSMS/json?access_token=1234567890123456789012345678901234567890&keyword=ahoj
Výstup:
{"status":1,"error":null,"result":[{"id":"7180","billing_id":"259","direction":"out","datetime":"2011-10-11 01:07:01","datetime_processed":"2011-10-10 23:07:26","number":"603927227","attempts":"0","count_sms":"1","from_client":"","message":"Ahoj toto je jen na ukazku","result":"error","confirmation_enable":"1","confirmed":"0","price":"0.000","gw_number":"1","slot_number":"1","port_number":"2","accountcode":null,"email":null},{"id":"7178","billing_id":"259","direction":"out","datetime":"2011-10-10 17:25:19","datetime_processed":"2011-10-10 15:27:03","number":"603927227","attempts":"0","count_sms":"1","from_client":"","message":"Ahoj,jak se mas?","result":"ok","confirmation_enable":"1","confirmed":"1","price":"3.500","gw_number":"1","slot_number":"1","port_number":"1","accountcode":null,"email":null}]}
Informace o odeslaných skupinových SMS zprávách
Akce:
- StatusGroupSMS
Vrátí počty zpráv, které jsou ve stavu odeslánych, čekajících, chybně odeslaných
Volitelné parametry:
- id
- ID konkrétní skupinové SMS zprávy (group_id)
- waiting
- Pokud chceme získat informace jen o čekajících skupinových zprávách, nastavíme na true hodnotu.
Ukázka použití:
Popis:
Získáme informace o počtu zpráv, které je třeba ještě odeslat u skupinových zpráv Význam jednotlivých hodnot z výstupu:
- group_id - ID skupinové SMS
- accountcode - Volitelný identifikátor, pokud byl specifikovaný při odesílání
- datetime_processed - Datum posledního zpracování/odeslání SMS zprávy
- datetime - Datum, kdy byl vytvořen požadavek na odeslání skupinové SMS zprávy
- count_total - Celkový počet SMS zpráv ve skupině
- count_ok - Počet v pořádku odeslaných zpráv ze skupiny
- count_waiting - Počet zpráv, které čekají na odeslání ve skupině
- count_error - Počet zpráv, které skončily s chybou
Vstup:
https://api.daktela.com/api/3.1/StatusGroupSMS/json?access_token=1234567890123456789012345678901234567890&waiting=true
Výstup:
{"status":1,"error":null,"result":{"11213":{"group_id":"11213","accountcode":"1","datetime_processed":"2012-04-14 02:43:39","datetime":"2012-04-14 02:43:33","count_total":"3","count_ok":"1","count_waiting":"2","count_error":"0"}}}
Odstraní odesílání skupinových SMS zpráv
Akce:
- RemoveGroupSMS
Nenávratně zastaví skupinové odesílání SMS zpráv, které jsou ve stavu čekání na odeslání. Výsledkem je počet zpráv, které odeslány nebudou ze skupiny.
Povinné parametry:
- id
- ID konkrétní skupinové SMS zprávy (group_id)
Ukázka použití:
Popis:
Odstraníme skupinové SMS zprávy se skupinovým ID 1234
Vstup:
https://api.daktela.com/api/3.1/RemoveGroupSMS/1234/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"count_removed":2}}
Verze 3.2
Vyhledáni kontaktů, které jsou naimportované v Call Centru
Akce:
- SimpleSearchContact
Výstupem jsou všechny kontakty včetně celé formulářové struktury, které odpovídají hledanému filtru
Povinné parametry:
- phonenumber
- Telefonní číslo, které chceme hledat
Volitelné parametry:
- queues
- Pole čísel kampaní ve kterých chceme hledat telefonní číslo
Ukázka použití:
Popis:
Získáme kontakty, které jsou z čísla 226211245 a hledání omezíme na čísla front 1002 a 1000
Vstup:
https://MojeVU.daktela.com/api/3.2/SimpleSearchContact/json?phonenumber=226211245&queues[]=1002&queues[]=1000&access_token=1234567890123456789012345678901234567890
Výstup:
Popis:
Vstup:
Výstup:
{"status":1,"error":null,"result":[{"id_list":"3","name_campaign":"Outbounder","id_code_possibili":"3","number_campaign":"1002","array_struct":{"id_field":["1","6","2","7"],"type_field":["text","text","text","selectbox"],"label_field":["Jm\u00e9no","Email","P\u0159\u00edjmen\u00ed","Vyber"],"default_value_field":["","","","[\"ANO\",\"NE\"]"],"ro_field":[false,false,false,false],"order_field":["1","2","3","4"],"value_data":["Michal","noreply@daktela.com","Hajek","ANO"]},"sysdata_struct":{"id":"3","number":"2262112455","date":"2012-03-20 16:12:51","date_nextcall":null,"callstatus":"7","action":"5","asterisk_uniqueid":"1329393906.6650WS","agent_id":"3"},"status_error":null}]}
Verze 3.3
Importuje data do outbounder kampaně
Akce:
- ImportData
Importuje data do outbounder kampaně formou CSV souboru, který se posíla jako multipart/form-data. Je třeba pamatovat, pokud se změní struktura kampaně, například přidáním nebo jiném rozmístěním datových položek, že je třeba upravit i CSV soubor, tak, aby to odpovídalo novému uspořádání.
Povinné parametry:
- queue
- Číslo fronty nebo kampaně do které chceme naimportovat záznamy
- csv
- CSV soubor posíláný jako application/octet-stream zabalený v multipart/form-data (stejně jako když se uploaduje soubor přes webový prohlížeč)
- charset
- V jaké znakové sadě je CSV soubor uložen. Možnosti jsou UTF-8 nebo ISO-8859-2.
Volitelné parametry:
- user
- Pokud chceme přiřadit importované kontakty z CSV souboru konkrétnímu uživateli. Takto naimportované kontakty bude navolávat pouze tento uživatel.
- date_nextcall
- Pokud chceme specifikovat od kdy se mají importované kontakty z CSV souboru nejdřive navolávat. Formát času je ve formátu YYYY-MM-DD HH:MM:SS
Ukázka použití:
Popis:
Naimportujeme CSV soubor, který jsme si vytvořili ze šablony přes GUI v modulu Nastavení call centra. Importované záznamy nechceme rezervovat pro žádného konkrétního operátora, ani specifikovat, kdy nejdříve se mají záznamy nabízet volným agenům. Importujeme do kampaně s číslem 1002. Vrácena hodnota count značí, kolik záznamů se naimportovalo. Celkem se jedná od 2 záznamy.
Ukázka HTTP hlavičky, kterou posíláme:
GET https://MojeVU.daktela.com/api/3.3/ImportData/json?access_token=1234567890123456789012345678901234567890&queue=1002&charset=UTF-8 Content-Type: multipart/form-data; boundary=----------------------------32508bfa4561 ----------------------------32508bfa4561 Content-Disposition: form-data; name="csv"; filename="/tmp/campaign_leden.csv" Content-Type: application/octet-stream .... ----------------------------32508bfa4561
Vstup:
https://MojeVU.daktela.com/api/3.3/ImportData/json?access_token=1234567890123456789012345678901234567890&queue=1002&charset=UTF-8&csv={...}
Výstup:
{"status":1,"error":null,"result":{"count":2}}
Popis:
Naimportujeme CSV soubor, který jsme si vytvořili ze šablony přes GUI v modulu Nastavení call centra. Importované záznamy chceme rezervovat pro konkrétního operátora, jehož login je hugo a současně nastavíme, aby se tyto kontkaty navolávaly až od 1.února 2012 od 08:00 hod. Importujeme do kampaně s číslem 1002. Vrácena hodnota count značí, kolik záznamů se naimportovalo. Celkem se jedná od 2 záznamy.
Vstup:
https://MojeVU.daktela.com/api/3.3/ImportData/json?access_token=1234567890123456789012345678901234567890&queue=1002&charset=UTF-8&csv={...}&user=hugo&call_date=2012-02-01%2008:00:00
Výstup:
{"status":1,"error":null,"result":{"count":2}}
Popis:
Ukážeme si, jak lze toto API používat pomocí PHP interpretu s nainstalovaným rozšířením CURL. Soubor se jmenuje /tmp/campaign_leden.csv a je uložen ve znakové sadě UTF-8.
Vstup:
// Inicializace cURL - jako parametr predame URL, kde bezi Daktela API
$curl_handle = curl_init('https://MojeVU.daktela.com/api/3.3/ImportData/json?access_token=1234567890123456789012345678901234567890&charset=UTF-8&queue=1002&date_nextcall=2011-05-12%2001:01:01');
// Nastavime cestu k souboru k CSV, soubor se jmenuje /tmp/campaign_leden.csv, zavináčem před jménem souboru říkáme curl, že se jedna o soubor.
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, Array('csv'=>'@/tmp/campaign_leden.csv'));
// Odpoved z Daktela API vratime jako string
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, TRUE);
// necheckuji validitu SSL certifikatu - mam starou verzi curl
curl_setopt($curl_handle, CURLOPT_SSL_VERIFYPEER, FALSE);
// Provedeme uploadovani dat
$return = curl_exec($curl_handle);
// Pokud doslo k chybe tak ji vytiskneme
if(curl_errno($curl_handle)) echo 'Chyba: '.curl_error($curl_handle);
// Zavreme session
curl_close($curl_handle);
// Vytiskneme vraceny data z Daktela API, dale s tim pracujeme jako JSON
echo $return;
Výstup:
{"status":1,"error":null,"result":{"count":2}}
Vytvoření nebo editování pauzy
Akce:
- CreatePause
Vytvoří nebo upraví pauzu, která bude dostupná pro všechny operátory v call centrových aplikací, jako je například WebAgent, PhoneAgent, API.
Povinné parametry:
- title
- Jméno pauzy
- type
- O jaký typ pauzy se jedna. Zda je to systémová pauza Wrap(wrap), systémová pauza Lajdák(lajdak) nebo nesystémová pauza(normal).
- paid
- Zda je pauza proplácená(yes) nebo není(no). Například Wrap pauza by měla být proplácená, ale pauza Lajdák nikoliv. *
Volitelné parametry:
- id
- ID pauzy, kterou získáme přes GetPauses. Pokud předáme ID pauzy, tak provedeme editaci pauzy.
- code
- Speciální kód pauzy
Ukázka použití:
Popis:
Vytvoříme novou pauzu Oběd, nesystémové pauzy (normal), která se nebude operátorům proplácet.
Vstup:
https://MojeVU.daktela.com/api/3.3/CreatePause/json?access_token=1234567890123456789012345678901234567890&name=Obed&type=normal&billable=no
Výstup:
{"status":1,"error":null,"result":null}
Popis:
Změníme jméno pauzy Obed s ID 9 na nové jméno Svacina
Vstup:
https://MojeVU.daktela.com/api/3.3/CreatePause/9/json?access_token=1234567890123456789012345678901234567890&name=Svacina&type=normal&billable=yes
Výstup:
{"status":1,"error":null,"result":null}
Výpis všech pauz
Akce:
- GetPauses
Vypíšeme všechny pauzy, včetně smazaných.
Ukázka použití:
Popis:
Výpis všech pauz
Vstup:
https://MojeVU.daktela.com/api/3.3/GetPauses/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"3":{"pause":"3","name":"666","title":"Lajdak","type":"lajdak","paid":"0","deleted":"0"},"2":{"pause":"2","name":"20","title":"Wrap","type":"wrap","paid":"1","deleted":"0"},"4":{"pause":"4","name":"13","title":"Backoffice","type":null,"paid":"1","deleted":"0"},"6":{"pause":"6","name":"11","title":"Prestavka","type":null,"paid":"0","deleted":"0"},"7":{"pause":"7","name":"10","title":"Obed","type":"","paid":"0","deleted":"0"},"8":{"pause":"8","name":"667","title":"Email","type":"","paid":"1","deleted":"0"},"9":{"pause":"9","name":"668","title":"Obed22","type":"","paid":"0","deleted":"0"}}}
Verze 3.4
Přihlášení uživatele do Call Centra
Akce:
- Login
Předáme uživatelské jméno a číslo linky pod kterou chceme uživatele přihlásit do Call Centra. Pokud uživatel má definované automatické přihlášení do fronty, tak se provede automatické přihlašení do fronty. Jinak je třeba zavolat LoginQueue a přihlásit uživatele do front.
Povinné parametry:
- user
- Přihlašovací jméno agenta
Volitelné parametry:
- extension
- Číslo linky u které agent sedí. Pokud agent má svázanou linku se svým učtem, není potřeba předávat tuto linku.
Ukázka použití:
Popis:
Přihlásíme agenta michalhajek, který sedí u linky 100 do Call Centra
Vstup:
https://MojeVU.daktela.com/api/3.4/Login/json?access_token=1234567890123456789012345678901234567890&user=michalhajek&extension=100
Výstup:
{"status":1,"error":null,"result":null}
Odhlášení uživatele z Call Centra
Akce:
- Logout
Předáme uživatelské jméno agenta, kterého chceme odhlásit ze všech přihlášených front a z call centra. Dojde tak k uvolnení linky u které agent sedi.
Povinné parametry:
- user
- Přihlašovací jméno agenta
Ukázka použití:
Popis:
Odhlásíme agenta michalhajek z Call Centra
Vstup:
https://MojeVU.daktela.com/api/3.4/Logout/json?access_token=1234567890123456789012345678901234567890&user=michalhajek
Výstup:
{"status":1,"error":null,"result":null}
Verze 3.5
Realtime statistika front
Akce:
- RTStatsQueues
Vrací aktuální přehled o celkovém počtu agentů a hovorů po jednotlivých frontách
Ukázka použití:
Popis:
Význam jednotlivých hodnot z výstupu:
- id - ID fronty
- users_total - Počet přihlášených operátorů v této frontě
- users_ready - Počet volných operátorů, kteří jsou schopni přijímat hovory v této frontě
- users_busy - Počet obsazených operátorů, kteří právě hovoří v této frontě
- users_pause - Počet zapauzovaných operátorů, kteří mají nastavenou pauzu v této frontě
- calls_count - Počet probíhajících hovorů v této frontě
- calls_wait - Počet hovorů, které jsou ve stavu vyzvánění v této frontě
- calls_time - Nejdelší doba čekání na zodpovězení hovoru v této frontě
Vstup:
https://MojeVU.daktela.com/api/3.5/RTStatsQueues/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"4":{"id":"4","users_total":1,"users_ready":0,"users_busy":1,"users_pause":0,"calls_count":1,"calls_wait":0,"calls_time":null},"6":{"id":"6","users_total":1,"users_ready":0,"users_busy":1,"users_pause":0,"calls_count":0,"calls_wait":0,"calls_time":0}}}
Realtime statistika front s celkovým přehledem
Akce:
- RTStatsQueuesSummary
Vrací aktuální celkový přehled o celkovém počtu agentů a hovorů ve frontách
Volitelné parametry:
- users
- ID operátorů, které chceme vyfiltrovat
- queues
- ID front, které chceme vyfiltrovat
Ukázka použití:
Popis:
Význam jednotlivých hodnot z výstupu:
- users_total - Celkový počet přihlášených operátorů
- users_ready - Celkový počet volných operátorů, kteří jsou schopni přijímat hovory
- users_busy - Celkový počet obsazených operátorů, kteří právě hovoří
- users_pause - Celkový počet zapauzovaných operátorů, kteří mají nastavenou pauzu
- calls_count - Celkový počet probíhajících hovorů
- calls_in - Celkový počet příchozích hovorů
- calls_out - Celkový počet odchozích hovorů
- calls_wait - Celkový počet hovorů, které jsou ve stavu vyzvánění
- calls_time - Nejdelší doba čekání v sekundách na zodpovězení hovoru
Vstup:
https://MojeVU.daktela.com/api/3.5/RTStatsQueuesSummary/json?users[0]=3&users[1]=1&access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"users_total":1,"users_ready":0,"users_busy":0,"users_pause":1,"calls_count":0,"calls_in":0,"calls_out":0,"calls_wait":0,"calls_time":0}}
Realtime statistika hovorů
Akce:
- RTStatsCalls
Vrací aktuální přehled probíhajících hovorů
Ukázka použití:
Popis:
Význam jednotlivých hodnot z výstupu:
- id - ID hovoru
- queue - ID fronty, kde probíhá hovor
- agent - ID operátora, který vyřizuje hovor (hovor musí být zodpovězený)
- users - ID operátorů, kteří jsou spojeni s hovorem (při ringall strategii ve frontě, zde bude uvedeno více operátorů)
- clid - Telefonní číslo zákazníka
- direction - Směr hovoru (in,out)
- state - V jakém stavu se nachází hovor (Waiting,Ringing,Speaking,On Hold, Transfered)
- enter_time_absolute - Čas, kdy hovor vstoupil do fronty. Formát času YYYY-MM-DD HH:MM:SS
- enter_time_relative - Kolik sekund trvá hovor, včetně doby čekání, vyzvánění a hovoření.
- wait_time_absolute - Čas, kdy hovor začal čekat ve frontě (stejný jako enter_time_absolute). Formát času YYYY-MM-DD HH:MM:SS
- wait_time_relative - Kolik sekund trvalo, než byl hovor zodpovězen
- ring_time_absolute - Čas, kdy hovor začal vyzvánět u operátora. Formát času YYYY-MM-DD HH:MM:SS
- ring_time_relative - Kolik sekund trvalo vyzvánění
- answer_time_absolute - Čas, kdy byl hovor zodpovězen operátorem. Formát času YYYY-MM-DD HH:MM:SS
- answer_time_relative - Kolik sekund trvá hovoření s operátorem
- hold_time_absolute - Čas, kdy byl hovor přidržen operátorem (hold). Formát času YYYY-MM-DD HH:MM:SS
- hold_time_relative - Kolik sekund už je hovor přidržen (hold)
Vstup:
https://MojeVU.daktela.com/api/3.5/RTStatsCalls/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"1332333840.98":{"id":"1332333840.98","queue":"6","agent":"3","users":["3"],"clid":"100","direction":"in","state":"Speaking","enter_time_absolute":"2012-03-21 13:44:02","enter_time_relative":"7","wait_time_absolute":"2012-03-21 13:44:02","wait_time_relative":"5","ring_time_absolute":"2012-03-21 13:44:04","ring_time_relative":"5","answer_time_absolute":"2012-03-21 13:44:07","answer_time_relative":"2","hold_time_absolute":null,"hold_time_relative":"0"}}}
Realtime statistika přihlášených operátorů
Akce:
- RTStatsSessions
Vrací aktuální přehled přihlášených operátorů
Ukázka použití:
Popis:
Význam jednotlivých hodnot z výstupu:
- id - ID operátora
- extension - Číslo linky
- queues - ID front, kde je operátor přihlášen
- state - V jakém stavu se operátor nachází (Logged, Idle, Paused, Calling, Ringing, Speaking, On Hold)
- pause - Pokud je state Paused, zde je uvedeno ID pauzy
- state_time_absolute - Čas, kdy se u operátora změnil stav. Formát času YYYY-MM-DD HH:MM:SS
- state_time_relative - Kolik sekund uplynulo od poslední změny stavu
- login_time_absolute - Čas, kdy se operátor přihlásil. Formát času YYYY-MM-DD HH:MM:SS
- login_time_relative - Kolik sekund je operátor přihlášen
Vstup:
https://MojeVU.daktela.com/api/3.5/RTStatsSessions/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"3":{"id":"3","extension":"200","queues":["6"],"state":"Paused","pause":"4","state_time_absolute":"2012-03-21 14:08:06","state_time_relative":"940","login_time_absolute":"2012-03-21 10:21:21","login_time_relative":"14545"}}}
Realtime statistika aktivovaných pauz
Akce:
- RTStatsPauses
Vrací aktuální přehled nastavených pauz u operátorů
Ukázka použití:
Popis:
Význam jednotlivých hodnot z výstupu:
- id - ID pauzy
- users - ID operátorů, kteří mají tuto pauzu nastavenou
- count - Počet operátorů, kteří mají nastavenou tuto pauzu
Vstup:
https://MojeVU.daktela.com/api/3.5/RTStatsPauses/json?access_token=1234567890123456789012345678901234567890
Výstup:
{"status":1,"error":null,"result":{"4":{"id":"4","count":"1","users":["3"]}}}
Výpis všech hovorů v callcentru
Akce:
- StatsCalls
Vypsání callcentrových hovorů
Povinné parametry:
- datetime_from
- Od jakého času se mají hledat hovory. Formát času YYYY-MM-DD HH:MM:SS
- datetime_to
- Do jakého času se mají hledat hovory. Formát času YYYY-MM-DD HH:MM:SS
Volitelné parametry:
- phonenumber
- Telefonní číslo podle kterého se má hledat
Ukázka použití:
Popis:
Vyhledáme hovory s číslem 00420123456789 v časovém rozmezí 2012-03-21 00:00:00 do 2012-03-22 00:00:00
Vstup:
https://MojeVU.daktela.com/api/3.5/StatsCalls/json?access_token=1234567890123456789012345678901234567890&phonenumber=00420123456789&datetime_from=2012-03-21 00:00:00&datetime_to=2012-03-22 00:00:00
Výstup:
{"status":1,"error":null,"result":{"496":{"call":"1332337304.105","call_time":"2012-03-21 14:41:45","direction":"in","queue":"6","user":"3","answered":false,"clid":"00420123456789","waiting_time":8,"ringing_time":0,"hold_time":0,"duration":0,"disposition":"caller","orig_posision":1,"attempts":0}}}
Výpis CDR s cenou hovoru
Akce:
- CDR
Vypsání CDR (Call Detail Records) s funkcí účtování hovoru. Cena hovoru je zavislá na ceníku, který je importovaný do modulu Přehledy voláni
Povinné parametry:
- datetime_from
- Od jakého času se mají vypsat hovory. Formát času YYYY-MM-DD HH:MM:SS
- datetime_to
- Do jakého času se mají vypsat hovory. Formát času YYYY-MM-DD HH:MM:SS
Volitelné parametry:
- real_extens
- Čísla klapek, která se účastnila hovorů. Možnost zadat více klapek do pole.
- accountcodes
- Podle jakých accountcodů vypsat hovory. Možnost zadat více accountcodů do pole.
- direction
- Jaký směr hovoru chceme vypsat. Možnosti jsou in,out,local
- destinations
- Přes jaké destinace vypsat hovory. Je možné zadávat více typů destinací do pole. Informace o destinacích nalezneme v modulu Přehledy volání.
- disposition
- Vypsání jen zodpovězených hovorů, nastavíme na ANSWERED.
- src_channels
- Přes jaké příchozí kanály chceme vypsat hovory. Možnost zadat více kanálů do pole.
- dst_channels
- Přes jaké odchozí kanály chceme vypsat hovory. Možnost zadat více kanálů do pole.
- min_price_call
- Budou vypsány jen hovory, které jsou dražší než zde specifikujeme. Měna se zde nespefifikuje, záleží v jaké měně je importovaný ceník v modulu Přehledy volání. Například 2.50
Ukázka použití:
Popis:
Vypsat zodpovězené odchozí hovory, které jsou uskutečněny v březnu 2012 pro klapky 300, 500 a vynechat hovory, které jsou levnější nez 1.20 Kč. Současně hovory šly přes kanaly SIP/daktela a SIP/gsm
Vstup:
https://MojeVU.daktela.com/api/3.5/CDR/json?access_token=1234567890123456789012345678901234567890&datetime_from=2012-03-01%2000:00:00&datetime_to=2012-03-31%2023:59:59&direction=out&disposition=ANSWERED&min_price_call=1.20&real_extens[]=300&real_extens[]=500&dst_channels[]=SIP/proxy&dst_channels=SIP/gsm
Výstup:
{"status":1,"error":null,"result":[{"date":"2012-03-05 13:05:20","real_exten":"500","dst":"468008585","billsec":"321","duration":"328","disposition":"ANSWERED","accountcode":"","uniqueid":"1330949120.242","id_call":"1330949120.242","from_did":null,"direction":"out","price":"4.94999987","destination_type":"Pevna_Linka","destination_type_description":"Pevna_Linka","destination":"Ceska republika","destination_price":"0.9000"},{"date":"2012-03-05 13:10:57","real_exten":"500","dst":"468008585","billsec":"170","duration":"177","disposition":"ANSWERED","accountcode":"","uniqueid":"1330949457.244","id_call":"1330949457.244","from_did":null,"direction":"out","price":"2.69999993","destination_type":"Pevna_Linka","destination_type_description":"Pevna_Linka","destination":"Ceska republika","destination_price":"0.9000"},{"date":"2012-03-05 13:13:56","real_exten":"500","dst":"468008585","billsec":"2200","duration":"2206","disposition":"ANSWERED","accountcode":"","uniqueid":"1330949636.250","id_call":"1330949636.250","from_did":null,"direction":"out","price":"33.29999912","destination_type":"Pevna_Linka","destination_type_description":"Pevna_Linka","destination":"Ceska republika","destination_price":"0.9000"},{"date":"2012-03-05 13:51:08","real_exten":"500","dst":"468008585","billsec":"923","duration":"929","disposition":"ANSWERED","accountcode":"","uniqueid":"1330951868.260","id_call":"1330951868.260","from_did":null,"direction":"out","price":"13.94999963","destination_type":"Pevna_Linka","destination_type_description":"Pevna_Linka","destination":"Ceska republika","destination_price":"0.9000"},{"date":"2012-03-08 14:13:31","real_exten":"500","dst":"840101010","billsec":"4","duration":"8","disposition":"ANSWERED","accountcode":"","uniqueid":"1331212411.14","id_call":"1331212411.14","from_did":null,"direction":"out","price":"3.82999992","destination_type":"Specialni_Cisla","destination_type_description":"Specialni_Cisla","destination":"Bila linka ","destination_price":"1.9150"},{"date":"2012-03-13 16:57:13","real_exten":"300","dst":"603927227","billsec":"6","duration":"17","disposition":"ANSWERED","accountcode":"1002","uniqueid":"1331654233.196","id_call":"1331654233.586WS","from_did":null,"direction":"out","price":"2.25000000","destination_type":"Mobilni_Hovory","destination_type_description":"Mobilni_Hovory","destination":"Ceska republika - mobil T-mobile","destination_price":"4.5000"},{"date":"2012-03-26 10:51:29","real_exten":"500","dst":"491200163","billsec":"83","duration":"91","disposition":"ANSWERED","accountcode":"1002","uniqueid":"1332751889.0","id_call":"1332751889.9807WS","from_did":null,"direction":"out","price":"1.34999996","destination_type":"Pevna_Linka","destination_type_description":"Pevna_Linka","destination":"Ceska republika","destination_price":"0.9000"}]}