PBX virtuel Rostelecom: quoi et comment faire via l'API



Les entreprises modernes perçoivent les téléphones fixes comme une technologie dépassée: la communication cellulaire assure la mobilité et la disponibilité constante des employés, les réseaux sociaux et les messageries instantanées sont un canal de communication plus facile et plus rapide. Afin de suivre leurs concurrents, les PBX de bureau leur ressemblent de plus en plus: ils vont dans le cloud, sont gérés via l'interface web et sont intégrés à d'autres systèmes via l'API. Dans cet article, nous vous expliquerons les fonctions de l'API PBX virtuel Rostelecom et comment l'utiliser avec les fonctions de base d'un PBX virtuel.

La tâche principale de l'API PBX virtuel Rostelecom est d'interagir avec les sites CRM ou d'entreprise. Par exemple, l'API comprend des widgets "rappel" et "appel depuis le site" pour les principaux systèmes de contrôle: WordPress, Bitrix, OpenCart. L'API vous permet de:

  • Recevoir des informations, informer sur l'état et passer des appels sur demande à partir d'un système externe;
  • Obtenez un lien temporaire vers l'enregistrement de la conversation;
  • Gérer et recevoir les paramètres de restriction des utilisateurs;
  • Obtenez des informations sur l'utilisateur d'un PBX virtuel;
  • Demander un historique des frais et des frais sur les appels;
  • Téléchargez le journal des appels.

Fonctionnement de l'API


L'API d'intégration et le système externe interagissent les uns avec les autres à l'aide de requêtes HTTP. Dans votre compte personnel, l'administrateur définit les adresses où les demandes à l'API doivent arriver et où les demandes de l'API doivent être envoyées. Le système externe doit avoir une adresse publique accessible depuis Internet avec un certificat SSL installé.



De plus, dans votre compte personnel, l'administrateur de domaine peut restreindre les sources IP de demandes lors de l'accès à l'API.

Nous obtenons des informations sur les utilisateurs du PBX virtuel


Pour obtenir une liste d'utilisateurs ou de groupes, vous devez envoyer une demande au PBX virtuel à l'aide de la méthode / users_info .

{         "domain":"example.ru" } 

Une liste vous sera retournée que vous pourrez sauvegarder.

 { "result":0, "resultMessage":"", "users":[                           {                            "display_name":"test_user_1",                            "name":"admin",                            "pin":^_^quotʚquot^_^,                           "is_supervisor":true,                            "is_operator":false,                            "email":"test_user_1@mail.gov","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":"Ivanov@mail.gov",                            "distribution":1,                           "users_list":[^_^quotʚquot^_^,^_^quotʿquot^_^]                            }              ] 

Dans cette méthode, deux tableaux sont passés. Un avec les utilisateurs du domaine, un avec les groupes de domaines. Le groupe a également la possibilité de spécifier l'e-mail qui sera envoyé dans la demande.

Nous traitons les informations sur un appel entrant


La connexion de la téléphonie d'entreprise à divers systèmes CRM fait gagner du temps aux employés qui interagissent avec les clients et accélère le traitement des appels entrants. Par exemple, lors d'un appel du client actuel, CRM peut ouvrir sa carte, et depuis CRM, vous pouvez envoyer un appel au client et le connecter à l'employé.

Pour obtenir des informations sur les appels via l'API, vous devez utiliser la méthode / get_number_info , qui forme une liste d'appels avec des informations sur le groupe dans lequel l'appel est distribué. Supposons qu'un appel entrant du numéro 1234567890 soit arrivé au numéro de PBX virtuel, puis une demande sera envoyée depuis le PBX:

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

Ensuite, vous devez connecter le gestionnaire / get_number_info . La demande doit être exécutée lorsqu'un appel entrant arrive sur une ligne entrante avant de router les appels. Si la réponse à la demande n'est pas reçue dans le délai défini, l'appel est acheminé conformément aux règles établies dans le domaine.

Exemple de gestionnaire côté 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; 

La réponse du gestionnaire.

 {        "result":0,        "resultMessage":" ",        "displayName":"   +1</i> 234-56-78-90<i>" } 

Nous surveillons l'état et téléchargeons les enregistrements de conversation


Dans le central téléphonique virtuel de Rostelecom, l'enregistrement des conversations est activé dans votre compte personnel. À l'aide de l'API, vous pouvez suivre l'état de cette fonction. Lors du traitement de la terminaison d'appel dans call_events, vous pouvez voir l' indicateur 'is_record', qui informe l'utilisateur de l'état d'enregistrement: true signifie que la fonction d'enregistrement de conversation est activée pour l'utilisateur .

Pour télécharger un enregistrement, vous devez envoyer une demande à api.cloudpbx.rt.ru/get_record en utilisant l' ID de session de l'appel session_id .

 {        "session_id":"SDsnZugDFmTW7Sec" } 

La réponse sera un lien temporaire pour télécharger le fichier d'enregistrement de conversation.

 {        "result": ^_^quot&#0;quot^_^,        "resultMessage": "  ",    "url": "https://api.cloudpbx.rt.ru/records_new_scheme/record/download/501a8fc4a4aca86eb35955419157921d/188254033036" } 


La durée de stockage des fichiers est définie dans les paramètres de votre compte personnel. Une fois le fichier supprimé.

Statistiques et rapports


Dans votre compte sur une page séparée, vous pouvez voir les statistiques et les rapports pour tous les appels et appliquer des filtres par statut et par heure. Grâce à l'API, vous devez d'abord traiter l'appel avec la méthode / 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"        } 

Appelez ensuite la méthode call_info pour traiter le tableau et afficher l'appel dans le système CRM.

    {        "session_id":"SDsnZugDFmTW7Sec" } 

La réponse sera un tableau de données qui peut être traité pour stocker des données dans le journal 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":"admin@example.ru",                "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&#0;quot^_^,                "status_string":""        } } 


Autres fonctionnalités de PBX virtuel utiles


En plus de l'API, le PBX virtuel a quelques fonctions plus utiles que vous pouvez utiliser. Par exemple, il s'agit d'un menu vocal interactif et d'une combinaison de communications cellulaires et fixes.

La réponse vocale interactive (RVI) est ce que nous entendons dans le récepteur avant qu'une personne ne réponde. En fait, il s'agit d'un opérateur électronique qui redirige les appels vers les services appropriés et répond automatiquement à certaines des questions. Bientôt, il sera possible de travailler avec IVR via l'API: nous développons maintenant un logiciel qui vous permettra de suivre la progression d'un appel via IVR et de recevoir des informations sur les frappes lorsque l'appelant est dans le menu vocal.

Pour transférer la téléphonie d'entreprise vers les téléphones mobiles, vous pouvez utiliser des applications de téléphonie logicielle ou connecter séparément le service de convergence mobile fixe (FMC). Avec n'importe laquelle des méthodes, les appels au sein du réseau sont gratuits, il est possible de travailler avec des numéros courts, et les appels peuvent être enregistrés et des statistiques générales peuvent être conservées à leur sujet.

La différence est que les téléphones logiciels ont besoin d'Internet pour communiquer, mais ils ne sont pas liés à un opérateur, et FMC est lié à un opérateur spécifique, mais peut même être utilisé sur des téléphones à bouton-poussoir plus anciens.

Source: https://habr.com/ru/post/fr484180/


All Articles