Ростелеком виртуалды АТС: API арқылы не және қалай жасауға болады

Ростелеком виртуалды АТС: API арқылы не және қалай жасауға болады

Заманауи бизнес стационарлық телефондарды ескірген технология ретінде қабылдайды: ұялы байланыс қызметкерлердің ұтқырлығын және тұрақты қолжетімділігін қамтамасыз етеді, әлеуметтік желілер мен мессенджерлер – оңай әрі жылдам байланыс арнасы. Бәсекелестеріне ілесу үшін кеңселік АТС-тер оларға көбірек ұқсайды: олар веб-интерфейс арқылы басқарылатын және API арқылы басқа жүйелермен біріктірілген бұлтқа көшуде. Бұл мақалада біз Rostelecom виртуалды АТС API қандай функциялары бар екенін және ол арқылы виртуалды АТС-тің негізгі функцияларымен қалай жұмыс істеу керектігін айтамыз.

Rostelecom виртуалды PBX API негізгі міндеті - CRM немесе компания веб-сайттарымен өзара әрекеттесу. Мысалы, API негізгі басқару жүйелері үшін «қайта қоңырау шалу» және «сайттан қоңырау шалу» виджеттерін жүзеге асырады: WordPress, Bitrix, OpenCart. API мүмкіндік береді:

  • Сыртқы жүйенің сұрауы бойынша ақпаратты алу, күй туралы хабарлау және қоңырау шалу;
  • Сөйлесуді жазу үшін уақытша сілтеме алыңыз;
  • Пайдаланушылардан шектеу параметрлерін басқару және алу;
  • Виртуалды АТС пайдаланушысы туралы ақпаратты алу;
  • Қоңыраулардың дебеттері мен төлемдерінің тарихын сұрау;
  • Қоңыраулар журналын жүктеп салу.

API қалай жұмыс істейді

Біріктіру API және сыртқы жүйе HTTP сұраулары арқылы бір-бірімен әрекеттеседі. Жеке кабинетте әкімші API сұраулары келетін және API сұраулары жіберілетін мекенжайларды орнатады. Сыртқы жүйеде орнатылған SSL сертификаты бар Интернеттен қолжетімді жалпы мекенжай болуы керек.

Ростелеком виртуалды АТС: API арқылы не және қалай жасауға болады

Сондай-ақ жеке тіркелгіде домен әкімшісі IP арқылы API кіру кезінде сұрау көздерін шектей алады. 

Біз виртуалды АТС пайдаланушылары туралы ақпаратты аламыз 

Пайдаланушылар немесе топтардың тізімін алу үшін әдісті пайдаланып виртуалды АТС-ке сұрау жіберу керек /users_info.

{
        "domain":"example.ru"
}

Жауап ретінде сіз сақтауға болатын тізімді аласыз.

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

Бұл әдіс екі массивтен өтеді. Біреуі домен пайдаланушыларымен, біреуі домен топтарымен. Топтың сұрауда жіберілетін электрондық поштаны көрсету мүмкіндігі де бар.

Кіріс қоңырау туралы ақпаратты өңдеу

Корпоративтік телефонияны әртүрлі CRM жүйелеріне қосу клиенттермен өзара әрекеттесетін қызметкерлердің уақытын үнемдейді және кіріс қоңырауларды өңдеуді жылдамдатады. Мысалы, ағымдағы клиенттің қоңырауы бойынша CRM оның картасын аша алады, ал CRM-ден клиентке қоңырау жіберіп, оны қызметкермен байланыстыра аласыз.

API қоңыраулары туралы ақпарат алу үшін әдісті пайдалану қажет /нөмір_ақпаратын алу, ол қоңырау таратылатын топ туралы ақпараты бар қоңыраулар тізімін жасайды. Виртуалды АТС нөмірі 1234567890 нөмірінен кіріс қоңырауды қабылдайды деп есептейік. Содан кейін АТС келесі сұрауды жібереді:

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

