PBX virtuale Rostelecom: cosa e come si può fare tramite API

PBX virtuale Rostelecom: cosa e come si può fare tramite API

Le aziende moderne percepiscono i telefoni fissi come una tecnologia obsoleta: le comunicazioni cellulari garantiscono mobilità e disponibilità costante dei dipendenti, i social network e la messaggistica istantanea sono un canale di comunicazione più semplice e veloce. Per stare al passo con i concorrenti, i PBX da ufficio stanno diventando sempre più simili a loro: si stanno spostando sul cloud, gestiti tramite interfaccia web e integrati con altri sistemi tramite API. In questo post ti diremo quali funzioni ha l'API del PBX virtuale Rostelecom e come lavorare con le funzioni principali del PBX virtuale attraverso di essa.

Il compito principale dell'API PBX virtuale Rostelecom è l'interazione con CRM o siti Web aziendali. Ad esempio, l'API implementa widget di “call back” e “call from site” per i principali gestionali: WordPress, Bitrix, OpenCart. L'API consente:

  • Ricevere informazioni, notificare lo stato ed effettuare chiamate su richiesta da un sistema esterno;
  • Ottieni un collegamento temporaneo per registrare la conversazione;
  • Gestire e ricevere parametri di restrizione dagli utenti;
  • Ottenere informazioni sull'utente del PBX virtuale;
  • Richiedere lo storico degli addebiti e degli addebiti delle chiamate;
  • Carica il registro delle chiamate.

Come funziona l'API

L'API di integrazione e il sistema esterno interagiscono tra loro utilizzando richieste HTTP. Nell'account personale, l'amministratore imposta gli indirizzi a cui devono arrivare le richieste all'API e dove devono essere inviate le richieste dall'API. Il sistema esterno deve avere un indirizzo pubblico accessibile da Internet con certificato SSL installato.

PBX virtuale Rostelecom: cosa e come si può fare tramite API

Anche nell'account personale, l'amministratore del dominio può limitare le fonti delle richieste quando si accede all'API tramite IP. 

Riceviamo informazioni sugli utenti PBX virtuali 

Per ottenere un elenco di utenti o gruppi, è necessario inviare una richiesta al PBX virtuale utilizzando il metodo /info_utenti.

{
        "domain":"example.ru"
}

In risposta, riceverai un elenco che puoi salvare.

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

Questo metodo passa due array. Uno con gli utenti del dominio, uno con i gruppi di dominio. Il gruppo ha anche la possibilità di specificare un'e-mail che verrà inviata nella richiesta.

Elaborazione delle informazioni su una chiamata in arrivo

Il collegamento della telefonia aziendale a diversi sistemi CRM fa risparmiare tempo ai dipendenti che interagiscono con i clienti e velocizza l'elaborazione delle chiamate in arrivo. Ad esempio, su una chiamata da un cliente attuale, CRM può aprire la sua carta e da CRM è possibile inviare una chiamata al cliente e metterlo in contatto con un dipendente.

Per ottenere informazioni sulle chiamate API, è necessario utilizzare il metodo /get_numero_info, che genera un elenco di chiamate con informazioni sul gruppo a cui è distribuita la chiamata. Supponiamo che il numero PBX virtuale riceva una chiamata in entrata dal numero 1234567890. Quindi il PBX invierà la seguente richiesta:

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

Successivamente è necessario connettere il gestore /get_numero_info. La richiesta deve essere eseguita quando arriva una chiamata in entrata sulla linea in entrata prima che le chiamate vengano instradate. Se una risposta a una richiesta non viene ricevuta entro il tempo specificato, la chiamata viene instradata secondo le regole stabilite nel dominio.

Esempio di gestore lato 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;

Risposta del conduttore.

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

Monitoriamo lo stato e scarichiamo le registrazioni delle chiamate

Nel PBX virtuale di Rostelecom, la registrazione delle chiamate è attivata nel tuo account personale. Utilizzando l'API, puoi monitorare lo stato di questa funzione. Durante l'elaborazione di una terminazione di chiamata in call_events puoi vedere la bandiera 'is_record', che avvisa l'utente sullo stato della voce: vero significa che la funzione di registrazione delle chiamate dell'utente è abilitata.

Per scaricare una registrazione, è necessario utilizzare l'ID della sessione di chiamata session_id inviare una richiesta a api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

In risposta, riceverai un collegamento temporaneo per scaricare un file con la registrazione della conversazione.

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

Il tempo di archiviazione del file è impostato nelle impostazioni del tuo account personale. Successivamente il file verrà eliminato.

Statistiche e reporting

Nel tuo account personale in una pagina separata puoi visualizzare statistiche e report su tutte le chiamate e applicare filtri per stato e ora. Tramite l'API è necessario prima elaborare la chiamata con il metodo /chiama_eventi:

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

Quindi chiama il metodo call_info per elaborare l'array e visualizzare la chiamata nel sistema CRM.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

In risposta, riceverai una serie di dati che possono essere elaborati per archiviare i dati nel registro 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":""
        }
}

Altre utili funzionalità del PBX virtuale

Oltre all'API, un PBX virtuale ha molte altre utili funzionalità che puoi utilizzare. Ad esempio, questo è un menu vocale interattivo e l'integrazione delle comunicazioni cellulari e fisse.

La risposta vocale interattiva (IVR) è ciò che sentiamo sul ricevitore prima che la persona risponda. In sostanza si tratta di un operatore elettronico che reindirizza le chiamate ai reparti competenti e risponde automaticamente ad alcune domande. Presto sarà possibile lavorare con IVR tramite API: stiamo attualmente sviluppando un software che consentirà di monitorare l'avanzamento della chiamata tramite IVR e ricevere informazioni sulla pressione dei tasti a toni quando l'abbonato si trova nel menu vocale.

Per trasferire la telefonia aziendale sui cellulari potete utilizzare le applicazioni softphone oppure attivare separatamente il servizio Convergenza Fisso Mobile (FMC). Con uno qualsiasi dei metodi, le chiamate all'interno della rete sono gratuite, diventa possibile lavorare con numeri brevi, è possibile registrare le chiamate e conservare statistiche generali su di esse. 

La differenza è che i softphone hanno bisogno di Internet per comunicare, ma non sono legati ad un operatore, mentre l'FMC è legato ad un operatore specifico, ma può essere utilizzato anche sui vecchi telefoni a pulsanti.

Fonte: habr.com

Aggiungi un commento