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 stávající složka, ve které je umístněn původní soubor.

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