Virtuelle PBX von Rostelecom: Was und wie kann über die API erledigt werden?

Virtuelle PBX von Rostelecom: Was und wie kann über die API erledigt werden?

Moderne Unternehmen betrachten Festnetztelefone als veraltete Technologie: Mobilfunk sorgt für Mobilität und ständige Erreichbarkeit der Mitarbeiter, soziale Netzwerke und Instant Messenger sind ein einfacherer und schnellerer Kommunikationskanal. Um mit der Konkurrenz mithalten zu können, ähneln Büro-Telefonanlagen ihnen immer mehr: Sie wandern in die Cloud, werden über eine Weboberfläche verwaltet und über eine API in andere Systeme integriert. In diesem Beitrag erklären wir Ihnen, welche Funktionen die virtuelle PBX-API von Rostelecom hat und wie Sie damit mit den Hauptfunktionen der virtuellen PBX arbeiten können.

Die Hauptaufgabe der virtuellen PBX-API von Rostelecom ist die Interaktion mit CRM oder Unternehmenswebsites. Die API implementiert beispielsweise „Rückruf“- und „Call from Site“-Widgets für die wichtigsten Verwaltungssysteme: WordPress, Bitrix, OpenCart. Die API ermöglicht:

  • Erhalten Sie Informationen, benachrichtigen Sie den Status und tätigen Sie auf Anfrage Anrufe von einem externen System.
  • Erhalten Sie einen temporären Link, um das Gespräch aufzuzeichnen;
  • Beschränkungsparameter von Benutzern verwalten und empfangen;
  • Erhalten Sie Informationen über den virtuellen PBX-Benutzer;
  • Fordern Sie den Verlauf der Anrufbelastungen und -gebühren an.
  • Anrufprotokoll hochladen.

So funktioniert die API

Die Integrations-API und das externe System interagieren über HTTP-Anfragen miteinander. Im persönlichen Konto legt der Administrator die Adressen fest, an denen Anfragen an die API eingehen und wohin Anfragen von der API gesendet werden sollen. Das externe System muss über eine über das Internet zugängliche öffentliche Adresse mit installiertem SSL-Zertifikat verfügen.

Virtuelle PBX von Rostelecom: Was und wie kann über die API erledigt werden?

Auch im persönlichen Konto kann der Domänenadministrator die Anfragequellen beim Zugriff auf die API per IP einschränken. 

Wir erhalten Informationen über virtuelle PBX-Benutzer 

Um eine Liste von Benutzern oder Gruppen zu erhalten, müssen Sie mithilfe der Methode eine Anfrage an die virtuelle PBX senden /users_info.

{
        "domain":"example.ru"
}

Als Antwort erhalten Sie eine Liste, die Sie speichern können.

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

Diese Methode übergibt zwei Arrays. Eines mit Domänenbenutzern, eines mit Domänengruppen. Die Gruppe hat außerdem die Möglichkeit, eine E-Mail anzugeben, die in der Anfrage gesendet wird.

Verarbeitung von Informationen zu einem eingehenden Anruf

Die Anbindung der Unternehmenstelefonie an verschiedene CRM-Systeme spart den Mitarbeitern, die mit Kunden interagieren, Zeit und beschleunigt die Bearbeitung eingehender Anrufe. Wenn beispielsweise ein aktueller Kunde anruft, kann CRM seine Karte öffnen, und von CRM aus können Sie einen Anruf an den Kunden senden und ihn mit einem Mitarbeiter verbinden.

Um Informationen zu API-Aufrufen zu erhalten, müssen Sie die Methode verwenden /get_number_info, wodurch eine Liste von Anrufen mit Informationen über die Gruppe generiert wird, an die der Anruf weitergeleitet wird. Nehmen wir an, dass die virtuelle PBX-Nummer einen eingehenden Anruf von der Nummer 1234567890 erhält. Dann sendet die PBX die folgende Anfrage:

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

