Rostelecom virtuell PBX: hva og hvordan kan gjøres via API

Rostelecom virtuell PBX: hva og hvordan kan gjøres via API

Moderne virksomheter oppfatter fasttelefoner som en utdatert teknologi: mobilkommunikasjon sikrer mobilitet og konstant tilgjengelighet for ansatte, sosiale nettverk og direktemeldinger er en enklere og raskere kommunikasjonskanal. For å holde tritt med konkurrentene blir kontorsentraler mer og mer lik dem: de flytter til skyen, administreres via et nettgrensesnitt og integreres med andre systemer via API. I dette innlegget vil vi fortelle deg hvilke funksjoner Rostelecom virtuelle PBX API har og hvordan du kan jobbe med hovedfunksjonene til den virtuelle PBXen gjennom den.

Hovedoppgaven til Rostelecoms virtuelle PBX API er interaksjon med CRM eller firmanettsteder. For eksempel implementerer API-en "ring tilbake" og "ring fra nettsted"-widgeter for hovedstyringssystemene: WordPress, Bitrix, OpenCart. API tillater:

  • Motta informasjon, varsle status og ringe på forespørsel fra et eksternt system;
  • Få en midlertidig lenke for å ta opp samtalen;
  • Administrer og motta restriksjonsparametere fra brukere;
  • Få informasjon om den virtuelle PBX-brukeren;
  • Be om historien til debiteringer og gebyrer for samtaler;
  • Last opp anropslogg.

Hvordan API fungerer

Integrasjons-APIet og det eksterne systemet samhandler med hverandre ved hjelp av HTTP-forespørsler. I den personlige kontoen angir administratoren adressene hvor forespørsler til API skal komme og hvor forespørsler fra API skal sendes. Det eksterne systemet må ha en offentlig adresse tilgjengelig fra Internett med installert SSL-sertifikat.

Rostelecom virtuell PBX: hva og hvordan kan gjøres via API

Også i den personlige kontoen kan domeneadministratoren begrense kildene til forespørsler ved tilgang til API via IP. 

Vi mottar informasjon om virtuelle PBX-brukere 

For å få en liste over brukere eller grupper, må du sende en forespørsel til den virtuelle hussentralen ved å bruke metoden /users_info.

{
        "domain":"example.ru"
}

Som svar vil du motta en liste som du kan lagre.

{
"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 metoden passerer to arrays. En med domenebrukere, en med domenegrupper. Gruppen har også mulighet til å spesifisere en e-post som skal sendes i forespørselen.

Behandler informasjon om et innkommende anrop

Å koble bedriftstelefoni til ulike CRM-systemer sparer tid for ansatte som samhandler med klienter og øker behandlingen av innkommende samtaler. For eksempel, ved en samtale fra en nåværende klient, kan CRM åpne kortet hans, og fra CRM kan du sende en samtale til klienten og koble ham med en ansatt.

For å få informasjon om API-kall må du bruke metoden /get_number_info, som genererer en liste over samtaler med informasjon om gruppen som samtalen er distribuert til. La oss anta at det virtuelle PBX-nummeret mottar et innkommende anrop fra nummeret 1234567890. Deretter sender PBX-en følgende forespørsel:

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

Deretter må du koble til behandleren /get_number_info. Forespørselen må utføres når et innkommende anrop kommer på den innkommende linjen før anropene rutes. Hvis et svar på en forespørsel ikke mottas innen den angitte tiden, rutes samtalen i henhold til reglene som er etablert i domenet.

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 behandler.

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

Vi sporer status og laster ned samtaleopptak

I Rostelecoms virtuelle PBX aktiveres samtaleopptak på din personlige konto. Ved å bruke API kan du spore statusen til denne funksjonen. Ved behandling av en samtaleterminering i call_events du kan se flagget 'er_rekord', som varsler brukeren om statusen til oppføringen: sant betyr at brukerens funksjon for samtaleopptak er aktivert.

For å laste ned et opptak, må du bruke anropsøkt-IDen øktnummer send en forespørsel til api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Som svar vil du motta en midlertidig lenke for å laste ned en fil med et opptak av samtalen.

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

Lagringstiden for filen angis i dine personlige kontoinnstillinger. Etterpå vil filen bli slettet.

Statistikk og rapportering

I din personlige konto på en egen side kan du se statistikk og rapportering på alle samtaler og bruke filtre etter status og tid. Gjennom API-en må du først behandle anropet med metoden /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"
        }

Ring deretter metoden call_info å behandle arrayet og vise anropet i CRM-systemet.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Som svar vil du motta en rekke data som kan behandles for å lagre 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-funksjoner

I tillegg til API, har en virtuell PBX flere andre nyttige funksjoner som du kan bruke. Dette er for eksempel en interaktiv stemmemeny og integrasjon av mobil og fast kommunikasjon.

Interactive Voice Response (IVR) er det vi hører på håndsettet før personen svarer. I hovedsak er dette en elektronisk operatør som omdirigerer anrop til de aktuelle avdelingene og svarer på noen spørsmål automatisk. Snart vil det være mulig å jobbe med IVR via API: Vi utvikler for tiden programvare som lar deg spore fremdriften til en samtale gjennom IVR og motta informasjon om tastetrykk når abonnenten er i talemenyen.

For å overføre bedriftstelefoni til mobiltelefoner kan du enten bruke softphone-applikasjoner eller aktivere tjenesten Fixed Mobile Convergence (FMC) separat. Med hvilken som helst av metodene er samtaler i nettet gratis, det blir mulig å jobbe med korte numre, og samtaler kan tas opp og føres generell statistikk over dem. 

Forskjellen er at softphones trenger Internett for å kommunisere, men de er ikke knyttet til en operatør, mens FMC er knyttet til en spesifikk operatør, men kan brukes selv på gamle trykknapptelefoner.

Kilde: www.habr.com

Legg til en kommentar