Rostelecom virtual PBX: ano at paano maaaring gawin sa pamamagitan ng API

Rostelecom virtual PBX: ano at paano maaaring gawin sa pamamagitan ng API

Nakikita ng modernong negosyo ang mga landline na telepono bilang isang lumang teknolohiya: tinitiyak ng mga cellular na komunikasyon ang kadaliang kumilos at patuloy na pagkakaroon ng mga empleyado, mga social network at instant messenger ay isang mas madali at mas mabilis na channel ng komunikasyon. Upang makasabay sa kanilang mga kakumpitensya, ang mga office PBX ay nagiging mas katulad sa kanila: lumilipat sila sa cloud, pinamamahalaan sa pamamagitan ng isang web interface at isinama sa iba pang mga system sa pamamagitan ng API. Sa post na ito sasabihin namin sa iyo kung anong mga function ang mayroon ang Rostelecom virtual PBX API at kung paano gagana sa mga pangunahing function ng virtual PBX sa pamamagitan nito.

Ang pangunahing gawain ng Rostelecom virtual PBX API ay pakikipag-ugnayan sa CRM o mga website ng kumpanya. Halimbawa, ang API ay nagpapatupad ng mga widget na "tawag pabalik" at "tawag mula sa site" para sa mga pangunahing sistema ng pamamahala: WordPress, Bitrix, OpenCart. Pinapayagan ng API ang:

  • Tumanggap ng impormasyon, abisuhan ang katayuan at gumawa ng mga tawag kapag hiniling mula sa isang panlabas na sistema;
  • Kumuha ng pansamantalang link upang i-record ang pag-uusap;
  • Pamahalaan at tumanggap ng mga parameter ng paghihigpit mula sa mga user;
  • Kumuha ng impormasyon tungkol sa virtual na gumagamit ng PBX;
  • Hilingin ang kasaysayan ng mga pag-debit at singil sa tawag;
  • Mag-upload ng log ng tawag.

Paano gumagana ang API

Ang integration API at ang panlabas na system ay nakikipag-ugnayan sa isa't isa gamit ang mga kahilingan sa HTTP. Sa personal na account, itinatakda ng administrator ang mga address kung saan dapat dumating ang mga kahilingan sa API at kung saan dapat ipadala ang mga kahilingan mula sa API. Ang panlabas na sistema ay dapat magkaroon ng pampublikong address na naa-access mula sa Internet na may naka-install na SSL certificate.

Rostelecom virtual PBX: ano at paano maaaring gawin sa pamamagitan ng API

Gayundin sa personal na account, maaaring limitahan ng administrator ng domain ang mga mapagkukunan ng mga kahilingan kapag ina-access ang API sa pamamagitan ng IP. 

Nakatanggap kami ng impormasyon tungkol sa mga virtual na gumagamit ng PBX 

Upang makakuha ng listahan ng mga user o grupo, kailangan mong magpadala ng kahilingan sa virtual na PBX gamit ang pamamaraan /users_info.

{
        "domain":"example.ru"
}

Bilang tugon, makakatanggap ka ng isang listahan na maaari mong i-save.

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

Ang pamamaraang ito ay pumasa sa dalawang array. Isa sa mga user ng domain, isa sa mga pangkat ng domain. May pagkakataon din ang grupo na tukuyin ang isang email na ipapadala sa kahilingan.

Pagproseso ng impormasyon tungkol sa isang papasok na tawag

Ang pagkonekta ng corporate telephony sa iba't ibang CRM system ay nakakatipid ng oras para sa mga empleyadong nakikipag-ugnayan sa mga kliyente at nagpapabilis sa pagproseso ng mga papasok na tawag. Halimbawa, sa isang tawag mula sa kasalukuyang kliyente, maaaring buksan ng CRM ang kanyang card, at mula sa CRM maaari kang magpadala ng tawag sa kliyente at ikonekta siya sa isang empleyado.

Upang makakuha ng impormasyon tungkol sa mga tawag sa API, kailangan mong gamitin ang paraan /get_number_info, na bumubuo ng isang listahan ng mga tawag na may impormasyon tungkol sa pangkat kung saan ipinamahagi ang tawag. Ipagpalagay natin na ang virtual na numero ng PBX ay tumatanggap ng isang papasok na tawag mula sa numerong 1234567890. Pagkatapos ay ipapadala ng PBX ang sumusunod na kahilingan:

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