Als nächstes müssen Sie den Handler anschließen /get_number_info. Die Anforderung muss ausgeführt werden, wenn ein eingehender Anruf auf der eingehenden Leitung eintrifft, bevor die Anrufe weitergeleitet werden. Wenn innerhalb der angegebenen Zeit keine Antwort auf eine Anfrage eingeht, wird der Anruf gemäß den in der Domäne festgelegten Regeln weitergeleitet.

Beispiel für einen Handler auf der CRM-Seite.

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

Antwort des Handlers.

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

Wir verfolgen den Status und laden Anrufaufzeichnungen herunter

In der virtuellen PBX von Rostelecom ist die Anrufaufzeichnung in Ihrem persönlichen Konto aktiviert. Mithilfe der API können Sie den Status dieser Funktion verfolgen. Bei der Bearbeitung einer Anrufbeendigung in call_events Sie können die Flagge sehen 'is_record', wodurch der Benutzer über den Status des Eintrags informiert wird: was immer dies auch sein sollte. bedeutet, dass die Anrufaufzeichnungsfunktion des Benutzers aktiviert ist.

Um eine Aufzeichnung herunterzuladen, müssen Sie die Anrufsitzungs-ID verwenden session_id eine Anfrage an senden api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Als Antwort erhalten Sie einen temporären Link zum Herunterladen einer Datei mit einer Aufzeichnung des Gesprächs.

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

Die Dateispeicherzeit wird in Ihren persönlichen Kontoeinstellungen festgelegt. Anschließend wird die Datei gelöscht.

Statistiken und Berichterstattung

In Ihrem persönlichen Konto können Sie auf einer separaten Seite Statistiken und Berichte zu allen Anrufen einsehen und Filter nach Status und Zeit anwenden. Über die API müssen Sie zunächst den Aufruf mit der Methode verarbeiten /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"
        }

Rufen Sie dann die Methode auf call_info um das Array zu verarbeiten und den Anruf im CRM-System anzuzeigen.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Als Antwort erhalten Sie eine Reihe von Daten, die verarbeitet werden können, um Daten im CRM-Protokoll zu speichern.

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

Weitere nützliche virtuelle PBX-Funktionen

Neben der API verfügt eine virtuelle PBX über mehrere weitere nützliche Funktionen, die Sie nutzen können. Dabei handelt es sich beispielsweise um ein interaktives Sprachmenü und die Integration von Mobilfunk- und Festnetzkommunikation.

Interactive Voice Response (IVR) ist das, was wir auf dem Mobilteil hören, bevor die Person antwortet. Im Wesentlichen handelt es sich dabei um einen elektronischen Operator, der Anrufe an die entsprechenden Abteilungen weiterleitet und einige Fragen automatisch beantwortet. Bald wird es möglich sein, über die API mit IVR zu arbeiten: Wir entwickeln derzeit eine Software, die es Ihnen ermöglicht, den Fortschritt eines Anrufs über das IVR zu verfolgen und Informationen über Tastenanschläge mit Tonwahl zu erhalten, wenn sich der Teilnehmer im Sprachmenü befindet.

Um Firmentelefonie auf Mobiltelefone zu übertragen, können Sie entweder Softphone-Anwendungen nutzen oder den Dienst Fixed Mobile Convergence (FMC) separat aktivieren. Mit jeder dieser Methoden sind Anrufe innerhalb des Netzwerks kostenlos, es wird möglich, mit Kurznummern zu arbeiten, Anrufe können aufgezeichnet und allgemeine Statistiken darüber geführt werden. 

Der Unterschied besteht darin, dass Softphones für die Kommunikation das Internet benötigen, aber nicht an einen Betreiber gebunden sind, während FMC an einen bestimmten Betreiber gebunden ist, aber sogar auf alten Tastentelefonen verwendet werden kann.

Source: habr.com

Kommentar hinzufügen