(→Příklad přesunu nahrávky) |
|||
Řádka 640: | Řádka 640: | ||
− | ''Přesun a | + | ''Přesun a přejmenování nahrávky'' |
<code><nowiki>http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav&path=/mnt/nas_server/asterisk/2018</nowiki></code> | <code><nowiki>http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav&path=/mnt/nas_server/asterisk/2018</nowiki></code> | ||
Řádka 653: | Řádka 653: | ||
<code><nowiki>http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav</nowiki></code> | <code><nowiki>http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav</nowiki></code> | ||
− | |||
===Vrácené hodnoty v JSON formátě=== | ===Vrácené hodnoty v JSON formátě=== |
Verze z 3. 1. 2018, 16:40
API rozhraní
Ústředna VoIPSUN PBX disponuje mimo Asterisk API rozhraní i jednoduchým API rozhraním, přes které lze jednoduše inicializovat hovor a ukončit (click2call) nebo zobrazit seznam aktivních hovorů. Další funkce lze doprogramovat na přání klienta.
Obsah
- 1 Vytočení čísla - akce originate
- 2 Vytočení čísla - akce dial
- 3 Ukončení hovoru
- 4 Seznam probíhajících hovorů
- 5 Příposlech hovoru
- 6 Stav registrací SIP kanálů
- 7 Přihlášení agenta do callcentra
- 8 Odhlášení agenta z callcentra
- 9 Zapnutí pauzy agenta
- 10 Vypnutí pauzy agenta
- 11 Přidání agenta do fronty callcentra
- 12 Odebrání agenta z fronty callcentra
- 13 Stav agenta
- 14 Stav fronty callcentra
- 15 Přesunutí nahrávky
- 16 Chybové stavy
- 16.1 Obecné chybové hlášení
- 16.2 Chyby při vytočení čísla - akce originate
- 16.3 Chyby při vytočení čísla - akce dial
- 16.4 Chyby při příposlechu
- 16.5 Chyby při zavěšení hovoru
- 16.6 Chyby při přihlášení agenta
- 16.7 Chyby při odhlášení agenta
- 16.8 Chyby při pauzování agenta
- 16.9 Chyby při zrušení pauzy agenta
- 16.10 Chyby při přidání agenta do fronty callcentra
- 16.11 Chyby při odebrání agenta z fronty callcentra
- 16.12 Chyby při zjištění stavu agenta
- 16.13 Chyby při přesuně nahrávek
Vytočení čísla - akce originate
Inicializovat nový hovor je možné čtyřmi způsoby. Liší se jen v informaci, na kterou telefonní linku má ústředna zavolat předtím, než začne spojovat hovor na cílové telefonní číslo. Vytočení čísla funguje tak, že ústředna nejprve zavolá na zvolenou linku a po vyzvednutí hovoru začne okamžitě vytáčet cílové číslo.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - originate - ústředně bude předán pokyn na vytvoření nového hovoru.
dstNum - cílové telefonní číslo - číslo, na které bude hovor spojen.
srcExtenPublicNum - veřejné číslo linky - veřejné číslo linky, na kterou ústředna zavolá před vytočením cílového telefonního čísla.
srcExtenInternalNum - interní číslo linky - interní číslo linky, na kterou ústředna zavolá před vytočením cílového telefonního čísla.
srcExtenId - ID linky - ID linky, na kterou ústředna zavolá před vytočením cílového telefonního čísla. ID lze zjistit z databáze z tabulky extensions. Tento způsob je určen především pro vývojáře informačních systémů s přístupem do databáze ústředny.
srcSipUsername - SIP uživatelské jméno - SIP uživatelské jméno linky, na kterou ústředna zavolá před vytočením cílového telefonního čísla.
dialplanName - název číslovacího plánu - pokud používáte v ústředně více interních linek se stejným číslem, tak je nutné upřesnit jméno číslovacího plánu, ze kterého se má vybrat interní linka. Jinak je parametr nepovinný.
customCDR1 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR1. Parametr je nepovinný.
customCDR2 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR2. Parametr je nepovinný.
customCDR3 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR3. Parametr je nepovinný.
customCDR4 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR4. Parametr je nepovinný.
dialerCid - telefonní číslo - telefonní číslo, které se zobrazí jako volající číslo volané lince. V případě, že dialerCid není zadán, pak se na telefonu objeví číslo 000 Dialer. Pokud si přejete jako číslo volajícího použít hodnotu z customCDR, pak použijte syntax dialerCid=customCDRX, kde X je hodnota od 1 do 4. Parametr je nepovinný.
dialerName - jméno volajícího dialeru - text, který se zobrazí jako volající jméno volané lince. V případě, že dialerName není zadán, pak se na telefonu objeví jméno Dialer, nebo číslo z parametru dialerCid. Parametr je nepovinný.
monitorFilename - název souboru - název souboru se zvukovým záznamem hovoru. Parametr je nepovinný. Pokud si přejete hovor nahrávat, pak musíte mít zapnuté nahrávání hovoru v nastavení linky.
monitorPath - vlastní cesta k umístnění nahrávky - cesta kam se uloží nahrávka. Parametr je nepovinný.
monitorType - název nahrávací aplikace - výběr z dvou Asterisk aplikací mixmonitor nebo monitor. Parametr je nepovinný.
overrideCallerId - telefonní číslo - telefonní číslo, které se zobrazí, jako číslo volajícího cílovému telefonnímu číslu, které vytočí dialer. Parametr je nepovinný, pokud není zadán, použije se číslo volajícího z dané linky.
checkExten - libovolná hodnota - pokud je vyplněna proměnná checkExten, ústředna před vytočením linky zkontroluje, zda je linka dostupná. Kontroluje se, zda je telefon registrován k ústředně a pokud ano, tak zda je linka volná, nebo obsazena. Parametr je nepovinný.
checkIpHost - IP adresa - kontrola, zda je vytáčená linka zaregistrována ze stejné IP adresy jako je adresa v proměnné checkIpHost. Parametr je nepovinný.
checkIpContact - IP adresa - kontrola, zda vytáčená linka obsahuje v kontaktní adrese IP adresu z proměnné checkIpContact. Parametr je nepovinný.
macro - název makra - před vyzvednutím hovoru se spustí zadané makro. Parametr je nepovinný.
srcRingTimeout - čas ve vteřinách - délka zvonění interní linky. Parametr je nepovinný.
dstRingTimeout - čas ve vteřinách - délka zvonění volaného čísla. Parametr je nepovinný.
Vyberte pouze jeden způsob vytočení linky (srcExtenPublicNum,srcExtenInternalNum, srcExtenId, srcSipUsername). Pokud jich vyberete více, ústředna hovor nevytočí a vrátí chybovou hlášku v JSON formátě.
{"success":"false","errno":"200","reason":"Use only one of next variables: srcExtenPublicNum, srcExtenInternalNum, srcExtenId, srcSipUsername"}
Příklady vytočení hovoru
Vytočení čísla se zadáním veřejného čísla linky - proměnná srcExtenPublicNum:
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=originate&srcExtenPublicNum=299299000&dstNum=800123456
Vytočení čísla se zadáním interního čísla linky - proměnná srcExtenInternalNum.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=originate&srcExtenInternalNum=100&dstNum=800123456
Vytočení čísla se zadáním ID linky - proměnná srcExtenId.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=originate&srcExtenId=5&dstNum=800123456
Vytočení čísla se zadáním SIP uživatelského jména - proměnná srcSipUsername.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=originate&srcSipUsername=sip100&dstNum=800123456
Vytočení čísla - akce dial
Oproti způsobu originate nedochází při akci dial spojení cílového telefonního čísla s vybranou linkou, ale v nasměrovaní takého hovoru do předem definovaného kontextu dialplánu Asterisku, kde se může hovor dále zpracovat.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - dial - ústředně bude předán pokyn na vytvoření nového hovoru.
dstNum - cílové telefonní číslo - číslo, na které bude hovor spojen.
outrouteName - název odchozího směrování - název odchozího směrování, přes které bude hovor spojen.
outrouteId - ID odchozího směrování - ID záznamu odchozího směrování, přes které bude hovor spojen. ID se zjistí přímo v databázi v tabulce outroute. Je nutno vybrat pouze jednu metodu outrouteName nebo outrouteId.
context - kontext v dialplánu Asterisku - kontext, do kterého se hovor nasměruje po jeho vyzvednutí. Zadaný kontext musí existovat i v Asterisku. V opačném případě nedojde k vytočení čísla.
hangupContext - kontext v dialplánu Asterisku - kontext, do kterého se hovor nasměruje v případě nevyzvednutí, nespojení hovoru, chyby. Parametr je nepovinný.
customCDR1 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR1. Parametr je nepovinný.
customCDR2 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR2. Parametr je nepovinný.
customCDR3 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR3. Parametr je nepovinný.
customCDR4 - číselná nebo textová hodnota - tato hodnota bude uložena do CDR do sloupce CustomCDR4. Parametr je nepovinný.
dialerCid - telefonní číslo - telefonní číslo, které se zobrazí jako volající číslo volané lince. V případě, že dialerCid není zadán, pak se na telefonu objeví číslo 000 Dialer. Pokud si přejete jako číslo volajícího použít hodnotu z customCDR, pak použijte syntax dialerCid=customCDRX, kde X je hodnota od 1 do 4. Parametr je nepovinný.
monitorFilename - název souboru - název souboru se zvukovým záznamem hovoru. Parametr je nepovinný. Pokud si přejete hovor nahrávat, pak musíte mít zapnuté nahrávání hovoru v nastavení linky.
monitorPath - vlastní cesta k umístnění nahrávky - cesta kam se uloží nahrávka. Parametr je nepovinný.
monitorType - název nahrávací aplikace - výběr z dvou Asterisk aplikací mixmonitor nebo monitor. Parametr je nepovinný.
overrideCallerId - telefonní číslo - telefonní číslo, které se zobrazí, jako číslo volajícího cílovému telefonnímu číslu, které vytočí dialer. Parametr je nepovinný, pokud není zadán, použije se číslo volajícího z dané linky.
macro - název makra - před vyzvednutím hovoru se spustí zadané makro. Parametr je nepovinný.
dstRingTimeout - čas ve vteřinách - délka zvonění volaného čísla. Parametr je nepovinný.
Příklad vytočení hovoru
Vytočení čísla se zadáním veřejného čísla linky - proměnná srcExtenPublicNum:
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=dial&dialerCid=299299000&dstNum=800123456&outrouteName=odchozi&context=pospojeni&hangupContext=nevyzvednuto
Ukončení hovoru
Ukončit lze libovolný probíhající hovor vedený v ústředně. Seznam probíhajících hovorů a jména jejich kanálů lze zjistit pomocí další API metody listcalls.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - hangupcall - ústředně bude předán pokyn na ukončení probíhajícího hovoru.
channelName - kanál - jméno kanálu, na kterém probíha hovor.
Příklad ukončení hovoru
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=hangupcall&channelName=SIP\5555-0000b704
Seznam probíhajících hovorů
Seznam probíhajících hovorů a jména jejich kanálů lze zjistit pomocí další API metody listcalls.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - listcalls - ústředně bude předán pokyn na vrácení seznamu probíhajících hovorů. Seznam je v JSON formátě.
Příklad výpisu probíhajících hovorů
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=listcalls
Vrácené hodnoty v JSON formátě
{"success":"true","total":"4","results":[{"channelName":"SIP/555-0000b70f","context":"incomingRouteApp-1","src":"123456789","dst":"555","duration":"529","status":"Up","accountCode":"SIP_12","sourceType":"extension","idChannel":"12"},{"channelName":"SIP/550-0000b710","context":"incomingRouteApp-1","src":"987654321","dst":"550","duration":"305","status":"Up","accountCode":"SIP_35","sourceType":"extension","idChannel":"35"},{"channelName":"SIP/upc-0000b714","context":"incomingRouteApp-1","src":"123456789","dst":"111222555","duration":"529","status":"Up","accountCode":"SIPTR_1","sourceType":"trunk","idChannel":"1"},{"channelName":"SIP/upc-0000b715","context":"incomingRouteApp-1","src":"987654321","dst":"111222550","duration":"305","status":"Up","accountCode":"SIPTR_1","sourceType":"trunk","idChannel":"1"}]}
Příposlech hovoru
Inicializovat příposlech probíhajícího hovoru je možné různými způsoby. Liší se jen v informaci, na kterou telefonní linku má ústředna zavolat předtím, než spustí příposlech zvolené linky nebo hovorového kanálu. Příposlech hovoru funguje tak, že ústředna nejprve zavolá na zvolenou linku a po vyzvednutí hovoru spustí okamžitě příposlech.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - spying - ústředně bude předán pokyn na spuštění příposlechu.
srcExtenPublicNum - veřejné číslo linky - veřejné číslo linky, na kterou ústředna zavolá před spuštěním příposlechu.
srcExtenInternalNum - interní číslo linky - interní číslo linky, na kterou ústředna zavolá před spuštěním příposlechu.
srcExtenId - ID linky - ID linky, na kterou ústředna zavolá před spuštěním příposlechu. ID lze zjistit z databáze z tabulky extensions. Tento způsob je určen především pro vývojáře informačních systémů s přístupem do databáze ústředny.
srcSipUsername - SIP uživatelské jméno - SIP uživatelské jméno linky, na kterou ústředna zavolá před spuštěním příposlechu.
srcDialplanName - název číslovacího plánu - pokud používáte v ústředně více interních linek se stejným číslem, tak je nutné upřesnit jméno číslovacího plánu, ze kterého se má vybrat interní linka. Jinak je parametr nepovinný.
dstExtenPublicNum - veřejné číslo linky - veřejné číslo linky, na které bude prováděn příposlech.
dstExtenInternalNum - interní číslo linky - interní číslo linky, na které bude prováděn příposlech.
dstExtenId - ID linky - ID linky, na které bude prováděn příposlech. ID lze zjistit z databáze z tabulky extensions. Tento způsob je určen především pro vývojáře informačních systémů s přístupem do databáze ústředny.
dstSipUsername - SIP uživatelské jméno - SIP uživatelské jméno linky, na které bude prováděn příposlech.
dstDialplanName - název číslovacího plánu - pokud používáte v ústředně více interních linek se stejným číslem, tak je nutné upřesnit jméno číslovacího plánu, ze kterého se má vybrat interní linka. Jinak je parametr nepovinný.
dstChannelName - kanál - název kanálu, na kterém probíha hovor, na kterým se bude provádět příposlech.
spyCid - telefonní číslo - telefonní číslo, které se zobrazí jako volající číslo volané lince. V případě, že spyCid není zadán, pak se na telefonu objeví číslo 000 Spy. Parametr je nepovinný.
spyName - jméno volajícího - text, který se zobrazí jako volající jméno volané lince. V případě, že spyName není zadán, pak se na telefonu objeví jméno Spy, nebo číslo z parametru spyCid. Parametr je nepovinný.
Vyberte pouze jeden způsob vytočení linky (srcExtenPublicNum,srcExtenInternalNum, srcExtenId, srcSipUsername). Pokud jich vyberete více, ústředna hovor nevytočí a vrátí chybovou hlášku v JSON formátě.
{"success":"false","errno":"300","reason":"Use only one of next variables: srcExtenPublicNum, srcExtenInternalNum, srcExtenId, srcSipUsername"}
Vyberte pouze jeden způsob příposlechu (dstExtenPublicNum,dstExtenInternalNum, dstExtenId, dstSipUsername, dstChannelName). Pokud jich vyberete více, ústředna hovor nevytočí a vrátí chybovou hlášku v JSON formátě.
{"success":"false","errno":"301","reason":"Use only one of next variables: dstExtenPublicNum, dstExtenInternalNum, dstExtenId, dstSipUsername, dstChannelName"}
Příklady příposlechu hovoru
Příposlech hovoru se zadáním veřejných čísel linek - proměnné srcExtenPublicNum a dstExtenPublicNum:
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=spying&srcExtenPublicNum=299299000&dstExtenPublicNum=299299555
Příposlech hovoru se zadáním interního čísla linky a veřejného čísla odposlouchávané linky - proměnné srcExtenInternalNum a dstExtenPublicNum.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=spying&srcExtenInternalNum=100&dstExtenPublicNum=299299555
Příposlech hovoru se zadáním ID linky a SIP uživatelského jména odposlouchávané linky - proměnné srcExtenId a dstSipUsername.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=spying&srcExtenId=5&dstSipUsernamem=sip102
Příposlech hovoru se zadáním veřejného čísla linky a názvu kanálu probíhajícího hovoru - proměnné srcSipUsername a dstChannelName.
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=spying&srcSipUsername=sip100&dstChannelName=SIP/102-00000001
Stav registrací SIP kanálů
Seznam zaregistrovaných SIP kanálů lze zjistit pomocí další API metody sipstatus.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - sipstatus - ústředně bude předán pokyn na vrácení seznamu stavu registrací SIP kanálů. Seznam je v JSON formátě.
Příklad výpisu probíhajících hovorů
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=sipstatus
Vrácené hodnoty v JSON formátě
{"total":19,"results":[
{"id":12,"type":"extension_line","user":"100a","host":"(Unspecified)","port":"0","status":"UNKNOWN","useragent":"","regcontact":"","registry":null,"extension_line_id":"1"},
{"id":22,"type":"extension_line","user":"101a","host":"(Unspecified)","port":"0","status":"UNKNOWN","useragent":"Linphone\/3.6.1 (eXosip2\/4.1.0)","regcontact":"sip:101a@XXX.XXX.XXX.XXX:5096;line=c5979f655562d46","registry":null,"extension_line_id":"2"},
{"id":42,"type":"extension_line","user":"102a","host":"XXX.XXX.XXX.XXX","port":"5060","status":"OK (35 ms)","useragent":"snom870\/8.7.3.25.9","regcontact":"sip:102a@XXX.XXX.XXX.XXX:5060","registry":null,"extension_line_id":"4"},
{"id":132,"type":"extension_line","user":"200","host":"(Unspecified)","port":"0","status":"UNKNOWN","useragent":"","regcontact":"","registry":null,"extension_line_id":"13"},
{"id":142,"type":"extension_line","user":"201","host":"(Unspecified)","port":"0","status":"UNKNOWN","useragent":"","regcontact":"","registry":null,"extension_line_id":"14"},
{"id":162,"type":"extension_line","user":"201b","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"16"},
{"id":152,"type":"extension_line","user":"202","host":"(Unspecified)","port":"0","status":"UNKNOWN","useragent":"","regcontact":"","registry":null,"extension_line_id":"15"},
{"id":121,"type":"sip","user":"siptrunk4","host":"XXX.XXX.XXX.XXX","port":"5060","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"sip_id":"12"},
{"id":141,"type":"sip","user":"siptrunk5","host":"XXX.XXX.XXX.XXX","port":"5060","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"sip_id":"14"},
{"id":122,"type":"extension_line","user":"102b","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"12"},
{"id":52,"type":"extension_line","user":"tel100","host":"XXX.XXX.XXX.XXX","port":"5060","status":"Unmonitored","useragent":"SFLphone\/1.4.1","regcontact":"sip:tel100@XXX.XXX.XXX.XXX:5060","registry":null,"extension_line_id":"5"},
{"id":62,"type":"extension_line","user":"tel101","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"6"},
{"id":72,"type":"extension_line","user":"tel102","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"7"},
{"id":82,"type":"extension_line","user":"tel103","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"8"},
{"id":92,"type":"extension_line","user":"tel104","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"9"},
{"id":102,"type":"extension_line","user":"tel105","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"extension_line_id":"10"},
{"id":111,"type":"sip","user":"siptrunk1","host":"XXX.XXX.XXX.XXX","port":"5060","status":"OK (98 ms)","useragent":"","regcontact":"","registry":null,"sip_id":"11"},
{"id":11,"type":"sip","user":"siptrunk2","host":"(Unspecified)","port":"0","status":"Unmonitored","useragent":"","regcontact":"","registry":null,"sip_id":"1"},
{"id":131,"type":"sip","user":"siptrunk3","host":"XXX.XXX.XXX.XXX","port":"5060","status":"OK (141 ms)","useragent":"","regcontact":"","registry":null,"sip_id":"13"}
],"success":true,"_debug":false}
Přihlášení agenta do callcentra
Přihlášení agenta do callcentra pomocí metody agentlogin.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentlogin - ústředně bude předán pokyn na přihlášení agenta do callcentra.
srcExtenPublicNum - veřejné číslo linky - veřejné číslo linky, z které se agent přihlásí do callcentra.
srcExtenInternalNum - interní číslo linky - interní číslo linky, z které se agent přihlásí do callcentra.
srcExtenId - ID linky - ID linky, z které se agent přihlásí do callcentra. ID lze zjistit z databáze z tabulky extensions. Tento způsob je určen především pro vývojáře informačních systémů s přístupem do databáze ústředny.
srcSipUsername - SIP uživatelské jméno - SIP uživatelské jméno linky, z které se agent přihlásí do callcentra.
dialplanName - název číslovacího plánu - pokud používáte v ústředně více interních linek se stejným číslem, tak je nutné upřesnit jméno číslovacího plánu, ze kterého se má vybrat interní linka. Jinak je parametr nepovinný.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
Příklad přihlášení agenta do callcentra
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentlogin&srcExtenInternalNum=100&agentNumber=1000&agentPin=1234
Vrácené hodnoty v JSON formátě
{"success":"true"}
Odhlášení agenta z callcentra
Odhlášení agenta z callcentra pomocí metody agentlogout.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentlogout - ústředně bude předán pokyn na odhlášení agenta z callcentra.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
Příklad odhlášení agenta z callcentra
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentlogout&agentNumber=1000&agentPin=1234
Vrácené hodnoty v JSON formátě
{"success":"true"}
Zapnutí pauzy agenta
Zapnutí pauzy agenta v callcentre pomocí metody agentpause.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentpause - ústředně bude předán pokyn na zapauzování agenta v callcentre.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
Příklad pauzy agenta
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentpause&agentNumber=1000&agentPin=1234
Vrácené hodnoty v JSON formátě
{"success":"true"}
Vypnutí pauzy agenta
Vypnutí pauzy agenta v callcentre pomocí metody agentunpause.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentunpause - ústředně bude předán pokyn k vypnutí pauzy agenta v callcentre.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
Příklad vypnutí pauzy agenta
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentunpause&agentNumber=1000&agentPin=1234
Vrácené hodnoty v JSON formátě
{"success":"true"}
Přidání agenta do fronty callcentra
Přidání agenta do fronty callcentra pomocí metody agentadd.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentadd - ústředně bude předán pokyn k přidání agenta do zvolené fronty callcentra.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
queueName - název fronty - název fronty, do které bude agent přiřazen.
penalty - priorita - priorita agenta ve frontě.
Příklad přidání agenta do fronty callcentra
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentadd&agentNumber=1000&agentPin=1234&queueName=FrontaIT&penalty=1
Vrácené hodnoty v JSON formátě
{"success":"true"}
Odebrání agenta z fronty callcentra
Odebrání agenta z fronty callcentra pomocí metody agentremove.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentremove - ústředně bude předán pokyn k odebrání agenta ze zvolené fronty callcentra.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
queueName - název fronty - název fronty, ze které bude agent odebrán.
Příklad odebrání agenta z fronty callcentra
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentremove&agentNumber=1000&agentPin=1234&queueName=FrontaIT
Vrácené hodnoty v JSON formátě
{"success":"true"}
Stav agenta
Zjistí stav agenta callcentra pomocí metody agentstatus.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - agentstatus - předá ústředně pokyn k vypsání stavu agenta ve formátu JSON.
agentNumber - číslo agenta - číslo agenta callcentra. Číslo se definuje ve vlastnostech agenta.
agentPin - PIN kód agenta - ochranný PIN kód agenta.
Příklad výpisu stav agenta
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=agentstatus&agentNumber=1000&agentPin=1234
Vrácené hodnoty v JSON formátě
{"success":"true":"reason":"Agent 1000 is logged in. Line is free"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is In use"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is busy"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is unavailable"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is ringing"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is On hold"}
{"success":"true":"reason":"Agent 1000 is logged in. Line is not free"}
{"success":"true":"reason":"Agent 1000 is logged out."}
Stav fronty callcentra
Zjistí stav fronty callcentra pomocí metody queuestatus.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - queuestatus - předá ústředně pokyn k vypsání stavu fronty callcentra ve formátu JSON.
queueName - název fronty - název fronty, u které se zjistí její stav.
Příklad výpisu stav fronty callcentra
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=queuestatus&queueName=FrontaIT
Vrácené hodnoty v JSON formátě
{"success":"true","results":[{"queueName":"FrontaIT","max":"0","strategy":"rrordered","calls":"0","holdTime":"2","talkTime":"38","completed":"39","abandoned":"0","serviceLevel":"0","serviceLevelPerf":"76.9","weight":"0","members":{"Agent_01":{"agentName":"Agent_01","channelStatus":"Line is busy","location":"Local\/1000@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1000","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_02":{"agentName":"Agent_02","channelStatus":"Line is busy","location":"Local\/1001@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_10001","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_03":{"agentName":"Agent_03","channelStatus":"Line is busy","location":"Local\/1002@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1002","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_04":{"agentName":"Agent_04","channelStatus":"Line is busy","location":"Local\/1003@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1003","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_05":{"agentName":"Agent_05","channelStatus":"Line is busy","location":"Local\/1004@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1004","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_06":{"agentName":"Agent_06","channelStatus":"Line is busy","location":"Local\/1005@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1005","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_07":{"agentName":"Agent_07","channelStatus":"Line is busy","location":"Local\/1006@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1007","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_08":{"agentName":"Agent_08","channelStatus":"Line is busy","location":"Local\/1007@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1007","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_09":{"agentName":"Agent_09","channelStatus":"Line is busy","location":"Local\/1008@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1008","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_10":{"agentName":"Agent_10","channelStatus":"Line is busy","location":"Local\/1009@extensions-dialplanid-1","loggedFrom":"SIP\/Linka_1009","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_11":{"agentName":"Agent_11","channelStatus":"Line is busy","location":"Local\/1010@extensions-dialplanid-5","loggedFrom":"SIP\/Linka_1010","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"1","status":"1","paused":"0"},"Agent_12":{"agentName":"Agent_12","channelStatus":"Line is free","location":"Local\/1011@extensions-dialplanid-5","loggedFrom":"SIP\/Linka_1011","membership":"dynamic","penalty":"1","callsTaken":"0","lastCall":"0","isInCall":"0","status":"1","paused":"0"}},"waiters":{"1":{"position":"1","channel":"Local\/999555444@dial_out_1-0002ec1f;1","uniqueid":"1503045639.449950","callerIdNum":"999555444","callerIdName":"999555444","connectedLineNum":null,"connectedLineName":null,"wait":"7"},"2":{"position":"2","channel":"Local\/999555666@dial_out_1-0002ec27;1","uniqueid":"1503045647.449972","callerIdNum":"999555666","callerIdName":"999555666","connectedLineNum":null,"connectedLineName":null,"wait":"6"},"3":{"position":"3","channel":"Local\/999444555@dial_out_1-0002ec04;1","uniqueid":"1503045624.449881","callerIdNum":"999444555","callerIdName":"999444555","connectedLineNum":null,"connectedLineName":null,"wait":"4"}}}]}
Přesunutí nahrávky
Akce moverecord umožňuje přesunutí a případné přejmenování vzniklé nahrávky do jiné složky.
Proměnné a jejich hodnoty:
PROMĚNNÁ - HODNOTA - popis
username - autorizační jméno - API uživatelé se nastavují v nabídce Nastavení -> HTTP API uživatelé.
password - autorizační heslo - přihlašovací heslo.
action - moverecord - předá ústředně pokyn k přesunutí nahrávky.
cdrId - ID CDR záznamu - ID identifikátor CDR záznamu, ze kterého se
filename - název souboru - název nového souboru. Pokud parametr neexistuje, tak se pužije stávající název souboru.
path - adresář - nová složka, do které se soubor přesune. Pokud parametr neexistuje, tak se použije výchozí složka, která je nastavena v konfiguraci ústredny (SPOOLDIR).
Je nutné zadat alespoň jeden parametr filename nebo path.
Příklad přesunu nahrávky
Přesun a přejmenování nahrávky
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav&path=/mnt/nas_server/asterisk/2018
Pouze přesun a zachování původního názvu nahrávky
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&path=/mnt/nas_server/asterisk/2018
Pouze přejmenování nahrávky
http://IP_PBX/api/api.php?username=voipsun&password=secretpwd&action=moverecord&cdrId=10000&filename=new_record.wav
Vrácené hodnoty v JSON formátě
{"success":"true"}
Chybové stavy
Seznam možných chybových hlášení. Chyby se zobrazují v následujícím JSON formátě:
{"success":"false","errno":"100","reason":"Unauthorized user or bad permissions"}
Obecné chybové hlášení
CHYBOVÝ KÓD - CHYBA - popis
100 - Unauthorized user or bad permissions - Neúspěšná autorizace nebo nedostatečné oprávnění uživatele.
110 - Unknown action - Neznámý příkaz v proměnné action.
120 - Missing required parameters - Chybí alespoň jeden povinný parametr.
Chyby při vytočení čísla - akce originate
CHYBOVÝ KÓD - CHYBA - popis
200 - Use only one of next variables: srcExtenPublicNum, srcExtenInternalNum, srcExtenId, srcSipUsername - Konflikt v parametrech. Použijte pouze jeden způsob vytočení linky.
201 - Parameter dialPlanName missing - Ústředna nenalezla linku dle interního čísla z důvodu více linek, které používají stejné interní číslo. Upřesnite číslovací plán, ze kterého se má vytočit linka.
202 - Extension not found - Linka nebyla nalezena.
203 - Dialplan not found - Číslovací plán nebyl nalezen.
210 - SIP host IP address mismatch. Channel SIP/XYZ is registered from IP XXX.YYY.ZZZ.AAA but requested IP address is AAA.ZZZ.YYY.XXX - Kontrola checkIpHost zjistila, že se neshoduje registrační IP adresa s kontrolovanou IP adresou.
211 - SIP host contact IP address mismatch. Contact IP address of the channel SIP/XYZ is XXX.YYY.ZZZ.AAA, but requested IP address is AAA.ZZZ.YYY.XXX - Kontrola checkIpContact zjistila, že se neshoduje kontaktní IP adresa s kontrolovanou IP adresou.
220 - SIP channel is unreacheable - Kontrola checkExten zjistila, že cílová linka není dostupná.
221 - SIP channel status - Channel is down, but reservered - Kontrola checkExten zjitila, že linka je volná, ale reservovaná.
222 - SIP channel status - Channel is off hook - Kontrola checkExten zjitila, že linka je vyvěšena.
223 - SIP channel status - Digits (or equivalent) have been dialed - Kontrola checkExten zjitila, že na lince probíhá vytáčení.
224 - SIP channel status - Line is ringing - Kontrola checkExten zjitila, že linka vyzvání.
225 - SIP channel status - Remote end is ringing - Kontrola checkExten zjitila, že vzdálená strana vyzvání.
226 - SIP channel status - Line is up - Kontrola checkExten zjitila, že na lince probíhá hovor.
227 - SIP channel status - Line is busy - Kontrola checkExten zjitila, že linka je obsazena.
228 - SIP channel stauts - Channel is down and available - Kontrola checkExten zjitila, že linka je volná a dostupná.
Chyby při vytočení čísla - akce dial
CHYBOVÝ KÓD - CHYBA - popis
250 - Outroute not found! - Nenašlo se odchozí výstupní směrování. Zkontrolujte jeho název nebo jeho ID záznamu.
Chyby při příposlechu
CHYBOVÝ KÓD - CHYBA - popis
300 - Use only one of next variables: srcExtenPublicNum, srcExtenInternalNum, srcExtenId, srcSipUsername - Konflikt v parametrech. Použijte pouze jeden způsob vytočení linky.
301 - Use only one of next variables: dstExtenPublicNum, dstExtenInternalNum, dstExtenId, dstSipUsername, dstChannelName - Konflikt v parametrech. Použijte pouze jeden způsob výberu odposlouchávané linky nebo hovorového kanálu.
302 - Source parameter srcDialplanName missing - Ústředna nenalezla linku dle interního čísla z důvodu více linek, které používají stejné interní číslo. Upřesnite číslovací plán, ze kterého se má vytočit linka.
303 - Source extension not found - Linka nebyla nalezena.
304 - Source dialplan not found - Číslovací plán nebyl nalezen.
310 - Destination parameter dstDialplanName missing - Ústředna nenalezla linku dle interního čísla z důvodu více linek, které používají stejné interní číslo. Upřesnite číslovací plán, ze kterého se vybrat odposlouchaná linka.
311 - Destination extension not found - Odposlouchaná linka nebyla nalezena.
312 - Destination dialplan not found - Číslovací plán nebyl nalezen.
Chyby při zavěšení hovoru
CHYBOVÝ KÓD - CHYBA - popis
400 - Parameter channelName is empty - Parametr channelName je prázdný. Vyplňte název kanálu probíhajícího hovoru, který chcete zavěsit.
Chyby při přihlášení agenta
CHYBOVÝ KÓD - CHYBA - popis
500 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
501 - Use only one of next variables: srcExtenPublicNum, srcExtenInternalNum, srcExtenId, srcSipUsername. - Konflikt v parametrech. Použijte pouze jeden způsob při výběru linky, ze které bude agent přihlášen.
502 - Parameter dialPlanName missing - Ústředna nenalezla linku dle interního čísla z důvodu více linek, které používají stejné interní číslo. Upřesnite číslovací plán, ze kterého se má vybrat linka agenta.
503 - Extension not found - Linka nebyla nalezena.
504 - Dialplan not found - Číslovací plán nebyl nalezen.
Chyby při odhlášení agenta
CHYBOVÝ KÓD - CHYBA - popis
550 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
Chyby při pauzování agenta
CHYBOVÝ KÓD - CHYBA - popis
580 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
Chyby při zrušení pauzy agenta
CHYBOVÝ KÓD - CHYBA - popis
590 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
Chyby při přidání agenta do fronty callcentra
CHYBOVÝ KÓD - CHYBA - popis
600 - Queue FrontaABC not found! - Zadaná fronta nebyla nalezena. Zkontrolujte zda máte správný název fronty.
601 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
Chyby při odebrání agenta z fronty callcentra
CHYBOVÝ KÓD - CHYBA - popis
610 - Queue FrontaABC not found! - Zadaná fronta nebyla nalezena. Zkontrolujte zda máte správný název fronty.
611 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
Chyby při zjištění stavu agenta
CHYBOVÝ KÓD - CHYBA - popis
620 - Agent not found, or bad authorization credentials! - Agent nenalezen, nebo špatný PIN kód.
630 - SIP channel is unreacheable - Kontrola zjistila, že linka agenta není dosažitelná.
631 - Line is unavailable' - Kontrola zjistila, že linka agenta není dostupná.
632 - Line is In use - Kontrola zjistila, že linka agenta je obsazena.
633 - Line is ringing - Kontrola zjistila, že linka agenta vyzvání.
634 - Line in On hold - Kontrola zjistila, že na lince agenta je zaparkováný hovor.
635 - Line is not free - Kontrola zjistila, že linka agenta není volná.
636 - Line is busy - Kontrola zjistila, že linka agenta je obsazena.
Chyby při přesuně nahrávek
CHYBOVÝ KÓD - CHYBA - popis
800 - CDR record not found! - CDR záznam nebyl nalezen. Pravděpodobně je chybná hodnota cdrId, která odkazuje na neexistující CDR záznam.
801 - CDR not contain any information about audio record! - V CDR záznamu není informace o nahrávce hovoru. Pravděpodobně se jedná o hovor bez záznamu.
810 - Destination folder does not exist and mkdir command failed. Please check parent folder permissions!' - Cílová složka neexistuje a systém ho nemůže vytvořit z důvodu nedostatečného oprávnění.
811 - Source file (FILENAME) not exist or insufficient permissions to read them! - Není možné přečíst původní nahrávku, protože neexistuje, nebo k ní nemá systém oprávnění pro čtení.
812 - Cannot move file to (NEW FILENAME). Check destination folder permissions! - Není možné přesunout nahrávku z důvodu nedostatečného oprávnění.
Zpátky