Rostelecom virtuel PBX: hvad og hvordan kan gøres via API

Rostelecom virtuel PBX: hvad og hvordan kan gøres via API

Moderne virksomheder opfatter fastnettelefoner som en forældet teknologi: mobilkommunikation sikrer mobilitet og konstant tilgængelighed af medarbejdere, sociale netværk og instant messengers er en nemmere og hurtigere kommunikationskanal. For at holde trit med deres konkurrenter bliver kontor-PBX'er mere og mere lig dem: De flytter til skyen, administreres via en webgrænseflade og integreres med andre systemer via API. I dette indlæg vil vi fortælle dig, hvilke funktioner Rostelecom virtuelle PBX API har, og hvordan du arbejder med hovedfunktionerne i den virtuelle PBX gennem den.

Hovedopgaven for Rostelecoms virtuelle PBX API er interaktion med CRM eller firmawebsteder. For eksempel implementerer API'en "ring tilbage" og "opkald fra websted"-widgets til de vigtigste administrationssystemer: WordPress, Bitrix, OpenCart. API'en tillader:

  • Modtage information, underrette status og foretage opkald efter anmodning fra et eksternt system;
  • Få et midlertidigt link til at optage samtalen;
  • Administrer og modtag begrænsningsparametre fra brugere;
  • Få oplysninger om den virtuelle PBX-bruger;
  • Anmod om historikken for opkaldsdebiteringer og gebyrer;
  • Upload opkaldslog.

Sådan fungerer API'en

Integrations-API'en og det eksterne system interagerer med hinanden ved hjælp af HTTP-anmodninger. På den personlige konto angiver administratoren adresserne, hvor anmodninger til API'en skal ankomme, og hvor anmodninger fra API'en skal sendes. Det eksterne system skal have en offentlig adresse tilgængelig fra internettet med et installeret SSL-certifikat.

Rostelecom virtuel PBX: hvad og hvordan kan gøres via API

Også på den personlige konto kan domæneadministratoren begrænse kilderne til anmodninger, når de får adgang til API'en via IP. 

Vi modtager information om virtuelle PBX-brugere 

For at få en liste over brugere eller grupper skal du sende en anmodning til den virtuelle PBX ved hjælp af metoden /brugerinfo.

{
        "domain":"example.ru"
}

Som svar vil du modtage en liste, som du kan gemme.

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

Denne metode passerer to arrays. En med domænebrugere, en med domænegrupper. Gruppen har også mulighed for at angive en e-mail, der sendes i anmodningen.

Behandler oplysninger om et indgående opkald

At forbinde firmatelefoni med forskellige CRM-systemer sparer tid for medarbejdere, der interagerer med kunder, og fremskynder behandlingen af ​​indgående opkald. For eksempel, ved et opkald fra en aktuel klient, kan CRM åbne hans kort, og fra CRM kan du sende et opkald til klienten og forbinde ham med en medarbejder.

For at få information om API-kald skal du bruge metoden /hent_nummerinfo, som genererer en liste over opkald med information om den gruppe, som opkaldet er distribueret til. Lad os antage, at det virtuelle PBX-nummer modtager et indgående opkald fra nummeret 1234567890. Så sender PBX'en følgende anmodning:

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

Dernæst skal du tilslutte handleren /hent_nummerinfo. Anmodningen skal udføres, når et indgående opkald ankommer på den indgående linje, før opkaldene dirigeres. Hvis et svar på en anmodning ikke modtages inden for den angivne tid, dirigeres opkaldet i overensstemmelse med reglerne, der er fastsat i domænet.

Eksempel på en handler på CRM-siden.

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

Svar fra føreren.

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

Vi sporer status og downloader opkaldsoptagelser

I Rostelecoms virtuelle PBX er opkaldsoptagelse aktiveret på din personlige konto. Ved hjælp af API'et kan du spore status for denne funktion. Ved behandling af en opkaldsafslutning i opkald_begivenheder du kan se flaget 'er_rekord', som giver brugeren besked om status for posten: sand betyder, at brugerens opkaldsoptagelsesfunktion er aktiveret.

For at downloade en optagelse skal du bruge opkaldssessions-id'et Sessions ID sende en anmodning til api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Som svar vil du modtage et midlertidigt link til at downloade en fil med en optagelse af samtalen.

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

Fillagringstiden er indstillet i dine personlige kontoindstillinger. Derefter slettes filen.

Statistik og rapportering

På din personlige konto på en separat side kan du se statistik og rapportering på alle opkald og anvende filtre efter status og tidspunkt. Gennem API'en skal du først behandle opkaldet med metoden /opkald_begivenheder:

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

Kald derefter metoden call_info at behandle arrayet og vise opkaldet i CRM-systemet.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Som svar vil du modtage en række data, der kan behandles for at gemme data i CRM-loggen.

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

Andre nyttige virtuelle PBX-funktioner

Udover API'en har en virtuel PBX flere andre nyttige funktioner, som du kan bruge. For eksempel er dette en interaktiv stemmemenu og integrationen af ​​mobil og fast kommunikation.

Interactive Voice Response (IVR) er det, vi hører på håndsættet, før personen svarer. Grundlæggende er dette en elektronisk operatør, der omdirigerer opkald til de relevante afdelinger og besvarer nogle spørgsmål automatisk. Snart vil det være muligt at arbejde med IVR via API'et: Vi er i øjeblikket ved at udvikle software, der giver dig mulighed for at spore et opkalds fremskridt gennem IVR og modtage information om tryk-tone-tastetryk, når abonnenten er i stemmemenuen.

For at overføre firmatelefoni til mobiltelefoner kan du enten bruge softphone-applikationer eller separat aktivere FMC-tjenesten (Fixed Mobile Convergence). Med enhver af metoderne er opkald inden for netværket gratis, det bliver muligt at arbejde med korte numre, og opkald kan optages og føres generel statistik over dem. 

Forskellen er, at softphones har brug for internettet for at kommunikere, men de er ikke bundet til en operatør, mens FMC er bundet til en bestemt operatør, men kan bruges selv på gamle trykknap-telefoner.

Kilde: www.habr.com

Tilføj en kommentar