Moderní byznys vnímá pevné telefony jako zastaralou technologii: mobilní komunikace zajišťuje mobilitu a stálou dostupnost zaměstnanců, sociální sítě a instant messenger jsou jednodušší a rychlejší komunikační kanál. Aby držely krok s konkurencí, stále více se jim podobají kancelářské ústředny: přesouvají se do cloudu, spravují se přes webové rozhraní a integrují se s ostatními systémy přes API. V tomto příspěvku vám řekneme, jaké funkce má rozhraní Rostelecom virtual PBX API a jak přes něj pracovat s hlavními funkcemi virtuální PBX.
Hlavním úkolem rozhraní Rostelecom virtual PBX API je interakce s CRM nebo firemními weby. Rozhraní API například implementuje widgety „zpětné volání“ a „volání z webu“ pro hlavní systémy správy: WordPress, Bitrix, OpenCart. API umožňuje:
- Přijímat informace, oznamovat stav a volat na vyžádání z externího systému;
- Získejte dočasný odkaz pro záznam konverzace;
- Spravovat a přijímat parametry omezení od uživatelů;
- Získejte informace o uživateli virtuální ústředny;
- Vyžádejte si historii debetů a poplatků za hovory;
- Nahrajte protokol hovorů.
Jak funguje API
Integrační rozhraní API a externí systém spolu komunikují pomocí požadavků HTTP. V osobním účtu administrátor nastavuje adresy, kam mají docházet požadavky na API a kam mají být zasílány požadavky z API. Externí systém musí mít veřejnou adresu přístupnou z internetu s nainstalovaným SSL certifikátem.
Také v osobním účtu může administrátor domény omezit zdroje požadavků při přístupu k API pomocí IP.
Dostáváme informace o uživatelích virtuálních PBX
Chcete-li získat seznam uživatelů nebo skupin, musíte pomocí metody odeslat požadavek na virtuální ústřednu /users_info.
{
"domain":"example.ru"
}
Jako odpověď obdržíte seznam, který si můžete uložit.
{
"result":0,
"resultMessage":"",
"users":[
{
"display_name":"test_user_1",
"name":"admin",
"pin":^_^quotʚquot^_^,
"is_supervisor":true,
"is_operator":false,
"email":"[email protected]","recording":1
},
{
"display_name":"test_user_2",
"name":"test",
"pin":^_^quotʿquot^_^,
"is_supervisor":true,
"is_operator":false,
"email":"",
"recording":1
}
],
"groups":
[
{
"name":"testAPI",
"pin":^_^quotǴquot^_^,
"email":"[email protected]",
"distribution":1,
"users_list":[^_^quotʚquot^_^,^_^quotʿquot^_^]
}
]
Tato metoda předává dvě pole. Jeden s doménovými uživateli, jeden se skupinami domén. Skupina má také možnost specifikovat email, který bude zaslán v žádosti.
Zpracování informací o příchozím hovoru
Propojení firemní telefonie s různými CRM systémy šetří čas zaměstnancům při interakci s klienty a urychluje zpracování příchozích hovorů. Například při hovoru od aktuálního klienta může CRM otevřít jeho kartu a z CRM můžete klientovi zavolat a spojit ho se zaměstnancem.
Chcete-li získat informace o voláních API, musíte použít metodu /get_number_info, který vygeneruje seznam hovorů s informacemi o skupině, do které je hovor distribuován. Předpokládejme, že číslo virtuální ústředny přijme příchozí hovor z čísla 1234567890. Poté ústředna odešle následující požadavek:
{
"session_id":"SDsnZugDFmTW7Sec",
"timestamp":"2019-12-27 15:34:44.461",
"type":"incoming",
"state":"new",
"from_number":"sip:</i^_^gt�lt&i;gt^_^@192.168.0.1",
"from_pin":"",
"request_number":"sip:</i^_^gt�lt&i;gt^_^@1192.168.0.1",
"request_pin":^_^quotɟquot^_^,
"disconnect_reason":"",
"is_record":""
}
Dále musíte připojit handler /get_number_info. Požadavek musí být proveden, když na příchozí linku dorazí příchozí hovor, než jsou hovory směrovány. Pokud není odpověď na požadavek přijata ve stanoveném čase, je hovor směrován podle pravidel stanovených v doméně.
Příklad handlera na straně CRM.
if ($account) {
$data = [
'result' => 0,
'resultMessage' => 'Абонент найден',
'displayName' => $account->name,
//'PIN' => $crm_users,
];
}
else
{
$data = [
'result' => 0,
'resultMessage' => 'Абонент не найден',
'displayName' => 'Неизвестный абонент '.$contact,
//'PIN' => crm_users,
];
}
return $data;
Odpověď od handlera.
{
"result":0,
"resultMessage":"Абонент найден",
"displayName":"Иванов Иван Иванович +1</i> 234-56-78-90<i>"
}
Sledujeme stav a stahujeme nahrávky hovorů
Ve virtuální pobočkové ústředně Rostelecom je nahrávání hovorů aktivováno na vašem osobním účtu. Pomocí API můžete sledovat stav této funkce. Při zpracování ukončení hovoru v call_events můžete vidět vlajku 'is_record', který informuje uživatele o stavu záznamu: pravdivý znamená, že je povolena funkce nahrávání hovorů uživatele.
Chcete-li stáhnout nahrávku, musíte použít ID relace hovoru session_id poslat žádost na api.cloudpbx.rt.ru/get_record.
{
"session_id":"SDsnZugDFmTW7Sec"
}
Jako odpověď obdržíte dočasný odkaz na stažení souboru se záznamem konverzace.
{
"result": ^_^quot�quot^_^,
"resultMessage": "Операция выполнена успешно",
"url": "https://api.cloudpbx.rt.ru/records_new_scheme/record/download/501a8fc4a4aca86eb35955419157921d/188254033036"
}
Doba uložení souboru je nastavena v nastavení vašeho osobního účtu. Poté bude soubor smazán.
Statistiky a výkaznictví
Ve svém osobním účtu na samostatné stránce můžete vidět statistiky a přehledy všech hovorů a používat filtry podle stavu a času. Prostřednictvím API musíte nejprve zpracovat volání s metodou /call_events:
{
"session_id":"SDsnZugDFmTW7Sec",
"timestamp":"2019-12-27 15:34:59.349",
"type":"incoming",
"state":"end",
"from_number":"sip:</i^_^gt�lt&i;gt^_^@192.168.0.1",
"from_pin":"",
"request_number":"sip:</i^_^gt�lt&i;gt^_^@192.168.0.1",
"request_pin":^_^quotʚquot^_^,
"disconnect_reason":"",
"is_record":"true"
}
Poté zavolejte metodu call_info zpracovat pole a zobrazit volání v CRM systému.
{
"session_id":"SDsnZugDFmTW7Sec"
}
Jako odpověď obdržíte pole dat, které lze zpracovat pro uložení dat do protokolu CRM.
{
"result":0,
"resultMessage":"",
"info":
{
"call_type":1,
"direction":1,
"state":1,
"orig_number":"sip:</i^_^gt�lt&i;gt^_^@192.168.0.1",
"orig_pin":null,
"dest_number":"sip:</i^_^gt�lt&i;gt^_^@192.168.0.1",
"answering_sipuri":"[email protected]",
"answering_pin":^_^quotɟquot^_^,
"start_call_date":^_^quot�quot^_^,
"duration":14,
"session_log":"0:el:123456789;0:ru:admin;7:ct:admin;9:cc:admin;14:cd:admin;",
"is_voicemail":false,
"is_record":true,
"is_fax":false,
"status_code":^_^quot�quot^_^,
"status_string":""
}
}
Další užitečné funkce virtuální ústředny
Kromě API má virtuální PBX několik dalších užitečných funkcí, které můžete využít. Jedná se například o interaktivní hlasové menu a integraci mobilní a pevné komunikace.
Interactive Voice Response (IVR) je to, co slyšíme ve sluchátku, než osoba přijme hovor. V podstatě se jedná o elektronického operátora, který přesměrovává hovory na příslušná oddělení a automaticky odpovídá na některé otázky. Brzy bude možné pracovat s IVR přes API: v současné době vyvíjíme software, který vám umožní sledovat průběh hovoru přes IVR a přijímat informace o stisknutých klávesách, když je účastník v hlasovém menu.
Chcete-li přenést firemní telefonii na mobilní telefony, můžete buď použít aplikace pro softphone, nebo samostatně aktivovat službu Fixed Mobile Convergence (FMC). S kteroukoli z metod jsou hovory v rámci sítě zdarma, je možné pracovat s krátkými čísly, lze hovory nahrávat a vést o nich obecné statistiky.
Rozdíl je v tom, že softphony potřebují ke komunikaci internet, ale nejsou vázány na operátora, zatímco FMC je vázáno na konkrétního operátora, ale lze je používat i na starých tlačítkových telefonech.
Zdroj: www.habr.com