Әрі қарай өңдегішті қосу керек /нөмір_ақпаратын алу. Сұраныс қоңыраулар бағытталмай тұрып кіріс желіге кіріс қоңырауы келгенде орындалуы керек. Егер сұрауға жауап көрсетілген уақыт ішінде алынбаса, қоңырау доменде белгіленген ережелерге сәйкес бағытталады.

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;

Өңдеушіден жауап.

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

Біз күйді қадағалаймыз және қоңырау жазбаларын жүктеп аламыз

Ростелекомның виртуалды АТС-інде жеке кабинетте қоңырауды жазу белсендірілген. API арқылы сіз осы функцияның күйін бақылай аласыз. Қоңырауды тоқтатуды өңдеу кезінде қоңыраулар_оқиғалары туды көруге болады 'record', ол пайдаланушыға жазбаның күйі туралы хабарлайды: шынайы пайдаланушының қоңырауды жазу функциясы қосылғанын білдіреді.

Жазбаны жүктеп алу үшін қоңырау сеансының идентификаторын пайдалану қажет session_id дегенге сұрау жіберіңіз api.cloudpbx.rt.ru/get_record.

{
        "session_id":"SDsnZugDFmTW7Sec"
}

Жауап ретінде сіз әңгіме жазбасы бар файлды жүктеп алу үшін уақытша сілтеме аласыз.

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

Файлды сақтау уақыты жеке тіркелгі параметрлерінде орнатылған. Содан кейін файл жойылады.

Статистика және есеп беру

Жеке бетте сіз барлық қоңыраулар бойынша статистика мен есепті көре аласыз және күй мен уақыт бойынша сүзгілерді қолдана аласыз. API арқылы алдымен қоңырауды әдіспен өңдеу керек /шақыру_оқиғалары:

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

Содан кейін әдісті шақырыңыз қоңырау_ақпараты алапты өңдеу және CRM жүйесінде қоңырауды көрсету.

     {
        "session_id":"SDsnZugDFmTW7Sec"
}

Жауап ретінде сіз 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":""
        }
}

Басқа пайдалы виртуалды АТС мүмкіндіктері

API интерфейсінен басқа виртуалды АТС-те пайдалануға болатын бірнеше басқа пайдалы мүмкіндіктер бар. Мысалы, бұл интерактивті дауыс мәзірі және ұялы және тіркелген байланыстарды біріктіру.

Интерактивті дауыстық жауап (IVR) - бұл адам жауап бермес бұрын телефонда еститін нәрсе. Негізінде, бұл қоңырауларды тиісті бөлімдерге қайта бағыттайтын және кейбір сұрақтарға автоматты түрде жауап беретін электрондық оператор. Жақын арада API арқылы IVR-мен жұмыс істеу мүмкін болады: біз қазір IVR арқылы қоңыраудың орындалу барысын бақылауға және абонент дауыстық мәзірде болған кезде сенсорлық пернелерді басу туралы ақпаратты алуға мүмкіндік беретін бағдарламалық қамтамасыз етуді әзірлеудеміз.

Корпоративтік телефонияны ұялы телефондарға тасымалдау үшін бағдарламалық телефон қолданбаларын пайдалануға немесе Fixed Mobile Convergence (FMC) қызметін бөлек қосуға болады. Әдістердің кез келгенімен желі ішіндегі қоңыраулар тегін, қысқа нөмірлермен жұмыс істеуге болады, қоңырауларды жазып алуға және олар бойынша жалпы статистиканы сақтауға болады. 

Айырмашылығы мынада, бағдарламалық телефондар байланысу үшін Интернетті қажет етеді, бірақ олар операторға байланысты емес, ал FMC белгілі бір операторға байланысты, бірақ оны тіпті ескі түймелі телефондарда да қолдануға болады.

Ақпарат көзі: www.habr.com

пікір қалдыру