Rostelecom virtuele PBX: wat en hoe kan via API

Rostelecom virtuele PBX: wat en hoe kan via API

Het moderne bedrijfsleven beschouwt vaste telefoons als een verouderde technologie: mobiele communicatie zorgt voor mobiliteit en constante beschikbaarheid van werknemers, sociale netwerken en instant messengers zijn een eenvoudiger en sneller communicatiekanaal. Om gelijke tred te houden met hun concurrenten, gaan kantoortelefooncentrales steeds meer op hen lijken: ze verhuizen naar de cloud, worden beheerd via een webinterface en geïntegreerd met andere systemen via API. In dit bericht zullen we u vertellen welke functies de Rostelecom virtuele PBX API heeft en hoe u daarmee met de belangrijkste functies van de virtuele PBX kunt werken.

De hoofdtaak van de Rostelecom virtuele PBX API is interactie met CRM of bedrijfswebsites. De API implementeert bijvoorbeeld ‘call back’- en ‘call from site’-widgets voor de belangrijkste beheersystemen: WordPress, Bitrix, OpenCart. De API maakt het volgende mogelijk:

  • Informatie ontvangen, status doorgeven en op verzoek bellen vanaf een extern systeem;
  • Ontvang een tijdelijke link om het gesprek op te nemen;
  • Beheer en ontvang beperkingsparameters van gebruikers;
  • Informatie verkrijgen over de virtuele PBX-gebruiker;
  • Vraag de historie van gespreksafschrijvingen en kosten op;
  • Oproeplog uploaden.

Hoe de API werkt

De integratie-API en het externe systeem communiceren met elkaar via HTTP-verzoeken. In het persoonlijke account stelt de beheerder de adressen in waar verzoeken aan de API binnen moeten komen en waar verzoeken vanuit de API naartoe moeten worden gestuurd. Het externe systeem moet een openbaar adres hebben dat toegankelijk is vanaf internet en waarop een SSL-certificaat is geïnstalleerd.

Rostelecom virtuele PBX: wat en hoe kan via API

Ook in het persoonlijke account kan de domeinbeheerder de bronnen van verzoeken beperken bij toegang tot de API via IP. 

We ontvangen informatie over virtuele PBX-gebruikers 

Om een ​​lijst met gebruikers of groepen te krijgen, moet u met behulp van deze methode een verzoek naar de virtuele PBX sturen /gebruikers_info.

{
        "domain":"example.ru"
}

Als reactie ontvangt u een lijst die u kunt bewaren.

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

Deze methode geeft twee arrays door. Eén met domeingebruikers, één met domeingroepen. De groep heeft ook de mogelijkheid om een ​​e-mail op te geven die in het verzoek wordt verzonden.

Informatie over een inkomend gesprek verwerken

Het koppelen van bedrijfstelefonie aan verschillende CRM-systemen bespaart tijd voor medewerkers die met klanten communiceren en versnelt de verwerking van inkomende oproepen. Bij een oproep van een huidige klant kan CRM bijvoorbeeld zijn kaart openen, en vanuit CRM kunt u een oproep naar de klant sturen en hem doorverbinden met een medewerker.

Om informatie over API-aanroepen te krijgen, moet u de methode gebruiken /get_nummer_info, waarmee een lijst met oproepen wordt gegenereerd met informatie over de groep waarnaar de oproep wordt gedistribueerd. Laten we aannemen dat het virtuele PBX-nummer een inkomende oproep ontvangt van het nummer 1234567890. Vervolgens verzendt de PBX het volgende verzoek:

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

Vervolgens moet u de handler aansluiten /get_nummer_info. Het verzoek moet worden uitgevoerd wanneer een inkomende oproep op de inkomende lijn binnenkomt voordat de oproepen worden gerouteerd. Als er binnen de aangegeven tijd geen reactie op een verzoek wordt ontvangen, wordt de oproep gerouteerd volgens de regels die in het domein zijn vastgelegd.

Voorbeeld van een handler aan de CRM-kant.

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

Reactie van de behandelaar.

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

We volgen de status en downloaden gespreksopnamen

In de virtuele PBX van Rostelecom wordt gespreksopname geactiveerd in uw persoonlijke account. Met behulp van de API kunt u de status van deze functie volgen. Bij het verwerken van een gespreksafgifte in bel_gebeurtenissen je kunt de vlag zien 'is_record', die de gebruiker op de hoogte stelt van de status van de invoer: waar betekent dat de oproepopnamefunctie van de gebruiker is ingeschakeld.

Om een ​​opname te downloaden, heeft u de oproepsessie-ID nodig session_id stuur een verzoek naar api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Als reactie ontvang je een tijdelijke link om een ​​bestand te downloaden met een opname van het gesprek.

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

De bestandsopslagtijd wordt ingesteld in uw persoonlijke accountinstellingen. Daarna wordt het bestand verwijderd.

Statistieken en rapportage

In uw persoonlijke account op een aparte pagina kunt u statistieken en rapportages bekijken van alle oproepen en filters toepassen op status en tijd. Via de API moet je eerst de aanroep verwerken met de methode /bel_gebeurtenissen:

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

Roep vervolgens de methode aan bel_info om de array te verwerken en de oproep in het CRM-systeem weer te geven.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Als reactie hierop ontvangt u een reeks gegevens die kunnen worden verwerkt om gegevens op te slaan in het CRM-logboek.

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

Andere handige virtuele PBX-functies

Naast de API heeft een virtuele telefooncentrale nog een aantal andere handige functies waar u gebruik van kunt maken. Dit is bijvoorbeeld een interactief spraakmenu en de integratie van mobiele en vaste communicatie.

Interactive Voice Response (IVR) is wat we op de hoorn horen voordat de persoon opneemt. In wezen is dit een elektronische operator die oproepen doorverbindt naar de juiste afdelingen en sommige vragen automatisch beantwoordt. Binnenkort is het mogelijk om via de API met IVR te werken: we ontwikkelen momenteel software waarmee je via de IVR de voortgang van een gesprek kunt volgen en informatie kunt ontvangen over toetsaanslagen als de abonnee in het spraakmenu zit.

Om bedrijfstelefonie naar mobiele telefoons over te zetten, kunt u softphone-applicaties gebruiken of afzonderlijk de dienst Fixed Mobile Convergence (FMC) activeren. Met elk van deze methoden zijn oproepen binnen het netwerk gratis, wordt het mogelijk om met korte nummers te werken, kunnen oproepen worden opgenomen en kunnen er algemene statistieken over worden bijgehouden. 

Het verschil is dat softphones internet nodig hebben om te communiceren, maar dat ze niet gebonden zijn aan een operator, terwijl FMC gebonden is aan een specifieke operator, maar zelfs op oude telefoons met drukknoppen kan worden gebruikt.

Bron: www.habr.com

Voeg een reactie