Rostelecom virtualna PBX: što i kako se može učiniti putem API-ja

Rostelecom virtualna PBX: što i kako se može učiniti putem API-ja

Suvremeno poslovanje fiksne telefone doživljava kao zastarjelu tehnologiju: mobilne komunikacije osiguravaju mobilnost i stalnu dostupnost zaposlenika, društvene mreže i instant messengeri lakši su i brži komunikacijski kanal. Kako bi držali korak sa svojim konkurentima, uredski PBX-ovi im postaju sve sličniji: prelaze u oblak, njima se upravlja putem web sučelja i integriraju se s drugim sustavima putem API-ja. U ovom postu ćemo vam reći koje funkcije ima Rostelecom virtual PBX API i kako raditi s glavnim funkcijama virtualne PBX preko njega.

Glavni zadatak Rostelecom virtual PBX API-ja je interakcija s CRM-om ili web stranicama tvrtke. Na primjer, API implementira "povratni poziv" i "poziv sa stranice" widgete za glavne sustave upravljanja: WordPress, Bitrix, OpenCart. API omogućuje:

  • Primanje informacija, obavještavanje o statusu i upućivanje poziva na zahtjev vanjskog sustava;
  • Nabavite privremenu vezu za snimanje razgovora;
  • Upravljanje i primanje parametara ograničenja od korisnika;
  • Dobiti podatke o korisniku virtualne PBX;
  • Zatražite povijest zaduženja i naknada za pozive;
  • Prenesi zapisnik poziva.

Kako API radi

Integracijski API i vanjski sustav međusobno komuniciraju pomoću HTTP zahtjeva. U osobnom računu administrator postavlja adrese na koje trebaju stizati zahtjevi prema API-ju i na koje se šalju zahtjevi iz API-ja. Vanjski sustav mora imati javnu adresu dostupnu s interneta s instaliranim SSL certifikatom.

Rostelecom virtualna PBX: što i kako se može učiniti putem API-ja

Također u osobnom računu administrator domene može ograničiti izvore zahtjeva prilikom pristupa API-ju putem IP-a. 

Primamo podatke o korisnicima virtualne centrale 

Da biste dobili popis korisnika ili grupa, morate poslati zahtjev virtualnoj telefonskoj centrali korištenjem metode /info_korisnika.

{
        "domain":"example.ru"
}

Kao odgovor ćete dobiti popis koji možete spremiti.

{
"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^_^]
                            }
              ]

Ova metoda prosljeđuje dva niza. Jedan s korisnicima domene, jedan s grupama domena. Grupa također ima mogućnost odrediti e-mail koji će biti poslan u zahtjevu.

Obrada informacija o dolaznom pozivu

Povezivanje korporativne telefonije s različitim CRM sustavima štedi vrijeme zaposlenicima koji komuniciraju s klijentima i ubrzava obradu dolaznih poziva. Na primjer, na poziv trenutnog klijenta, CRM može otvoriti njegovu karticu, a iz CRM-a možete poslati poziv klijentu i spojiti ga sa zaposlenikom.

Da biste dobili informacije o API pozivima, morate koristiti metodu /dobi_broj_info, koji generira popis poziva s informacijama o grupi na koju se poziv distribuira. Pretpostavimo da virtualni PBX broj primi dolazni poziv s broja 1234567890. Tada će PBX poslati sljedeći zahtjev:

{
        "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":""
}

Zatim morate spojiti rukovatelj /dobi_broj_info. Zahtjev se mora izvršiti kada dolazni poziv stigne na dolaznu liniju prije nego što se pozivi usmjere. Ako se odgovor na zahtjev ne primi unutar navedenog vremena, tada se poziv preusmjerava prema pravilima utvrđenim u domeni.

Primjer rukovatelja na strani CRM-a.

if ($account) {
        	$data = [
            	'result' => 0,
            	'resultMessage' => 'Абонент найден',
            	'displayName' => $account->name,
            	//'PIN' => $crm_users,
        	];
    	} 
        else 
                {
        	$data = [
            	'result' => 0,
            	'resultMessage' => 'Абонент не найден',
            	'displayName' => 'Неизвестный абонент '.$contact,
            	//'PIN' => crm_users,
        	];
    	}
    	return $data;

Odgovor voditelja.

{
        "result":0,
        "resultMessage":"Абонент найден",
        "displayName":"Иванов Иван Иванович +1</i> 234-56-78-90<i>"
}

Pratimo status i preuzimamo snimke poziva

U virtualnoj telefonskoj centrali Rostelecoma, snimanje poziva aktivirano je na vašem osobnom računu. Pomoću API-ja možete pratiti status ove funkcije. Prilikom obrade završetka poziva u poziv_događaji možete vidjeti zastavu 'is_record', koji obavještava korisnika o statusu unosa: istinski znači da je korisnikova funkcija snimanja poziva omogućena.

Za preuzimanje snimke morate upotrijebiti ID sesije poziva session_id poslati zahtjev na api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Kao odgovor dobit ćete privremenu poveznicu za preuzimanje datoteke sa snimkom razgovora.

{
        "result": ^_^quot�quot^_^,
        "resultMessage": "Операция выполнена успешно",
    	"url": "https://api.cloudpbx.rt.ru/records_new_scheme/record/download/501a8fc4a4aca86eb35955419157921d/188254033036"
}

Vrijeme pohrane datoteke postavljeno je u postavkama vašeg osobnog računa. Nakon toga datoteka će biti izbrisana.

Statistika i izvješćivanje

U svom osobnom računu na zasebnoj stranici možete vidjeti statistiku i izvješća o svim pozivima te primijeniti filtre po statusu i vremenu. Putem API-ja prvo morate obraditi poziv s metodom /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"
        }

Zatim pozovite metodu poziv_info za obradu niza i prikaz poziva u CRM sustavu.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Kao odgovor primit ćete niz podataka koji se mogu obraditi za pohranu podataka u CRM zapisnik.

{
        "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":""
        }
}

Ostale korisne virtualne PBX značajke

Osim API-ja, virtualni PBX ima nekoliko drugih korisnih značajki koje možete koristiti. Na primjer, ovo je interaktivni glasovni izbornik i integracija mobilne i fiksne komunikacije.

Interaktivni glasovni odgovor (IVR) ono je što čujemo na slušalici prije nego što osoba odgovori. U biti, radi se o elektroničkom operateru koji pozive preusmjerava na odgovarajuće odjele i automatski odgovara na neka pitanja. Uskoro će biti moguće raditi s IVR-om putem API-ja: trenutno razvijamo softver koji će vam omogućiti praćenje tijeka poziva putem IVR-a i primanje informacija o tonskim pritiscima tipki kada je pretplatnik u glasovnom izborniku.

Za prijenos korporativne telefonije na mobilne telefone možete koristiti softphone aplikacije ili zasebno aktivirati uslugu Fixed Mobile Convergence (FMC). Bilo kojom od metoda razgovori unutar mreže su besplatni, omogućen je rad s kratkim brojevima, a pozivi se mogu snimati i o njima voditi opća statistika. 

Razlika je u tome što softphone-ovi trebaju internet za komunikaciju, ali nisu vezani za operatera, dok je FMC vezan za određenog operatera, ali se može koristiti čak i na starim telefonima s tipkama.

Izvor: www.habr.com

Dodajte komentar