Susunod na kailangan mong ikonekta ang handler /get_number_info. Ang kahilingan ay dapat isagawa kapag ang isang papasok na tawag ay dumating sa papasok na linya bago ang mga tawag ay iruruta. Kung ang isang tugon sa isang kahilingan ay hindi natanggap sa loob ng tinukoy na oras, ang tawag ay iruruta ayon sa mga panuntunang itinatag sa domain.

Halimbawa ng isang handler sa panig ng 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;

Tugon mula sa handler.

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

Sinusubaybayan namin ang katayuan at nagda-download ng mga pag-record ng tawag

Sa virtual na PBX ng Rostelecom, ang pag-record ng tawag ay isinaaktibo sa iyong personal na account. Gamit ang API, masusubaybayan mo ang status ng function na ito. Kapag nagpoproseso ng pagwawakas ng tawag sa call_events makikita mo ang bandila 'is_record', na nag-aabiso sa user tungkol sa katayuan ng entry: totoo nangangahulugan na pinagana ang function ng pagre-record ng tawag ng user.

Para mag-download ng recording, kailangan mong gamitin ang call session ID session_id magpadala ng kahilingan sa api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Bilang tugon, makakatanggap ka ng pansamantalang link para mag-download ng file na may recording ng pag-uusap.

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

Ang oras ng pag-iimbak ng file ay nakatakda sa mga setting ng iyong personal na account. Pagkatapos ang file ay tatanggalin.

Mga istatistika at pag-uulat

Sa iyong personal na account sa isang hiwalay na pahina maaari mong makita ang mga istatistika at pag-uulat sa lahat ng mga tawag at maglapat ng mga filter ayon sa katayuan at oras. Sa pamamagitan ng API, kailangan mo munang iproseso ang tawag gamit ang pamamaraan /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"
        }

Pagkatapos ay tawagan ang pamamaraan call_info upang iproseso ang array at ipakita ang tawag sa CRM system.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Bilang tugon, makakatanggap ka ng hanay ng data na maaaring iproseso upang mag-imbak ng data sa CRM log.

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

Iba pang mga kapaki-pakinabang na virtual na tampok ng PBX

Bukod sa API, ang isang virtual na PBX ay may ilang iba pang mga kapaki-pakinabang na tampok na maaari mong gamitin. Halimbawa, ito ay isang interactive na voice menu at ang pagsasama ng mga cellular at fixed na komunikasyon.

Ang Interactive Voice Response (IVR) ang naririnig natin sa handset bago sumagot ang tao. Sa pangkalahatan, isa itong electronic operator na nagre-redirect ng mga tawag sa naaangkop na mga departamento at awtomatikong sumasagot sa ilang tanong. Sa lalong madaling panahon magiging posible na makipagtulungan sa IVR sa pamamagitan ng API: kasalukuyan kaming gumagawa ng software na magbibigay-daan sa iyong subaybayan ang pag-usad ng isang tawag sa pamamagitan ng IVR at makatanggap ng impormasyon tungkol sa mga touch-tone na keystroke kapag ang subscriber ay nasa voice menu.

Upang ilipat ang corporate telephony sa mga mobile phone, maaari mong gamitin ang mga softphone application o hiwalay na i-activate ang Fixed Mobile Convergence (FMC) na serbisyo. Sa alinman sa mga pamamaraan, ang mga tawag sa loob ng network ay libre, nagiging posible na gumana sa mga maikling numero, at ang mga tawag ay maaaring maitala at ang mga pangkalahatang istatistika ay maaaring panatilihin sa kanila. 

Ang pagkakaiba ay kailangan ng mga softphone ang Internet upang makipag-usap, ngunit hindi ito nakatali sa isang operator, habang ang FMC ay nakatali sa isang partikular na operator, ngunit maaaring gamitin kahit sa mga lumang push-button na telepono.

Pinagmulan: www.habr.com

Magdagdag ng komento