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

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

logo

Praha // Plzeňská 207
SLEDUJTE NOVINKY!
SPOJTE SE S NÁMI.

Plzeňská 207
150 00 Praha 5
Česká Republika

IČ: 015 95 512
DIČ: CZ01595512

e-mail: Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení musíte mít povolen Javascript.
tel: 211 221 270

© 2021 VoIPSUN s.r.o.
www.telefonni-ustredna.cz